profile
Опубликовано 1 год назад по предмету Информатика от drobotlilija

Написать программу в Паскале.

Последовательность фибоначчи образуется так:первый и второй члены равны 1,каждый следующий равен сумме двух предыдущих(1,1,2,3,5,8,13,...)найти числа последовательности фибоначчи сумма которых меньше пятизначного числа n.

  1. Ответ
    Ответ дан karimPhoenix
    я бы сделал так:
    uses crt;
    const b=99999;
    var
    i,n:integer;
    mas:array [1..b] of integer;
    begin
    mas[1]:=1;
    mas[2]:=1;
    for i:=3 to b do
    mas[i]:=mas[i-1]+mas[i-2];
    writeln('vvedite iskomoe 4islo');
    read(n);
    for i:=1 to b do
    if mas[i]+mas[i-1]<=n then
    write(mas[i],' ');
    read;
    end.
    тут массив ограничен максимальным пятизначным числом 99999(строка const n=.....) так что если будет надо исправишь))) только это чисел то таких будет чертовски много))))
  2. Ответ
    Ответ дан archery
    var top, sum, An, An1 :integer;
    Begin
      read(top);
      sum:=2;
      An:=1;
      An1:=1;
      repeat
        An := An + An1;
        An1 := An - An1;
        sum := sum + An;
        write(An:6)
      until sum >= top
    End.

    1. Ответ
      Ответ дан karimPhoenix
      вполне красивый вариант))) даже меньше мороки))) честно, я бы так не додумался сделать)))