Паскальавс в массиве от 1..1000, числа указываются вручную нужно: 1)перевернуть массив 2) найти в нем числа, у которых первая цифра больше последней и вывести на экран п.с. желательно с комментарием чтобы мне было понятно)
Ответы на вопрос:
program n_1;
var a: array [1..1000] of integer; i, buf: integer;
begin
for i: =1 to 1000 do read(a[i]); //вводим массив
for i: =1 to 500 do begin //переворачиваем массив
buf: =a[i];
a[i]: =a[1001-i];
a[1001-i]: =buf;
end;
for i: =1 to 1000 do write(a[i], ' '); //выводим перевернутый массив
writeln(); //переносим строку
for i: =1 to
1000 do begin //выводим нужные нам числа
buf: =a[i];
while buf> 9 do buf: =buf div 10; //buf равно старшему разряду
if buf> a[i] mod 10 then write(a[i], ' '); //если старший
разряд больше младшего, то выводим
end;
end.
часть, выделенная полужирным, эквивалентна
for i: =1000 downto 1 do read(a[i]); //заполняем массив с конца и тем самым он сразу становится перевернутым.
программа с комментариями, если все равно не понятно спрашивай
для проверки программы рекомендую n поставить где нибудь на 10 потому что вводить 1000 чисел с клавиатуры то еще удавольствие : ))
числа можно вводить по одному или одной строкой через пробел
const
n = 1000; // длина массива
var
d : array of integer : = new integer[n]; // объявляем и создаем массив
a, b : integer;
begin
// вводим числа в массив //
writeln('введите данные в массив: ');
for var i : = 0 to n-1 do begin
read(a);
d[i] : = a;
end;
writeln('введен массив d=', d); // выводим массив
на экран
// переворачиваем данные в массиве //
// для этого меняем первое с последним, второе с предпоследним
//
// и так до середины //
for var i : = 0 to (n div 2)-1 do begin
a : = d[i];
d[i] : = d[n-i-1];
d[n-i-1] : = a;
end;
writeln('переворачиваем массив d=', d); // выводим перевернутый массив
write('числа у которых первая цифра больше последней: ');
// ищем и ввыводим числа с заданным условием //
for var i : = 0 to n-1 do begin
// находим чему равна 1 цифра //
b : =
d[i];
repeat
b : = b div 10;
until b < 10;
if b > d[i] mod 10 then write(' ', d[i]); // сравниваем первую и последнюю
цифры и ели первая больше то выводим число
end;
end.
program helloworld;
var n: double;
var i,c,summ: integer;
begin
for i: =1 to 7 do
begin
writeln('введите оценку: ');
readln(c);
summ : = summ + c;
end;
writeln('введите оценку: ');
writeln(summ/c: 15: 2);
end.
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
Гуманитарий77720.01.2022 04:26
-
kirillshok02.05.2022 14:46
-
вова99324.01.2023 21:53
-
latyshevavera203.03.2023 03:11
-
ЧерриБерри25.04.2023 06:50
-
снежана19519.06.2021 14:17
-
deniskakuzovle15.05.2021 17:04
-
tyrykina011506.07.2020 00:54
-
Juliaok1234517.02.2021 04:07
-
простокрис01.05.2021 00:40
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.