Алгоритм вычисления значения функции f(n), где n – натуральное число, задан следующими соотношениями: f(0) = 1, f(1) = 1 f(n) = f(n–1) + f(n-2), при n > 1. чему равно значение функции f(7)?
Это числа Фибоначчи. Каждое следуещее - это сумма двух предыдущих. Ряд таких значений будет такой: 1, 1, 2, 3, 5, 8, 13, 21, 34 ... Для F(7) результат будет такой: 21
Dlyamila
15.08.2020
#include <iostream> #include <cstdlib> // содержит srand() и rand() #include <ctime> using namespace std;
int main() { int n=10; int mas[n] = {}; int tmp,j=0; cout<<"random number"; cout<<endl; // начальная установка генератора случ. чисел srand(time(NULL)); // заполнение массива случайными числами for (int i = 0; i < n; i++) { mas[i] = rand()/100; cout<<mas[i]<<" "; } cout<<endl; // перестановка элементов for (int i = 0; i < n/2; i++) { tmp=mas[i]; mas[i]=mas[2*(i+1)-1]; j=2*i; while (j>i) { mas[j+1]=mas[j]; j--; } mas[i+1]=tmp; } //"массив после замены" for (int i = 0; i < n; i++) cout<<mas[i]<<" "; cout<<endl; system("pause"); return 0; }
natanikulina1735
15.08.2020
Var a:array[1..100,1..100] of integer; c:array[1..20,1..20] of real; b:array[1..20,1..20] of real; i,j,n,k:integer; t:real; r:integer; begin randomize; t:=0; Writeln('Введите порядок матрицы: '); readln(n); for i:=1 to n do for j:=1 to n do begin a[i, j] := random(10); end; for i:=1 to n do for j:=1 to n do begin b[i,j]:=1/i+j-1; end; for i:=1 to n do for j:=1 to n do begin for k:=1 to n do begin t :=t+a[i,k]*b[k, j]; end; c[i,j]:=t; t:=0; end; for i:=1 to n do begin for j:=1 to n do begin write(' ',c[i,j]:2:2); end; Writeln; end;
1, 1, 2, 3, 5, 8, 13, 21, 34 ...
Для F(7) результат будет такой: 21