|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
26.02.2009, 22:45 | #1 | |
Пользователь
Регистрация: 25.12.2008
Сообщений: 37
|
Нужно объяснение задачки(((
Товарисчи форумчане помогите плз с задачей , друг написал код на паскале ничего не объяснив, я и не поняла((( вод условие задачки напишите каму несложно подробные комментарий к каждой строчке...
Вод код: Цитата:
|
|
26.02.2009, 23:08 | #2 |
Пользователь
Регистрация: 15.01.2009
Сообщений: 69
|
Ну, если рассмитривать процедуру, то ее можно записать в виде
Код:
Код:
После второй A=2A0+B0; B=A0+B0 После третей A=3A0+2B0; B=2A0+B0; тут A0 и B0 — первоначальные аргументы. Как несложно догадаться, далее идут ряды Фибоначчи-подобной последовательности с базой A0 и B0. Процедура выводит (N+2)-й член этой последовательности.
Silence is of great value...
|
26.02.2009, 23:10 | #3 |
В тени
Старожил
Регистрация: 19.12.2008
Сообщений: 5,788
|
Условия я что-то не вижу. Ну да ладно. И так понятно, что это программа для подсчета N-ого числа Фибоначчи.
Только вот есть здесь ошибка: Вызов должен быть таким: Код:
Такую простую задачу могли бы и сами разобрать. Код:
Вызываем процедуру: Rec(0,1,5); В ней снова вызываем Rec(1,0,4); Далее Rec(1,1,3); Потом Rec(2,1,2); Rec(3,2,1); Теперь снова уменьшаем N. Он становится равным 0. Значит, дошли до нужного числа. Это будет 3+2 = 5. Как тут еще можно объяснить, даже не знаю. Почитайте это -> Числа Фибоначчи ps немного не успел
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем. ___________________________________ ___________________________________ _______ [=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль] |
26.02.2009, 23:13 | #4 |
Пользователь
Регистрация: 21.02.2009
Сообщений: 28
|
Это процедура поиска N-го числа Фибоначчи. Так как по определению используется рекурентный способ нахождения, то в данной программе используется рекурсивный вызов процедуры до достижения числа N = 0.
Т.е. с каждым вызовом процедуры число N уменьшается, но при этом в NA и в NB поочерёдно прописываются все эти числа.
В споре рождается истина.
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Нарисуйте пожалуйста блок-схему лёгкой задачки, не знаю как,очень нужно... | prikolist | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 28.11.2008 15:27 |
Задачки на Си | Cyn4uk | Помощь студентам | 3 | 06.12.2007 23:51 |
Объяснение к задаче коммивояжер. | enik pi | Помощь студентам | 2 | 14.06.2007 00:54 |