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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 26.02.2016, 16:05   #1
Pinguin007
Пользователь
 
Регистрация: 26.02.2016
Сообщений: 14
По умолчанию Подскажите алгоритм ( с чего начать написание программы , какие процедуры нужны)

Дан файл f, компоненты U0,U1,…Un которого являются последовательными числами Фибоначчи. Получить в файле f последовательные числа Фибоначчи U0,U1,…,Un+1

пишу на делфи, ничего не получается, смог тока создать файл с числами Фибоначчи и стою на месте
Написал тока одну процедуру
Код:
procedure Create(name:string);
var
a,b,c,i,n: integer;
f:text;
begin
assign(f,name);
rewrite(f);
if ioresult=0 then
begin
write('n = '); // Числа Фибоначчи
readln(n);
a := 0;
write(a,' ');

Write (f, a);
b := 1;
write(b,' ');
Write (f, b);
for i:=3 to n do begin
write(a+b,' ');
c := b;
b := a + b;
a := c;
write(f,b);
end;
readln;
end;
close(f);
end;

Последний раз редактировалось Аватар; 26.02.2016 в 16:08.
Pinguin007 вне форума Ответить с цитированием
Старый 26.02.2016, 16:29   #2
Dvoishnik
Форумчанин
 
Регистрация: 12.02.2011
Сообщений: 808
По умолчанию

нефига не понял в задании. но смею предположить, что типа того надо что то.
Код:
 
.............
Reset(myFile);
seek(myFile,fileSize(myFile));
Read (f, b);
c := b;
b := a + b;
a := c;
write(f,b);
..............
Терпение!Дежурный экстрасенс скоро свяжется с вами!
Dvoishnik вне форума Ответить с цитированием
Старый 26.02.2016, 17:48   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от Dvoishnik Посмотреть сообщение
нефига не понял в задании. но смею предположить, что типа того надо что то.
ну с вашей идеей я полностью согласен.
а вот реализацию я бы написал примерно так:
Код:
Reset(myFile);
if FileSize(myFile)<2 then b:=1
else begin
  seek(myFile,FileSize(myFile)-2);
  Read(myFile, a);
  Read(myFile, b);
  b:=a+b
end;
seek(myFile,fileSize(myFile));
write(myFile, b);
CloseFile(myFile);
p.s. код писал в браузере и не проверял.
Идея, надеюсь, понятна.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 26.02.2016, 17:56   #4
Pinguin007
Пользователь
 
Регистрация: 26.02.2016
Сообщений: 14
По умолчанию

а что именно делает эта часть кода?
Pinguin007 вне форума Ответить с цитированием
Старый 26.02.2016, 18:42   #5
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
Дан файл f, компоненты U0,U1,…Un которого являются последовательными числами Фибоначчи.
дай файл.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
С чего начать написание программы для решение СНУ на java? Анжелика96 Помощь студентам 0 14.12.2015 12:39
с чего начать написание fxnice Помощь студентам 1 27.03.2012 16:38
С чего начать написание программы для поиска дубликатов файлов? alexdadaev Visual C++ 5 02.02.2011 19:53
С чего начать написание игры? Dalagardi Помощь студентам 3 17.02.2010 15:16
С чего начать написание кода для графика? Slavik Microsoft Office Excel 1 25.03.2009 20:47