Найти в последовательности сумму чисел, расположенных между максимальным и минимальным значением - Turbo Pascal
Формулировка задачи:
Написать программу, подсчитывающую в последовательности вещественных чисел (n<=30) сумму чисел , расположенных между максимальным и минимальным значением; вывести на экран монитора исходную последовательность и вычисленное значение.
Решение задачи: «Найти в последовательности сумму чисел, расположенных между максимальным и минимальным значением»
textual
Листинг программы
const n=30;
var
a:array[1..n] of real;
i,j,k:integer;
s:real;
begin
randomize;
j:=0;
writeln('A:');
for i:=1 to n do begin
a[i]:=random*100;
write(a[i]:6:2);
j:=j+1;
if j mod 5 =0 then writeln;
end;
j:=1;k:=1;
for i:=1 to n do begin
if a[i]>a[j] then j:=i;
if a[i]<a[k] then k:=i;
end;
writeln;
writeln('min:',a[k]:6:2,' max:',a[j]:6:2);
s:=0.0;
if j>k then for i:=k+1 to j-1 do s:=s+a[i] else for i:=j+1 to k-1 do s:=s+a[i];
writeln('S=',s:6:2);
readln;
end.
Объяснение кода листинга программы
- В первой части кода объявляются переменные: n (максимальное количество элементов), a (массив для хранения чисел), i, j, k (переменные для работы с индексами массива), s (переменная для хранения суммы).
- Затем происходит инициализация случайного генератора чисел.
- В цикле for происходит заполнение массива случайными числами от 0 до 99.
- Далее идут два вложенных цикла for, которые находят минимальное и максимальное значение в массиве.
- Выводится минимальное и максимальное значение, а также сумма чисел между ними.
- Код завершается после вывода суммы и нажатия клавиши Enter.