• Срочно! Pascal
    Напишите рекурсивную процедуру нахождения первых N чисел Фибоначчи. Каждое число Фибоначчи равно сумме двух предыдущих чисел при условии, что первые два равны 1 (1, 1, 2, 3, 5, 8, 13, 21,...).

Ответы 3

  • Хотя... можно сделать иначе
  • Вот, теперь правильнее, все по условию.
  • // PascalABC.NET 3.3, сборка 1634 от 14.02.2018// Внимание! Если программа не работает, обновите версию!procedure Fib(n:integer; var r:sequence of integer);begin  if n<1 then exit; // нечего глупости задавать  case n of  1: r:=Seq(1);  2: r:=Seq(1,1);  else begin    r:=Seq(1,1);    var (p1,p2):=(1,1);    var p:integer;    loop n-2 do begin      p:=p1+p2;      r:=r+Seq(p);      (p1,p2):=(p2,p)      end    end  endend;    begin  var s:sequence of integer;  var n:=ReadInteger('n=');  Fib(n,s);  s.Printlnend.Примерn= 81 1 2 3 5 8 13 21
  • Добавить свой ответ

Еще вопросы

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years