Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.04.2011, 21:29   #1
bot0
Пользователь
 
Регистрация: 25.12.2010
Сообщений: 16
Вопрос Фибоначчи и Кассини

Помогите написать программу которая выводит на экран n-е число Фибоначчи и проверяет выполнение соотношение Кассини. (n может быть как положительным так и отрицательным)


язык Pascal или C/C++

если на форуме уже есть готовая программа, поделитесь ссылкой...
bot0 вне форума Ответить с цитированием
Старый 12.04.2011, 21:34   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Так все-таки "помогите написать" или "напишите за меня"?)

А ссылки на готовые программы обычно ищутся в поисковике\поиске на форуме. http://lmgtfy.com/?q=%D1%84%D0%B8%D0...D%D0%B8+pascal
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 12.04.2011, 21:40   #3
bot0
Пользователь
 
Регистрация: 25.12.2010
Сообщений: 16
По умолчанию

вот, есть такой кусок программки который выводит n-e число Фибоначчи и то только положительные результаты(нужны еще отрицательные) А вот насчет проверки соотношения Кассини вообще не шарю как делать.

uses
Crt;

const
Nmax = 1001;

type
TNumber = Array[0..Nmax] of Integer;

function max(const A, B: Integer): Integer;
begin
if A > B then Max := A else Max := B;
end;

procedure One(var X: TNumber);
begin
FillChar(X, SizeOf(X), 0);
X[0] := 1;
X[1] := 1;
end;

procedure Print(X: TNumber);
var
i: Integer;
begin
for i := X[0] downto 1 do
Write(X[i]);
WriteLn;
end;

procedure Add(A, B: TNumber; var C: TNumber);
var
i, d: Integer;
begin
FillChar(C, SizeOf(C), 0);
d := 0;
for i := 1 to max(A[0], B[0]) do begin
Inc(d, A[i] + B[i]);
C[i] := d mod 10;
d := d div 10;
end;
C[0] := max(A[0], B[0]);
if d > 0 then begin
Inc(C[0]);
C[C[0]] := d;
end;
end;

var
num, N: Integer;
A, B, C: TNumber;
begin
ClrScr;
Read(N);
One(A);
One(B);
num := 2;
while num < N do begin
Add(A, B, C);
Inc(num);
A := B;
B := C;
end;
if N <= 2 then One(C);
Print(C);
ReadKey;
end.
bot0 вне форума Ответить с цитированием
Старый 12.04.2011, 22:28   #4
ololo-schoolboy
Форумчанин
 
Регистрация: 25.12.2010
Сообщений: 247
По умолчанию

http://e-maxx.ru/algo/fibonacci_numbers здеся можно об этом почитать вроде несложно
ololo-schoolboy вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Последовательность Фибоначчи. Сумма в последовательности Фибоначчи, сравниваемая с числом N Neitrosha Помощь студентам 5 05.04.2011 09:19
Фибоначчи sivaeper Помощь студентам 5 29.12.2010 17:17
Фибоначчи Вадим ы Паскаль, Turbo Pascal, PascalABC.NET 3 21.08.2010 23:35
Фибоначчи:си tanek Помощь студентам 6 18.03.2009 21:59
Фибоначчи Walter Помощь студентам 17 13.12.2008 22:34