Скорее всего так: const n=5; var a:array[1..n] of integer; i,s,r:integer; begin Randomize; writeln('Массив A:'); for i:=1 to n do begin a[i]:=random(101)-50; write(a[i]:4); end; writeln; s:=0; r:=0; for i:=1 to n do if a[i]>0 then s:=s+a[i] else r:=r-a[i]; writeln('s = ',s,' r = ',r); end.
while (rule = true) do begin k := k + 1; tmp := a1 + k * d;
if (tmp < 50) then max := tmp
else rule := false;
end;
sum := (a1 + max) / 2 * k;
Writeln(); Writeln('Сумма = ', sum);
End.
Программа будет работать только для арифметических прогрессий, например, таких, как последовательность из задания. Вводить нужно 2 целых числа (первые два члена прогрессии) через пробел (в вашем случае 4 и 7)
while (rule = true) do begin k := k + 1; tmp := a1 + k * d;
if (tmp < 50) then max := tmp
else rule := false;
end;
sum := (a1 + max) / 2 * k;
Writeln(); Writeln('Сумма = ', sum);
End.
Программа будет работать только для арифметических прогрессий, например, таких, как последовательность из задания. Вводить нужно 2 целых числа (первые два члена прогрессии) через пробел (в вашем случае 4 и 7)
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
Написать программу с массивом случайных 5 чисел от -50 до 50, если больше нуля - то сложить их, если меньше нуля - вычесть. (сумма и разность)
const n=5;
var a:array[1..n] of integer;
i,s,r:integer;
begin
Randomize;
writeln('Массив A:');
for i:=1 to n do
begin
a[i]:=random(101)-50;
write(a[i]:4);
end;
writeln;
s:=0; r:=0;
for i:=1 to n do
if a[i]>0 then s:=s+a[i] else r:=r-a[i];
writeln('s = ',s,' r = ',r);
end.
Пример:
Массив A:
29 32 -48 -42 11
s = 72 r = 90