lyubavalev8
?>

Побудувати 10 горизонтальних паралельних ліній. паскаль

Информатика

Ответы

Алексеевна
Программа в системе PascalABC.Net (время выполнения около 2с)
var
  n1,n2,n3:int64;

function IsPrime(n:Int64):Boolean;
var
  p:Int64;
  found:Boolean;
begin
  case n of
  1:Isprime:=False;
  2:IsPrime:=True;
  else begin
    found:= (n Mod 2 = 0);
    p:=3;
    while (not found) and (sqr(p)<=n) do
      begin found:=(n Mod p = 0); p:=p+2 end;
    IsPrime:=(not found) or (p = 2)
    end
  end
end;

procedure Fib();
begin
  n3:=n1+n2; n1:=n2; n2:=n3
end;
 
var
  i,k:integer;
begin
  n1:=0; n2:=1; k:=0;
  Writeln('Простые среди первых 45 чисел Фибоначчи');
  for i:=3 to 45 do
  begin
    Fib; if IsPrime(n3) then begin Write(n3,' '); Inc(k) end
  end;
  Writeln(#13#10,'Найдено простых чисел: ',k)
end.
   
Результат выполнения программы:
Простые среди первых 45 чисел Фибоначчи
2 3 5 13 89 233 1597 28657 514229 433494437
Найдено простых чисел: 10

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Побудувати 10 горизонтальних паралельних ліній. паскаль
Ваше имя (никнейм)*
Email*
Комментарий*