Найти сумму элементов, сумма индексов которых является числом Фибоначчи - Free Pascal
Формулировка задачи:
2)Дана вещественная матрица. Найти сумму элементов, сумма индексов которых является числом Фибоначчи.
Решение задачи: «Найти сумму элементов, сумма индексов которых является числом Фибоначчи»
textual
Листинг программы
const size = 10; function isFib(n : integer) : boolean; // Проверка, является ли n числом Фибоначчи function isPerfect(p : integer) : boolean; begin isPerfect := Sqr(Trunc(Sqrt(p))) = p end; begin isFib := isPerfect(5*sqr(n) + 4) or isPerfect(5*sqr(n) - 4); end; var a : array[1 .. size, 1 .. size] of real; i, j : integer; s : real; begin for i := 1 to size do begin for j := 1 to size do begin a[i, j] := random * 100; write(a[i, j]:7:2); end; writeln; end; s := 0.0; for i := 1 to size do for j := 1 to size do if isFib(i + j) then s := s + a[i, j]; writeln('s = ', s:7:2); end.
Объяснение кода листинга программы
- Объявлены константа
size
равная 10 и функцияisFib
для проверки является ли число Фибоначчи. - Объявлена функция
isPerfect
для проверки является ли число совершенным (используется квадратный корень и округление до ближайшего целого числа). - В основной части программы объявлен массив
a
размеромsize x size
для хранения случайных чисел. - В цикле заполняют массив
a
случайными числами. - Выводят на экран массив
a
построчно. - Инициализируют переменную
s
равной 0.0. - В двойном цикле суммируют элементы массива
a
, которые являются числами Фибоначчи. - Выводят на экран значение переменной
s
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д