var n, k, s: integer; a: array of integer; function IsPrime(n: integer): boolean; var i: integer; begin if n <= 1 then Exit(False) else if n <= 3 then Exit(True) else if (n mod 2 = 0) or (n mod 3 = 0) then Exit(False); i := 5; while (i * i) <= n do begin if (n mod i = 0) or (n mod (i + 2) = 0) then Exit(False); i := i + 6; end; Exit(True); end; begin s := 0; write('n = '); readln(n); SetLength(a, n); for k := 0 to (n - 1) do begin write('a[', k, '] = '); readln(a[k]); if IsPrime(k) then s := s + a[k]; end; writeln('ответ: ', s); end.
Var ar:array of integer; n,i,min,mini:integer; begin randomize; min:=2147483647; writeln('Введите размерность:'); readln(n); setlength(ar,n); writeln('Array:'); for i:=0 to n-1 do begin ar[i]:=random(-30,30); write(ar[i]:4); if min>=ar[i] then begin min:=ar[i]; mini:=i; end; end; for i:=0 to mini-1 do if ar[i]<0 then ar[i]:=0; writeln; writeln('Final array:'); for i:=0 to n-1 do write(ar[i]:4); end.
Пример ввода: 5 Пример вывода: Array: -3 -26 -2 18 -21 Final array: 0 -26 -2 18 -21
var
n, k, s: integer;
a: array of integer;
function IsPrime(n: integer): boolean;
var
i: integer;
begin
if n <= 1 then
Exit(False)
else
if n <= 3 then
Exit(True)
else
if (n mod 2 = 0) or (n mod 3 = 0) then
Exit(False);
i := 5;
while (i * i) <= n do
begin
if (n mod i = 0) or (n mod (i + 2) = 0) then
Exit(False);
i := i + 6;
end;
Exit(True);
end;
begin
s := 0;
write('n = ');
readln(n);
SetLength(a, n);
for k := 0 to (n - 1) do
begin
write('a[', k, '] = ');
readln(a[k]);
if IsPrime(k) then
s := s + a[k];
end;
writeln('ответ: ', s);
end.