p - произведение s - сумма i - цикловая переменная
1. Цикл с предусловием While
var p, s, i : longint; [или integer] begin p := 1; s := 0; i := 101; while i < 200 do begin if i mod 5 = 0 then begin p := p * i; s := s + i; end; i := i + 1; [или ing(i)] end; writeln(p); writeln(c) end.
2. Цикл с постусловием Repeat
var p, s, i : longint; [или integer] begin p := 1; s := 0; i := 101; repeat if i mod 5 = 0 then begin p := p * i; s := s + i; end; i := i + 1; [или ing(i)] until i >= 200; writeln(p); writeln(c) end.
3. Цикл For
var p, s, i : longint; [или integer] begin p := 1; s := 0; for i := 101 to 199 do begin if i mod 5 = 0 then begin p := p * i; s := s + i; end; end; writeln(p); writeln(c) end.
// PascalABC.NET 3.0, сборка 1150 от 22.01.2016 begin var n:=ReadInteger('Количество элементов массива '); var m:=ArrRandom(n,-50,50); m.Println(', '); var a:=0; var b:=0; var c:=0; for var i:=0 to n-1 do begin if m[i]>0 then a:=a+m[i]; if m[i]<m[b] then b:=i; if m[i] mod 5 = 0 then Inc(c) end; var w:=(b+1)+a/(c+1); WritelnFormat('A={0}, B={1}, C={2}, W={3}',a,b+1,c,w); Writeln('Принято, что элементы массива нумеруются от единицы') end.
Тестовое решение: Количество элементов массива 13 -43, -15, 18, -8, -13, -47, -36, 6, -16, 45, 33, 33, -24 A=135, B=6, C=2, W=51 Принято, что элементы массива нумеруются от единицы
Специально для вас выловил ошибки, находящиеся в предыдущем решении. Кому-то не повезло :(
//PascalABC var S : array[1..10000] of integer; A, B, C, i, N, min : integer; W : real; begin write('Укажите размер массива > '); readln(N); write('Вводите элементы массива > '); for i := 1 to N do readln(S[i]);
A := 0; min := S[1]; C := 0; for i := 1 to N do begin if S[i] > 0 then A := A + S[i]; if S[i] < min then begin B := i; min := S[i]; end; if S[i] mod 5 = 0 then C := C + 1; end; W := B + A / (C + 1); writeln('Сумма элементов ', A); writeln('Номер минимального эл-та ', B); writeln('Количество кратных пяти ', C); writeln('Параметр W ', W); end.
p - произведение
s - сумма
i - цикловая переменная
1. Цикл с предусловием While
var
p, s, i : longint; [или integer]
begin
p := 1;
s := 0;
i := 101;
while i < 200 do
begin
if i mod 5 = 0 then
begin
p := p * i;
s := s + i;
end;
i := i + 1; [или ing(i)]
end;
writeln(p);
writeln(c)
end.
2. Цикл с постусловием Repeat
var
p, s, i : longint; [или integer]
begin
p := 1;
s := 0;
i := 101;
repeat
if i mod 5 = 0 then
begin
p := p * i;
s := s + i;
end;
i := i + 1; [или ing(i)]
until i >= 200;
writeln(p);
writeln(c)
end.
3. Цикл For
var
p, s, i : longint; [или integer]
begin
p := 1;
s := 0;
for i := 101 to 199 do
begin
if i mod 5 = 0 then
begin
p := p * i;
s := s + i;
end;
end;
writeln(p);
writeln(c)
end.