Написать программу, реализующую задание по обработке массива - Turbo Pascal (30804)
Формулировка задачи:
Написать программу, реализующую задание по обработке массива.
Количество элементов массива и сами элементы вводить с клавиатуры в
диалоговом режиме. Обеспечить вывод на экран результатов в соответствии с
заданием: отсортированный массив элементов, индексы элементов,
вычисленные значения сумм либо среднеарифметические значения.
Вот само задание:
Дан массив целых чисел А [1..N]. Отсортировать их методом выбора в порядке
возрастания. Вычислить среднее арифметическое чисел кратных 5. Вывести на
экран отсортированный массив и вычисленное значение.
Решение задачи: «Написать программу, реализующую задание по обработке массива»
textual
Листинг программы
uses crt; const nmax=100; var a:array [1..nmax]of integer; n,i,j,x,buf:integer; sr:real; Begin clrscr; repeat write('Размер массива до ',nmax,' n='); readln(n); until n in [1..nmax]; writeln('Введите элементы массива, целые числа'); for i:=1 to n do begin write('a[',i,']='); readln(a[i]); end; clrscr; writeln('Исходный массив:'); for i:=1 to n do begin a[i]:=random(50); write(a[i]:4); end; writeln; for i:=1 to n-1 do begin x:=i; for j:=i+1 to n do if a[j]<a[x] then x:=j; buf:=a[i]; a[i]:=a[x]; a[x]:=buf; end; writeln('Упорядоченный массив: '); sr:=0; x:=0; for i:=1 to n do begin write(a[i]:4); if a[i] mod 5=0 then begin sr:=sr+a[i]; x:=x+1; end; end; writeln; if x=0 then write('Чисел, кратных 5 нет') else begin sr:=sr/x; write('Среднее чисел, кратных 5=',sr:0:2); end; readln end.
Объяснение кода листинга программы
- Создается переменная
nmax
со значением 100. - Создается массив
a
с возможностью хранить доnmax
целых чисел. - Создаются переменные
n
,i
,j
,x
,buf
иsr
для работы с массивом. - Выводится сообщение с запросом на ввод размера массива.
- Пока размер массива меньше или равен
nmax
, выполняется цикл. В каждой итерации считывается элемент массива и выводится его значение. - Выводится сообщение с запросом на ввод элементов массива.
- Для каждого элемента массива от 1 до
n
считывается его значение и записывается в переменнуюa[i]
. - Выводится исходный массив.
- Для каждого элемента массива от 1 до
n
считывается его значение и записывается в переменнуюa[i]
. Выполняется перестановка элементов массива таким образом, чтобы все элементы, кратные 5, были упорядочены в начале массива. - Выводится упорядоченный массив.
- Вычисляется среднее значение чисел, кратных 5, и выводится на экран.
- Запрашивается ввод для продолжения (в данном случае - нет).
- Выводится сообщение о том, что чисел, кратных 5, нет.
- Вычисляется среднее значение чисел, кратных 5, и выводится на экран.