Пользователь

Добро пожаловать,

Регистрация или входРегистрация или вход
Потеряли пароль?Потеряли пароль?

Ник:
Пароль:

Меню сайта




Ваше мнение
Каким поисковиком вы пользуетесь ?

Google.ru
Google.com
Rambler
Mail.ru
WebAlta
Яндекс
Апорт
Yahoo
Gogo.ru
Другим


Результаты
Другие опросы

Всего голосов: 1716
Комментарии: 4


Наши партнеры



Статистика




Programming books  Download software  Documentation  Scripts  Content Managment Systems(CMS)  Templates  Icon Sets  Articles  Contacts  Voting  Site Search




Книги-online



Практикум — Глава 4. Алгоритмы, реализуемые с помощью циклов типа ПОКА
[ домой ] [ следующий ] [ начало главы ] [ предыдущий ] [ содержание ]

Пример 4.4. Числа Фибоначчи ( Fi ) определяются по формулам F0 = F1 = 1; Fi = Fi –1 + Fi –2 при i = 2, 3, ... (каждое очередное число равно сумме двух предыдущих). Вычислить сумму всех чисел Фибоначчи, которые не превосходят заданного натурального числа М.   Тест  
Номер теста Данные Результат
1 M=10 S=1+1+2+3+5+8=20
2 M=1 S=1+1=2
  Демонстрация Школьный АЯ
алг Фибоначчи (арг цел М, рез цел S)
  дано      | M>0
нач цел F0, F1, F2
  F0:=1; F1:=1; F2:=2
  S:=4   | 4 – сумма первых трех чисел Фибоначчи
  нц пока F2<=M
    F0:=F1; F1:=F2; F2:=F0+F1  | серия переприсваиваний
    S:=S+F2;
  кц
  S:=S–F2   | из S вычитается последнее значение F2, превосходящее M
кон
  Исполнение алгоритма 
 
F0 F1 F2 S F2<M
1 1 2 3 5 1 2 3 5 8 2 3 5 8 13 4 4+3=7 7+5=12 12+8=20 20+13=33 + + + + -(кц)
      33-13=20  
 
Блок-схема 
 Turbo Pascal
Program SummaFib;
  Uses Crt;
  Var M,                  {заданное число }
      F0, F1, F2,         {три последовательных числа Фибоначчи}
      S : Integer;        {сумма чисел Фибоначчи}
BEGIN
  ClrScr;
  Write(’Введите натуральное М : ’);
  ReadLn(M);
  F0:=1; F1:=1; F2:=2;
  S:=4;           {4 – сумма первых трех чисел Фибоначчи}
  Write(’Числа Фибоначчи, не превосходящие ’, M, ’ :’, F0:4, F1:4);
  While F2<=M do
    begin
      F0:=F1; F1:=F2; Write(F1 : 4);
      F2:=F0+F1; S:=S+F2;
    end;
  S:=S–F2; {вычитание из суммы последнего числа, которое превосходит М}
  WriteLn; WriteLn;
  WriteLn(’О т в е т : Сумма этих чисел равна ’, S); ReadLn
END.
Результаты работы Pascal-программы  
Введите натуральное M>0 :  10  <Enter>  
Числа Фибоначчи, не превосходящие 10 :  1  1  2  3  5  8  
О т в е т : Сумма этих чисел равна 20
 
QBasic
CLS
INPUT "Введите натуральное М : " , M
F0 = 1 : F1 = 1 : F2 = 2
S = 4     ’4 – сумма первых трех чисел Фибоначчи
PRINT "Числа Фибоначчи, не превосходящие "; M ; " : " ; F0 ; F1 ;
WHILE F2 <= M
  F0=F1 : F1=F2 : PRINT F1;
  F2=F0+F1 : S=S+F2
WEND
S=S–F2   ’вычитание из суммы последнего числа, которое превосходит М
PRINT : PRINT : PRINT "О т в е т : Сумма этих чисел равна "; S
END
 
[ домой ] [ следующий ] [ начало главы ] [ предыдущий ] [ содержание ]


Внимание! Если у вас не получилось найти нужную информацию, используйте рубрикатор или воспользуйтесь поиском


.



книги по программированию исходники компоненты шаблоны сайтов C++ PHP Delphi скачать