Создать последовательность натуральных чисел, заканчивающихся нулем (т.е. размер массива заранее не известен). Вычислить сумму тех из них, порядковые номера которых простые числа — Pascal(Паскаль)

uses crt;
function Prost(a:integer):boolean;//функция определения простого числа
var i:integer;
begin
if a<2 then Prost:=false
else
 begin
  Prost:=true;
  for i:=2 to round(sqrt(a)) do
  if a mod i=0 then
    begin
     Prost:=false;
     break;
    end;
 end;
end;
var i,n,s:integer;
begin
clrscr;
writeln('Введите последовательность натуральных чисел, окончание ввода 0:');
s:=0;
i:=0;
repeat
i:=i+1;
readln(n);
if Prost(i) then
 begin
  gotoXY(4,whereY-1);//эти 2 строки не обязательно, 
  writeln(' - простой номер');//это для наглядности
  s:=s+n;
 end;
until n=0;
write('Сумма чисел с порядковыми номерами, простыми числами=',s);
readln
end.

Leave a Comment

− 3 = 2