1. Наш канал codeby в telegram. Пишем об информационной безопасности, методах защиты информации, о программировании. Не пропускай новости с кодебай, будь в тренде ! Подробнее ...

    Скрыть объявление

поиск чисел Фибоначчи в массиве

Тема в разделе "Вопросы новичков и не только", создана пользователем -, 7 дек 2010.

  1. Гость

    Репутация:
    0
    Переменной T присвоить значение true, если среди элементов массива х есть хотя бы одно число Фибоначчи, и значение false иначе
    Pascal

    Код:
    uses crt;
    
    function fib(k:byte):real;
    begin
    if (k=1) then begin fib:=0;exit;end;
    if (k=2) then begin fib:=1;exit;end;
    
    fib:=fib(k-1)+fib(k-2);
    end;
    
    
    const n=10;
    
    var x:array[1..n] of integer;
    i,k:byte;
    t:boolean;
    begin
    clrscr;
    writeln('введите ',n,' элементов массива');
    for i:=1 to n do
    read(x[i]);
    readln;
    t:=false;
    for i:=1 to n do
    if x[i]=fib(k) then
    begin
    t:=true;
    
    end;
    writeln(t);
    readln
    end.
    помогите, разлобраться. Вот что есть уже.
     
  2. nayke

    nayke Well-Known Member

    Репутация:
    0
    Регистрация:
    4 авг 2010
    Сообщения:
    310
    Симпатии:
    0
    во первых советую числа фибоначи определить в массиве вначале а не определять число рекусивно для каждого x.
    например
    Код:
    fib: array[1..20] of integer;
    fib[1]:=1;
    fib[2]:=2;
    for i:=3 to 20 do
    fib[i]:=fib[i-1]+fib[i-2];
    ну а сравнить есть ли число в массиве можно как
    Код:
    for i:=1 to n do
    begin
    for j:=1 to 20 do
    if x[i]=fib[j] then begin t:=true;break;end;
    if t then break;
    end;
    так как последовательность фибоначи будет отсортирована то можно всячески оптимизировать алгоритм, например используя дихотомический поиск, но для лабы с маленькими значениями и так пойдет.
     
Загрузка...
Похожие Темы - поиск чисел Фибоначчи
  1. ILIMDAR
    Ответов:
    0
    Просмотров:
    30
  2. komodikus
    Ответов:
    1
    Просмотров:
    135
  3. nerfy
    Ответов:
    4
    Просмотров:
    124
  4. Better2Gether
    Ответов:
    6
    Просмотров:
    213
  5. kvao
    Ответов:
    2
    Просмотров:
    79

Поделиться этой страницей