|
Платежеспособный зверь
8966 / 4389 / 1655
Регистрация: 28.10.2009
Сообщений: 11,647
|
|
Оператор GOTO: за и против20.11.2011, 16:38. Показов 16148. Ответов 146
Метки нет (Все метки)
Люди, по ходу, газет не читают:
Оператор GOTO в языках высокого уровня является объектом критики, поскольку чрезмерное его применение приводит к созданию нечитаемого «спагетти-кода». Впервые эта точка зрения была отражена в статье Эдсгера Дейкстры «Доводы против оператора GOTO», который заметил, что качество программного кода обратно пропорционально количеству операторов GOTO в нём. Статья приобрела широкую известность как среди теоретиков, так и среди практиков программирования, в результате чего взгляды на использование оператора GOTO были существенно пересмотрены. В своей следующей работе Дейкстра обосновал тот факт, что для кода без GOTO намного легче проверить формальную корректность. Код с GOTO трудно форматировать, так как он может нарушать иерархичность выполнения (то есть парадигму структурного программирования), и потому отступы, призванные отображать структуру программы, не всегда могут быть выставлены правильно. GOTO также аннулирует многие возможности компилятора по оптимизации управляющих структур Доводы против оператора GOTO оказались столь серьёзны, что в структурном программировании его стали рассматривать как крайне нежелательный Начало тут
0
|
|
| 20.11.2011, 16:38 | |
|
Ответы с готовыми решениями:
146
Оператор GOTO и его метки Goto - за и против Оператор goto |
|
34 / 40 / 3
Регистрация: 24.11.2016
Сообщений: 159
|
|
| 18.01.2017, 23:56 | |
|
QBasic по многим очень многим показателям превосходит любой язык только им пользоваться уметь надо.Создатели языка QBasic на уровне чемпиона мира умеют играть в шахматы и го а также хорошо умеют играть в карточную игру бридж.
0
|
|
| 19.01.2017, 00:29 | |
|
0
|
|
|
|
|||
| 19.01.2017, 08:24 | |||
1
|
|||
| 19.01.2017, 10:14 | ||
|
Pro_grammer
Все БЕЙСИКИ хороши!! Выбирайте на любой вкус. А что касается оператора GOTO, то только ленивый его не ругал. И что? Этот оператор победно шествует почти во всех языках. А где его нет, то это не язык программирования. И много ли таких программистов в мире?
0
|
||
|
34 / 40 / 3
Регистрация: 24.11.2016
Сообщений: 159
|
|
| 19.01.2017, 18:16 | |
|
Иногда я хорошо играю в шахматы иногда плохо.Я на сайте Come2Play обыгрывал больших чемпионов в шахматы и потом фотографировал запись ходов партии.50% партий я выигрываю хотя рейтинг поднять не удаётся с нуля.На том сайте много игр и я там 5 лет играл потом страницу удалили а через 2 недели сайт стал запрашивать новую графическую настройку и не работал.Там есть игра го но маленькая 10 на 10 я в это го 18 раз выиграл 5 раз проиграл.В бридж не разу не играл.
0
|
|
|
34 / 40 / 3
Регистрация: 24.11.2016
Сообщений: 159
|
|
| 20.01.2017, 19:43 | |
|
Перед GOTO переходом делают квадрат из точек PAINT и заполняют его данными а после GOTO перехода POINT считывает эти данные.Можно конечно и экзотический вариант где данные записаны в узорах по экрану.Такая программа уже есть в одной из моих тем где после GOTO перехода подсчитывается число фишек разных цветов на экране и выводится виде цифр на экран.Сколько фишек такого цвета и сколько фишек другого цвета.
0
|
|
|
Кормпилятор
|
||
| 21.01.2017, 07:30 | ||
|
joshy, Стас, locm и др. На современных пишется не хуже чем на других и намнооого лучше в 3GL стиле, чем в популярном 4GL. И энтузиасты уже доказывали, что можно портировать любую программу, любой интерфейс. Дела у них наоборот идут всё лучше и лучше. Как Microsoft и другие вендоры не стараются "уйти от прошлого", прикрывать все лазейки, всё равно находится человек, который расшерстит и портанёт. Как не пытаются могучие разрабы интерфейсов их запутать, всё равно рано или поздно появляется библиотека или сорс на простейших бейсиках по работе с этими интерфейсами. Стараниями разных людей, где-то с паскаля переползает, где-то с плюсов, где-то с асма. А сам язык всегда будет на всех архитектурах, т.к. компиляторы писаны сами на себе и элементарно преобразуют код в машинный вид, т.е. изменений требует лишь низкоуровневая прослойка-транслятор. К тому же на зарубежных ресурса люди ковыряют действительно интересные, вполне себе серьёзные и полезные штуки, причём весьма успешно.
0
|
||
|
Платежеспособный зверь
8966 / 4389 / 1655
Регистрация: 28.10.2009
Сообщений: 11,647
|
|
| 21.01.2017, 12:00 [ТС] | |
|
Язык Бейсик - это тот гимнаст на батуте, который умер во время выступления, но ещё долго радовал зрителей...
0
|
|
|
Кормпилятор
|
||
| 21.01.2017, 20:01 | ||
|
создали под него оптимизирующие компиляторы под Xeon и Cuda соотв.. Если следовать логике, что все беды из-за GOTO тогда и Паскаль и Си должны быть мертвы, однако видно иное. Видно то, что старые подходы работают существенно эффективнее. Криворукие ООП программисты начинают сливать по всем фронтам, на фоне их кода, даже невероятно убогий макаронный код выглядит привлекательнее, потому что его проще обслуживать. Более того теоретики доказали свою несостоятельность, т.к. кроме теории до сих пор нет инструментальных средств, которые были бы способны автоматически реструктурировать программу с GOTO в программу без GOTO. И их выпады про формальную корректность и про оптимизацию звучат откровенно по-идиотски. В мире, где требуется энергоэффективность и лишние software расчёты приводят к неэкономному расходу энергии, начинают присматриваться и к ассемблеру, который тоже говорят, умер. Странная смерть учитывая что производители процев ударились в разработку SIMD и расширение шин данных(ядра то уже не помогают, ахахаха). Да и вижу кот не осведомлён ты о современных диалектах бейсика, ни о PureBasic, ни о FreeBasic ни о современных и популярных VisualBasic-ах и всяких Xojo(на котором пишут от веба до микрокомпьютеров вида raspberry pi, набирающих популярность). Так что голословненько как-то.
1
|
||
|
Платежеспособный зверь
8966 / 4389 / 1655
Регистрация: 28.10.2009
Сообщений: 11,647
|
|
| 21.01.2017, 20:08 [ТС] | |
|
как много слов в некрологе...
0
|
|
|
Кормпилятор
|
||
| 23.01.2017, 00:09 | ||
|
0
|
||
|
34 / 40 / 3
Регистрация: 24.11.2016
Сообщений: 159
|
|
| 23.01.2017, 16:43 | |
|
Есть более компактный способ передачи неограниченного количества данных PSET.
Добавлено через 20 минут Откройте энциклопедию и почитайте.QBasic обогнал все языки мира по взаимодействию с кнопками и экраном.А также там есть GET PUT и SWAP и так далее и тому подобное что можно перечислять до бесконечности.Код написанный на QBasic в два раза короче чем код на других языках.В других языках развиты другие способности но не здесь где QBasic обгоняет.Каждый язык хорош по своему.И перечислять их заслуги и недостатки можно долго.
0
|
|
|
Кормпилятор
|
|||
| 23.01.2017, 19:18 | |||
экран не поддерживает разрешение выше 640x480(12 режим), а про цветность в 32 бит можно только мечтать. Аппаратное ускорение отсутствует, а объём резервируемой памяти не превышает двух полных сегментов с хвостиком, да и всё мультимедиа ограничивается спикером. Под 99% современных ОС он не запустится даже в режиме эмуляции NTVDM, у остальных 50% пользователей нету VTx инструкций, 99% из которых не умеют ставить виртуалки и ставят DOSBox, который работает в софтваре(хотя у него есть эмуляция почти всего DOS железа). Можно, конечно, запрогать EMS, SoundBlaster Pro\16 и VESA, но это ужасный гемор даже на ЯП поддерживающих встроенный ASM, да и как-бы медленно, т.к. софтвар. Обычно люди ограничиваются либо QB7.1 + какая-либо графическая библиотека, либо пишут что-то кустарное под режим VESA, который можно разместить в хепе. STAR WARS, даже PDS 7.1 и UNREAL режимы процессора уже безнадёжно устарели. Про запуск нескольких потоков и возможность использования инструкций AVX говорить уже не приходится. DOS безнадёжно устарел. Побаловаться можно, но это тем, кто на время не смотрит. Повторюсь на QBasic ничего серьёзного под DOS написать практически невозможно. компактнее. Советую присмотреться к диалектам под Windows. Можно использовать для прототипирования алгоритмов QuickBasic, но нужно учитывать то, что это ограничивает возможности, да и работа с указателями в QB - сильно отличается от таковых в более менее нормальных диалектах. Основное применение такого подхода - создание быстро переписываемого кода(иногда можно перевести код быстрыми replace-ми с одного ЯП на другой), но в любом случае нужно рассчитывать архитектуру кода под FLAT модель, т.к. портировать сегментную модель довольно трудоёмко.
0
|
|||
| 24.01.2017, 10:26 | |
|
bedvit
Вот и вас сразила стрела пропаганды против GOTO. Да применяйте его чаще. А кто не поймёт вашу программу, то это его проблема. Люди, применяющие GOTO, способны разобрать любой код. Их интеллект возносится на недосягаемую высоту. Зависть простых смертных выливается в травлю GOTO. ... GOTO! - Я здесь! Я рядом с тобой! Я твой друг!
1
|
|
|
Кормпилятор
|
|||
| 24.01.2017, 13:52 | |||
|
Уже "боролся" с таким кодом, структурировать его поблочно, руками невозможно, даже чётко понимая, что каждая часть делает, такое только заново переписывать. И структурировать программу с 1 GOTO это не есть структурировать программу с 70 GOTO\GOSUB и не поможет даже визуальная схема со стрелочками, но пока не напоритесь не поймёте, это надо сугубо своим копчиком прочухать, а потом уже филосовствовать... Желаю вам напороться, ну так для опыта.
0
|
|||
|
34 / 40 / 3
Регистрация: 24.11.2016
Сообщений: 159
|
|
| 24.01.2017, 17:50 | |
|
На этом сайте многих языков не хватает.Я программирую на BlitzBasic а там даже фото аппарат есть делать фото экрана и 3D графика на высшем уровне а кот бегемот говорит вымер.
0
|
|
| 24.01.2017, 20:29 | |
|
0
|
|
| 24.01.2017, 20:29 | |
|
Оператор goto
оператор GoTo Безусловный оператор GoTo Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Nekobox - outbounds[0].transport: unknown transport type: raw
damix 01.10.2026
Фикс ошибки
Правым кликом по серверу -> отладочная информация -> edit
Заменить "net": "raw", на "net": "tcp",
Нажать кнопку reload.
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F
Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU.
Опрашиваются регистры. . .
|
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка:
Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
|