Задача - Ряд Фибоначчи - программирование на разных языках

Задача — Ряд Фибоначчи — программирование на разных языках

Задачи по программированию с решением для школьников
Want create site? Find Free WordPress Themes and plugins.

Задача — Ряд Фибоначчи
— программирование на Pascal, Си, Кумир, Basic-256, Python

Вывести на экран столько элементов ряда Фибоначчи, сколько указал пользователь. Например, если на ввод поступило число 6, то вывод должен содержать шесть первых чисел ряда Фибоначчи: 1 2 3 5 8 13.

Ряд Фибоначчи — это последовательность натуральных чисел, где каждое последующее число является суммой двух предыдущих:
1 1 2 3 5 8 13 21 34 55 89 …

В программах ниже первые два элемента ряда равны не по 1 каждый, а 1 и 2.

Поскольку начальные значения должны быть заданы и выведены на экран, то первые два элемента ряда Фибоначчи выводятся перед циклом. Поэтому цикл начинается с третьего элемента ряда. В самом цикле выполняются следующие действия:

  1. Вывести сумму текущих значений последних двух элементов.
  2. Присвоить предпоследнему элементу значение последнего, а последнему сумму последнего и предпоследнего (это делается через буферную переменную).

Цикл выполняется до тех пор, пока переменная-счетчик, изначально равная 3, не достигнет числа, введенного пользователем.

Pascal

var f1,f2,b,i,n: word;
begin
readln(n);
f1 := 1;
f2 := 2;
write(f1,’ ‘,f2,’ ‘);
for i:=3 to n do begin
write(f1+f2, ‘ ‘);
b := f1;
f1 := f2;
f2 := b + f1;
end;
writeln;
end. 9
1 2 3 5 8 13 21 34 55

Язык Си

#include <stdio.h>

main() {
unsigned int n,i,f1,f2,b;
scanf(«%d»,&n);
f1 = 1;
f2 = 2;
printf(«%d %d «,f1,f2);
for (i=3; i<=n; i++) {
printf(«%d «, f1+f2);
b = f1;
f1 = f2;
f2 = b + f1;
}
printf(«n»);
} 16
1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597

Python

n = int(input())
f1 = 1
f2 = 2
print(f1, f2, end=» «)
for i in range(3,n+1):
print(f1+f2, end=» «)
b = f1
f1 = f2
f2 = b+f1
print() 12
1 2 3 5 8 13 21 34 55 89 144 233

КуМир

алг ряд Фибоначчи
нач
цел f1,f2,b,i,n
ввод n
f1 := 1
f2 := 2
если n >= 2 то вывод f1,» «,f2,» » все
нц для i от 3 до n
вывод f1+f2, » »
b := f1
f1 := f2
f2 := f2+b
кц
кон 10
1 2 3 5 8 13 21 34 55 89

Basic-256

input n
f1 = 1
f2 = 2
print f1 + » «;
print f2 + » «;
for i=3 to n
print (f1+f2) + » «;
b = f1
f1 = f2
f2 = f2+b
next i 6
1 2 3 5 8 13

Did you find apk for android? You can find new Free Android Games and apps.

Добавить комментарий