Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 26.06.2009, 04:44
digimon digimon вне форума
Прохожий
 
Регистрация: 20.04.2009
Сообщения: 15
Репутация: 10
По умолчанию Помогите с задачкой на фибоначчи

Помогите написать программу. Вывести первые А четных членов ряда Фибоначчи - 1,2,5,13,34,89..., до заданного числа N.
Ответить с цитированием
  #2  
Старый 26.06.2009, 12:42
Grunch Grunch вне форума
Новичок
 
Регистрация: 08.04.2008
Адрес: Краснодар
Сообщения: 52
Репутация: 10
По умолчанию

Какую тему сейчас проходите - циклы или рекурсию?
Ответить с цитированием
  #3  
Старый 26.06.2009, 15:03
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,036
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

А там по умолчанию будет и то, и то т.к. числа фибоначи расчитываются обычно через рекурсию, а до числа N надо будет идти циклом while.
Кстати, ряд Фибоначи начинается с двух единиц, а не с одной.

Код:
program fibs;

{$APPTYPE CONSOLE}

function Fib(N : Integer) : Integer;
begin
  If N < 1 Then Raise Exception.Create('Номер числа не может быть < 1');
  If N < 3 
    Then Result := 1
    Else Result := Fib(N-1) + Fib(N-2);
end;

procedure PrintFib(AMaxFib : Integer);
var
  N : Integer;
  F : Integer;
begin
  F := 0;
  N := 1;
  While F < AMaxFib Do
    Begin
       F := Fib(N);
       WriteLn(Format('Fib(%d)=%d',[N,F]));
       Inc(N);
    End;
end;

var
  MaxFib : Integer;
begin
  Write('Введите макс. число Фибоначи:');
  ReadLn(MaxFib);
  WriteLn;
  WriteLn('Ряд Фибоначи:');
  PrintFib(MaxFib);
end.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 11:22.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter