Заполнить массив случайными числами и отобрать в другой массив все числа фибона-ччи. используйте логическую функцию, которая определяет, является ли переданное ей число числом фибоначчи. пример: массив а: 12 13 85 34 47 массив b: 13 34
// PascalABC.NET 3.1, сборка 1219 от 16.04.2016 function IsFibb(n:integer):boolean; begin var f1:=1; var f2:=1; while n>f2 do begin var t:=f2; f2+=f1; f1:=t end; Result:=(n=f2) end;
begin var a:=ArrRandom(ReadInteger('n='),1,50); Writeln('Массив А:'); a.Println; var b:=a.Where(k->IsFibb(k)).ToArray; Writeln('Массив B:'); b.Println end.
function IsFibb(n:integer):boolean;
begin
var f1:=1;
var f2:=1;
while n>f2 do begin var t:=f2; f2+=f1; f1:=t end;
Result:=(n=f2)
end;
begin
var a:=ArrRandom(ReadInteger('n='),1,50);
Writeln('Массив А:'); a.Println;
var b:=a.Where(k->IsFibb(k)).ToArray;
Writeln('Массив B:'); b.Println
end.
Тестовое решение
n= 20
Массив А:
35 41 3 41 13 33 2 32 46 17 46 42 45 46 35 24 18 34 19 1
Массив B:
3 13 2 34 1