В массиве из 10 целых чисел подсчитать сумму элементов более чем в 2 раза превышающих минимальный - Pascal
Формулировка задачи:
Помогите написать программу:
В массиве из 10 целых чисел подсчитать сумму элементов более чем в 2 рах превышающих минимальный.
Решение задачи: «В массиве из 10 целых чисел подсчитать сумму элементов более чем в 2 раза превышающих минимальный»
textual
Листинг программы
const
n = 10;
var
k, min, sum, i: integer;
a: array [1..n] of integer;
begin
min := MaxInt;
writeln('Исходный массив:');
for i := 1 to n do
begin
a[i] := random(n) + 1;
write(a[i]:5);
if a[i] < min then
min := a[i];
end;
writeln;
writeln('Min: ', Min);
writeln('Массив чисел, удовлетворяющих условию: ');
k := 0;
sum := 0;
for i := 1 to n do
if a[i] > 2 * min then
begin
sum := sum + a[i];
write(a[i]:5);
inc(k);
end;
writeln;
if k <> 0 then
writeln('Sum: ', sum)
else
writeln('Нет таких элементов.');
end.
Объяснение кода листинга программы
- const
n= 10; - объявление константыnсо значением 10. - var
k, min, sum, i : integer;- объявление целочисленных переменныхk,min,sum,i. - var
a: array [1..n] of integer;- объявление массиваaиз 10 целых чисел. - min := MaxInt; - инициализация переменной
minзначением максимально возможного целого числа. - for i := 1 to n do - цикл от 1 до
n. - a[i] := random(n) + 1; - присвоение элементу
a[i]случайного значения от 1 доn. - if a[i] < min then min := a[i]; - проверка и обновление минимального значения.
- for i := 1 to n do - второй цикл от 1 до
n. - if a[i] > 2 * min then - если элемент массива
a[i]больше, чем в 2 раза минимальное значение. - sum := sum + a[i]; - увеличиваем сумму на значение элемента
a[i]. - inc(k); - увеличиваем значение
kна 1. - if k <> 0 then - если значение
kне равно 0. - writeln('Sum: ', sum) - вывод суммы.