Паскаль......плииииззз. Заполнить массив случайными числами и отобрать в другой массив...

0 голосов
257 просмотров

Паскаль......плииииззз. Заполнить массив случайными числами и отобрать в другой массив все числа Фибона-ччи. Используйте логическую функцию, которая определяет, является ли переданное ей число числом Фибоначчи.
Пример:
Массив А:
12 13 85 34 47
Массив B:
13 34


Информатика (153 баллов) | 257 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

// 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.

Тестовое решение
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

(142k баллов)
0

можно по-другому, а то так не понятно

0

А потом по-третьему, по-четвертому... Если у Вас есть какие-то определенные требования к программе, надо это СРАЗУ указывать в тексте вопроса.

0

Во-первых, программа у меня не выполняется, а во-вторых мы так не решаем, нужен более простой вариант

0

Программа не выполняется: Вы обратили внимание на то, в чем её выполнять надо? / PascalABC.NET 3.1, сборка 1219 от 16.04.2016

0

А как вы там у себя решаете - так мы тут мысли читать не можем, чтобы догадаться.

0

Еще раз: непонятно - сами виноваты, потому что надо все требования выставлять в условии задачи.

0

И в дополнение: если у Вас какая-то конкретная система программирования и Вы хотите, чтобы программа в ней выполнялась - указывайте в тексте вопроса точное название этой системы и её версию.

0

Это - программирование! С его набором языков, диалектов, исполняющих систем и их версионностью. Тут надо аккуратно вопросы формулировать.