Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на языке Pascal


Информационный Канал Subscribe.Ru


RusFAQ.ru: Программирование на языке Pascal

Выпуск № 024
от 17.07.2002, 02:50

Администратор:
Имя: Sensey
URL: Информационный ресурс
ICQ: 105679124
Украина, Харьков
О рассылке:
Задано вопросов: 41
Отправлено ответов: 105
Активность: 256.0 %
[Задать вопрос >>][Регистрация эксперта >>]
[Поиск в базе]


 Список экспертов, ответы которых опубликованы в данном выпуске

Александр
Статус: Опытный
Общий рейтинг: 115.62
[Подробней >>]
veei
Статус: Доверительный
Общий рейтинг: 128.69
[Подробней >>]
vitya
Статус: Профессиональный
Общий рейтинг: 115.41
[Подробней >>]


 Краткий перечень вопросов

Вопрос № 41. Доброе время суток, эксперты! Объясните пожалуйста на яблоках что такое рекурсивный спуск, и обратна... (ответов: 3)

Вопросов: 1, ответов: 3


 Вопрос № 41

Доброе время суток, эксперты!
Объясните пожалуйста на яблоках что такое рекурсивный спуск,
и обратная польская запись.
Можно с каким нибудь примером в виде исходника (не очень сложного:)
Спасибо!



Вопрос отправлен: 14.07.2002, 02:45
Отправитель: AsteZX

[Следующий вопрос >>] [Список вопросов]

Отвечает Александр

Приветствую Вас, AsteZX!
Польская нотация, это такой вид записи арифметических выражений, очень удобный для трансляции в стековых машинах. Те кто имел счастие общаться с Программируемыми МикроКалькуляторами советского производства должны это прекрасно помнить... Чем парить мозги лучше сразу покажу на примере. Выражение a*(b/c + d) может выглядеть либо так:
с b / d + a *
либо так:
a d c b / + *
Это всё зависит от реализации. Мне например, как нормальному человеку больше первый вариант нравится. Т.е., грубо говоря, это такой способ записи, в котором операнды предшествуют знакам операций. При этом выполняется правило стека(Last In First Out). Результат операции также кладётся на вершину стека. Если очень надо могу попытаться переписать калькулятор, который я писал на C, в качестве курсовой соседу, на паскале. Или попытаться найти что-то подобное. Если будут вопросы - пиши. А про рекурсивный спуск - это тебе голову морочат, проще зови - рекурсия. Это когда значение какой-либо функции определяется как функция от самой себя с меньшим аргументом. Самый простой пример - факториал. n!=n*(n-1)! Исходник в приложении.


Приложение:

Ответ отправлен: 16.07.2002, 23:49
Отправитель: Александр


Отвечает veei

Добрый день, AsteZX!
Обычные алгебраические выражения можно записывать в обратной польской записи - без скобок (предложил польский математик Ян Лукашевич). Например, A+(B-C)*D-F/(G+H) преобразуется в ABC-D*+FGH+/-, или (A+B)*C-D+E/F/(G+H) в AB+C*D-EF/GH+/+.

Ответ отправлен: 16.07.2002, 02:43
Отправитель: veei


Отвечает vitya

Здравствуйте, AsteZX!
O рекурсивном спуске, к моему удивлению, я не слышал, а польская или постфиксная запись - это когда ты пишешь ab+ вместо a+b и ab+c* вместо (а+b)*c и abc*+ если убрать скобки.

Ответ отправлен: 15.07.2002, 08:59
Отправитель: vitya



Форма отправки вопроса

Внимание!
Форма может работать некорректно в почтовых программах "Microsoft Outlook" и "Microsoft Outlook Express". В программе The Bat! подобные формы не работают вообще!
После нажатия на кнопку "Отправить", будет открыто второе окно. Заметьте, что в некоторых браузерах могут стоять запреты на открытие других окон, а также "чрезмерное" кэширование данных, при этом факт отправки Вашего вопроса стоит под сомнением.
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+ или отправлять вопросы с сайта по адресу: http://rusfaq.ru/cgi-bin/Message.cgi.

© 2002 Команда RusFAQ.ru.

 Персональные данные

Ваше имя:

Ваш e-mail:

Опубликовать мой e-mail в рассылке


 Вопрос и дополнение

Ваш вопрос:


Приложение (если необходимо):


Получить ответов:


 Выбор рассылки

Программисту
Assembler (44)
C / C++ (31)
Perl (9)
Delphi (18)
Pascal (30)
Basic / VBA (11)
Java / JavaScript (6)
PHP (6)
MySQL / MSSQL (9)
Пользователю
Windows 95/98/Me (43)
Windows NT/2000/XP (32)
"Железо" (34)
Поиск информации (18)
Администратору
Windows NT/2000/XP (18)
Linux / Unix (16)
Юристу
Гражданское право (7)
Семейное право (3)
Трудовое право (7)
КоАП (2)

Отправить вопрос всем экспертам выбранной рассылки.




be number one Яндекс цитирования

© 2002 Россия, Москва. Авторское право: RusFAQ.ru

http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное