![]() |
Модераторы: Poseidon |
![]() ![]() ![]() |
|
Curator |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 9.1.2007 Репутация: нет Всего: нет |
Паскаль.
Задача Создать множество из чисел Фибоначчи : F(n)=F(n-1)+F(n-2), F(0)=0, F(1)=1 Множество должно содержать 100 первых чисел последовательности. Как говорится нид хелп. Сказали сделать к пятнице, а я даже не знаю кто такой Фибоначчо(а) )))) Помогите пожалуйста! |
|||
|
||||
Igor_St |
|
|||
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 18.9.2006 Репутация: нет Всего: нет |
Вот один из вариантов реализации данной задачи
![]() |
|||
|
||||
Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 9 Всего: 146 |
чет сомневаюсь чтобы на паскале были открытые массивы
![]() -------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. ![]() |
|||
|
||||
Sunvas |
|
|||
![]() Соль и сахар ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3388 Регистрация: 12.3.2006 Где: Тосно Репутация: 7 Всего: 89 |
Они называются динамическими. Их надо увеличивать вручную. Это сообщение отредактировал(а) Sunvas - 10.1.2007, 08:33 -------------------- Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их. |
|||
|
||||
Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 9 Всего: 146 |
![]() а в паскале они есть? -------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. ![]() |
|||
|
||||
Igor_St |
|
|||
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 18.9.2006 Репутация: нет Всего: нет |
Честно сказать не помню есть ли в Паскале динамические массивы, но даже конекретно в условиях этой задачи можно сделать и статический, уж они в Паскале точно есть
![]() |
|||
|
||||
Sunvas |
|
|||
![]() Соль и сахар ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3388 Регистрация: 12.3.2006 Где: Тосно Репутация: 7 Всего: 89 |
В Паскале их нет.. ![]() Просто все время Делфи, Делфи, Делфи. ![]() -------------------- Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их. |
|||
|
||||
Sunvas |
|
|||
![]() Соль и сахар ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3388 Регистрация: 12.3.2006 Где: Тосно Репутация: 7 Всего: 89 |
Хотя во FreePascal-e я уверен что такое дело есть.
-------------------- Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их. |
|||
|
||||
Curator |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 9.1.2007 Репутация: нет Всего: нет |
PS: %5BPascal]Задача Создать множество из чисел Фибоначи:F(n)=F(n-1)+F(n-2), F(0)=0, F(1)=1. Прежде всего, хочу отблагодарить за помошь! Огромное спасибо! Насчет вопросов - как все таки быть с динамическими массивами? Многие говорят, что их нет в паскале. И еще одна просьба - в представленном коде есть вставки на русском языке (например "инициализация массива") Нижайше прошу представить эти части тоже в коде, т к сам я не бум бум в програмировании. (В универе у нас програмирование идет "Общеобразовательным" предметом на ряду с философией.) Это сообщение отредактировал(а) Curator - 10.1.2007, 09:52 |
|||
|
||||
Romikgy |
|
||||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 9 Всего: 146 |
это комментарии , а не код! (т.е. что этот , ниже, код делает вообще)
воть вроде после выполнения этого кода , в массиве должны быть числа нужные тебе ![]() Это сообщение отредактировал(а) Romikgy - 10.1.2007, 10:02 -------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. ![]() |
||||
|
|||||
Silent |
|
||||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 252 Регистрация: 3.10.2006 Репутация: 6 Всего: 9 |
А кто-нибудь проверял то, что написал? В паскале уже на i=25, а в делфи на i=48 разрядности не хватает
![]() Я предлагаю такую вещь:
Хотя данный код - для вычисления N-го числа Фибоначчи (N - достаточно большое) БЕЗ получения предыдущих значений (F(N-1) и F(N-2)). Код основан на такой вещи: F(N)=A^N*First, где A - матрица 2х2 ((0,1),(1,1)) в степени N; First - матрица 2х1 (0,1) - первые два члена последовательности.
Это сообщение отредактировал(а) Alexeis - 11.1.2007, 18:41 |
||||
|
|||||
Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 9 Всего: 146 |
Воть 100% работает, считает до 255 знаков, конечно если до более чем 100 значений считать
![]() Присоединённый файл ( Кол-во скачиваний: 31 ) ![]() -------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. ![]() |
|||
|
||||
Igor_St |
|
|||
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 18.9.2006 Репутация: нет Всего: нет |
Идея конечно интересная что у одного и у второго...
![]() ![]() |
|||
|
||||
Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 9 Всего: 146 |
Igor_St, имхо в моем примере и суммируются строки
![]() -------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. ![]() |
|||
|
||||
Igor_St |
|
|||
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 18.9.2006 Репутация: нет Всего: нет |
да...
![]() |
|||
|
||||
Curator |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 9.1.2007 Репутация: нет Всего: нет |
Та же задача
На попытку запустить эту программу выдается ошибка "File not found (SysUtils.TPU) В чем ошибка?
Это сообщение отредактировал(а) Kuvaldis - 17.1.2007, 23:18 |
|||
|
||||
Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 9 Всего: 146 |
если паскаль чистый
то
-------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. ![]() |
|||
|
||||
Curator |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 9.1.2007 Репутация: нет Всего: нет |
Все равно
(File not found INTEGER_ASM.tpu) Далал на Borland Pascal 7.0 Это сообщение отредактировал(а) Curator - 15.1.2007, 22:58 |
|||
|
||||
Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 9 Всего: 146 |
там есть файл с расшерением .pas вот его надо в папку проекта закинуть -------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. ![]() |
|||
|
||||
Curator |
|
||||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 9.1.2007 Репутация: нет Всего: нет |
Просьба исправить и добавить, если я что не так говорю: Uses 1) ------(перечень используемых библиотек) integer_asm 2) ------(что делает эта команда?) Const = 100 3) -------(Кол-во элементов массива) Var 4) ------(перечень переменных) Mas:array [0..N-1] of TypeStr 5) ------(Задача массива и его типа, от 0 до N-1, i:integer 6)-------(Какая-то переменная типа интеджер, что она делает?) begin 7) ------(Начало программы) Mas [0]:= '0' 8) ------(присвоение первому элементу массива значения 0, ) Mas [1]:= '1' 9) -------(а второму - 1) for i:=0 to N-1 do 10) -------(Что делает эта команда?) Writeln(Mas[i]); 11)-------(вывод массива на экран) Readln 12) -------(ожидание нажатия клавиши) end 13) ------(окончание работы программы) |
||||
|
|||||
Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 9 Всего: 146 |
Curator, а может те книжки по паскалю почитать?
особенно после этого
цикл это -------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. ![]() |
|||
|
||||
Curator |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 9.1.2007 Репутация: нет Всего: нет |
Просто я показал это преподу - он сказал, что это "бред".
Совсем. Вот я и решил прикинуться тупым ))). Может я че-то не понимаю... Он сказал, что совсем не понимает как это буит работать, и при выполнении этой проги создастся массив, но не с числами фибоначчи. И отправил на пересдачу. |
|||
|
||||
Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 9 Всего: 146 |
Можешь ему сказать что в паскале, имхо , числа фибоначчи до 100 значения не влезут по нехватке разрядной сетки чисел ,
стандартно их 32 бита, это 4294967296,. в дельфи появился 64 битные числа до 18446744073709551616 может их и хватит, дык вот если все таки нужно до 100 значения , то используется сторонний модуль он лежит в отдельном файле с тем же названием но расширением . pas этот модуль работает с большими целыми числами , представленными в качестве строки (что бы хватило знаков для представления 100 значения массива чисел финабоччи) а дальше все просто начальные значения само вычисления ряда (используя суммирование из модуля integer_asm - Add) заполнение массива от 2 до Н-1 (почему от 2 , потому что 0 и 1 элементы массива уже заданы, почему до Н-1, потому что надо первых 100 элементов, а массив у нас нумеруется с нуля, отсюда и минус один) и вывод всего массива на экран Теперь больше вопросов не будет ? вроде уже все разжевал! -------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. ![]() |
|||
|
||||
Curator |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 9.1.2007 Репутация: нет Всего: нет |
Спасибо огромное за терпение!
Правда, очень помог. ИМХО надо на форуме ввести что-то вроде + от новичков, а то так плюсы до 100 сообщений не поставишь, Я б тебе уже +10 поставил! |
|||
|
||||
Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 9 Всего: 146 |
а смысл их десяти? плюс ме поставили, хотя это и не принципиально, просто тема необычная, вот и свои знания освежил ![]() да пазям ![]() заходите еще, если что интересное будет , то я мож помогу, не интересное людей много помогут ![]() -------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. ![]() |
|||
|
||||
Alexeis |
|
|||
![]() Амеба ![]() Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 23 Всего: 459 |
Curator, не забывайте выделять код!
-------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Центр помощи" | |
|
ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Более подробно с правилами данного раздела Вы можете ознакомится в этой теме. Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Центр помощи | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |