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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 19.05.2012, 20:31   #1
Алексей0211
Новичок
Джуниор
 
Регистрация: 19.05.2012
Сообщений: 1
По умолчанию нужно составить програмулину для подсчета непрерывной дроби

e=1+1/(1-1/(2+1/(3-1/(2+1/(5-1/(2+1/(7-1/(2+1/(9...
Алексей0211 вне форума Ответить с цитированием
Старый 19.05.2012, 20:59   #2
eoln
Старожил
 
Аватар для eoln
 
Регистрация: 26.04.2008
Сообщений: 2,645
По умолчанию

Это невозможно. Должны быть ограничения
eoln вне форума Ответить с цитированием
Старый 19.05.2012, 21:11   #3
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

Может дело не в возможной беспонечности, а в том чтобы вообще считать эту дробь?
При должной реализации, цикла While true do должно хватить.
Человек_Борща вне форума Ответить с цитированием
Старый 19.05.2012, 23:01   #4
s-andriano
Старожил
 
Аватар для s-andriano
 
Регистрация: 08.04.2012
Сообщений: 3,229
По умолчанию

Цитата:
Сообщение от Человек_Борща Посмотреть сообщение
При должной реализации, цикла While true do должно хватить.
При должной реализации всегда можно обойтись без GO TO.
s-andriano вне форума Ответить с цитированием
Старый 19.05.2012, 23:53   #5
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

Во всех циклах есть Goto. И нет ничего плохого в его использовании.
Я уже подымал тему, на тему использования goto в разных ЯП, в их числе был и pascal.

Бездумно использовать, да вредно. Но когда нужно выйти из 3-его вложенного цикла и прибить все внешние, то тут goto очень освежает.


К тому же, бесконечный рачект можно определить, паралельно запустив таймер в потоке, который будет начинаться каждый раз при расчете.
Человек_Борща вне форума Ответить с цитированием
Старый 20.05.2012, 00:11   #6
veniside
Старожил
 
Регистрация: 03.01.2011
Сообщений: 2,508
По умолчанию

чтобы вычислить бесконечную дробь, нужно бесконечное число goto.
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
veniside вне форума Ответить с цитированием
Старый 20.05.2012, 01:15   #7
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

Цитата:
чтобы вычислить бесконечную дробь, нужно бесконечное число goto.
o_O
а чем вас While true do не устроило , там бесконечность на ура.
Человек_Борща вне форума Ответить с цитированием
Старый 20.05.2012, 09:47   #8
s-andriano
Старожил
 
Аватар для s-andriano
 
Регистрация: 08.04.2012
Сообщений: 3,229
По умолчанию

Цитата:
Сообщение от Человек_Борща Посмотреть сообщение
Во всех циклах есть Goto. И нет ничего плохого в его использовании.
Это два разных утверждения. Первое из них требует существенных уточнений (как быть, если мы видим текст программы, в которой есть циклы, но ни разу не встречвается Go To?), а второе, во-первых, спорно, а во-вторых, никак не вытекает из первого.
Цитата:
Бездумно использовать, да вредно. Но когда нужно выйти из 3-его вложенного цикла и прибить все внешние, то тут goto очень освежает.
Ну да - вместо того, чтобы исправлять ошибки в коде, мы придумываем неестественные конструкции.
Если при необходимости выйти изнутри третьего цикла два внешних не завершаются автоматически, это значит, что сами эти циклы были изначально выбраны неправильно.
Цитата:
К тому же, бесконечный рачект можно определить, паралельно запустив таймер в потоке, который будет начинаться каждый раз при расчете.
Вы предлагаете прибивать сам поток снаружи или аккуратно его завершать изнутри?
s-andriano вне форума Ответить с цитированием
Старый 20.05.2012, 09:58   #9
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

По-моему тут самое оно - рекурсия.
А ограничение... Да хотя бы по количеству вложений.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 20.05.2012, 10:52   #10
s-andriano
Старожил
 
Аватар для s-andriano
 
Регистрация: 08.04.2012
Сообщений: 3,229
По умолчанию

По сути дела, в данной задаче разумное ограничение - единственный непонятный момент.
Если бы была задана нужная точность либо задана разрядность числа, можно было бы сконструировать и разумное ограничение.
s-andriano вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужно составить программу в С++ для решения системы уравнений Anton1609 Помощь студентам 0 01.10.2011 15:54
составить функцию для подсчета собственных чисел матрицы ( на С ) Mr.Merso Помощь студентам 4 22.05.2011 00:40
Нужно вычислить алгоритм подсчета контрольной суммы строки Walter Reed Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 2 30.01.2010 19:53
С++ Составить функцию для подсчета числа серий положительных, отрицательных чисел и нулей KASPEER Помощь студентам 0 13.01.2010 15:19
составить программу подсчета числа элементов одномерного массива, превосходящих СРЕДНЕЕ ГЕОМЕТРИЧЕСКОЕ Fatality Помощь студентам 4 05.02.2009 07:53