![]() |
1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!
![]() ![]() |
![]() |
>hamka< |
![]()
Сообщение
#1
|
Новичок ![]() Группа: Пользователи Сообщений: 35 Пол: Женский Репутация: ![]() ![]() ![]() |
Можно из процедуры прыгнуть на метку, кот. в главной программе. Или ее надо описывать в параметрах передаваемой процедуры. А если нельзя, то нет ли каких нибудь приемчиков, чтобы перейти на метку не процедурную?
|
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Цитата(>hamka< @ 25.02.05 18:57) Можно из процедуры прыгнуть на метку, кот. в главной программе. Или ее надо описывать в параметрах передаваемой процедуры. А если нельзя, то нет ли каких нибудь приемчиков, чтобы перейти на метку не процедурную? А Вы в курсе, что использование меток в паскале ВООБЩЕ не приветствуется? Да и по определению этого сделать нельзя ... Опишите проблему, возможно ее удастся решить другими методами... |
>hamka< |
![]()
Сообщение
#3
|
Новичок ![]() Группа: Пользователи Сообщений: 35 Пол: Женский Репутация: ![]() ![]() ![]() |
Цитата(volvo @ 25.02.05 19:59) А Вы в курсе, что использование меток в паскале ВООБЩЕ не приветствуется? а почему ? =(( |
Altair |
![]()
Сообщение
#4
|
![]() Ищущий истину ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 824 Пол: Мужской Реальное имя: Олег Репутация: ![]() ![]() ![]() |
А потому что это противоречит принципам структурного программирования.
Есть желание поспорить? идите к Вирту, Дейкстре и прочим "динозаврам" программирования! -------------------- Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С) |
>hamka< |
![]()
Сообщение
#5
|
Новичок ![]() Группа: Пользователи Сообщений: 35 Пол: Женский Репутация: ![]() ![]() ![]() |
Цитата(Oleg_Z @ 25.02.05 20:04) А потому что это противоречит принципам структурного программирования. а как же асм ;) а чем заменять метки? Неужели флажками? |
Altair |
![]()
Сообщение
#6
|
![]() Ищущий истину ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 824 Пол: Мужской Реальное имя: Олег Репутация: ![]() ![]() ![]() |
А АСМ - эт оязык НИЗКОГО УРОВНЯ!
и методы программирвоания на языках ВЫСОКОГО уровня к нему не относятся! -------------------- Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С) |
Altair |
![]()
Сообщение
#7
|
![]() Ищущий истину ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 824 Пол: Мужской Реальное имя: Олег Репутация: ![]() ![]() ![]() |
p.s. Да и в АСМЕ без них не обойдешься - фон-неймановская модуль работает там - переход на произвольный участок (памяти например) - а это и есть скачок! переход!
Но цель развития программирвоания - свести все команды ближе к человеческому языку, и от безусловных переходов решили отказаться! Если вам так мил АСМ, вам на несклолько разделов ниже в форум АССЕМБЛЕР. Так какие проблеммы в задаче? -------------------- Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С) |
>hamka< |
![]()
Сообщение
#8
|
Новичок ![]() Группа: Пользователи Сообщений: 35 Пол: Женский Репутация: ![]() ![]() ![]() |
Цитата(Oleg_Z @ 25.02.05 20:21) Так какие проблеммы в задаче? Хочу проверку на число оформить как процедуру. А так у меня все в программе разбросано на метки. ( если не число _>переход на введение числа)Как переоформить не знаю. Флажки не работали и в программе без разбиения на процедуры. Только по меткам я добилась хоть какой-то корректной работы. Теперь я понимаю, что надо делать как-то по-другому. Как не знаю. И сроки уже поджимают =)) |
Altair |
![]()
Сообщение
#9
|
![]() Ищущий истину ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 824 Пол: Мужской Реальное имя: Олег Репутация: ![]() ![]() ![]() |
убрать ВСЕ МЕТКИ ИЗ ПРОГРАММЫ.
А вы можете сказать задание вообще глобальное которое вы делаете? -------------------- Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С) |
SKVOZNJAK |
![]()
Сообщение
#10
|
![]() Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 930 Пол: Мужской Репутация: ![]() ![]() ![]() |
Цитата(Oleg_Z @ 25.02.05 17:19) Но цель развития программирвоания - свести все команды ближе к человеческому языку, и от безусловных переходов решили отказаться! На ловца и зверь бежит ![]() ![]() ![]() ![]() ![]() То о чём ты спрашиваешь, уже когда-то обсуждалось на форуме, конкретно система "сушняк турбо" - моё извращение над турбовизион. Там приведён работающий макет проги с оконным интерфейсом. Естественно пупырится всё через гото, управление объектами тоже через гото. Можешь поискать на форуме инфу или скачать исходники с моего сайта. Принцип такой. Ядро программы состоит из бесконечного цикла на гото типа: Код BEGIN A:=0; 1: ............................ GOTO 3; 2: ............................. 3: CASE A OF 0: PROCEDUR1; 1: GOTO 2; 2: PROCEDUR2; 3: PROCEDUR3; END; IF A=100 THEN GOTO 100; GOTO 1; 100: END. Цикл на гото и есть тело проги, он запускает объекты, процедуры, да всё что угодно. Каждая процедура или объект при запуске считывает данные и номер команды из массива глобальных переменных, туда же всё и сохраняет. Выполнив действие объект записывает команду в переменную и отрубается(сохраняет завещание с которым далее работает адвокат). Это может быть команда запустить что-то ещё, или предоставить дополнительную инфу и запуститься снова - зависит от вашей фантазии. Объект в данном случае становится как бы обычной процедурой, а не основой проги. Команда считывается в операторе CASE или IF THEN, и опять по кругу. Бесконечная мясорубка перемалывающая инфу. Основной прикол в том, что любые объекты не живут слишком долго и используются по очереди, а значит обеспечивается совместимость несовместимых сабжей. Сообщение отредактировано: SKVOZNJAK - 27.02.2005 3:17 |
Martyr |
![]()
Сообщение
#11
|
Группа: Пользователи Сообщений: 7 Пол: Мужской Репутация: ![]() ![]() ![]() |
Stop flaming!
В BP запрещено обращение к идентификаторам-меткам вне текущего блока (т. е. из процедуры к метке основной программы). |
SKVOZNJAK |
![]()
Сообщение
#12
|
![]() Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 930 Пол: Мужской Репутация: ![]() ![]() ![]() |
Невнимательно читал, если вообще дочитал. В этой концепции описывается альтернативный подход, запреты для которого ещё не написали
![]() ![]() |
Martyr |
![]()
Сообщение
#13
|
Группа: Пользователи Сообщений: 7 Пол: Мужской Репутация: ![]() ![]() ![]() |
Вообще этот подход называется асинхронной обработкой событий (сейчас широко применяется при построении пользовательских интерфейсов)
![]() P. S. Примерчик активного использования GOTO... ![]() Сообщение отредактировано: Martyr - 27.02.2005 10:40 Прикрепленные файлы ![]() |
Altair |
![]()
Сообщение
#14
|
![]() Ищущий истину ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 824 Пол: Мужской Реальное имя: Олег Репутация: ![]() ![]() ![]() |
Вы отклоняетесь от темы... GOTO - ПЛОХОЙ СТИЛЬ ПРОГРАММИРОВАНИЯ
... вообще-то тема себя исчерпала, .т.к. вопрос автора темы относился к задачам. Думаю обсуждать больше нечего. -------------------- Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С) |
SKVOZNJAK |
![]()
Сообщение
#15
|
![]() Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 930 Пол: Мужской Репутация: ![]() ![]() ![]() |
Может и плохой, но придумай ему адекватную замену, если таковая вообще существует.
|
Dark |
![]()
Сообщение
#16
|
![]() Знаток ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 408 Пол: Мужской Репутация: ![]() ![]() ![]() |
Олежка, если вопрос относился к задачам то почему он в теории? А поскольку он находится в теории - то его можно здесь обсуждать, независимо от направления первого вопроса
Мне лично тема интересна =) но со стороны -------------------- - Где я?
- Во тьме. - В какой тьме? - Во тьме твоего мозга. |
Romtek |
![]()
Сообщение
#17
|
![]() Знаток ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 303 Пол: Мужской Реальное имя: Роман Репутация: ![]() ![]() ![]() |
Цитата(>hamka< @ 25.02.05 20:28) Хочу проверку на число оформить как процедуру. Код Procedure InputN (var N: integer); var erс: integer; begin repeat write ('Введите целое число: '); {$I-} readln (N); {$I+} erc :=IOresult; if erc <> 0 then writeln ('Число должно быть *целым*'); until erc = 0; end; Сообщение отредактировано: Romtek - 3.03.2005 3:01 -------------------- Romiras HomeLab- материалы и статьи по разработке ПО, моделирование алгоритмов, обработка и анализ информации, нейронные сети, машинное зрение и прочее.
|
![]() ![]() |
![]() |
Текстовая версия | 23.06.2025 11:42 |