|
Платежеспособный зверь
8966 / 4389 / 1655
Регистрация: 28.10.2009
Сообщений: 11,647
|
|
Оператор GOTO: за и против20.11.2011, 16:38. Показов 15248. Ответов 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 | |
|
Помогаю со студенческими работами здесь
40
Оператор goto
оператор GoTo Безусловный оператор GoTo Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2.
Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники".
В. . .
|
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии.
. . .
|
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
|
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут.
https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc
Первый документ красиво выглядит, но без схемы.
Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
|
|
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере".
Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
|
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти".
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
В качестве источника данных. . .
|
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер
Написал заготовку:
dotnet new console --aot -o UrlHandler
var items = args. Split(":");
var tag = items;
var id = items;
var executable = args;. . .
|
Отправка уведомления на почту при создании или изменении элементов справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере типового справочника "Склады" в конфигурации БП3.
Перед реализацией необходимо выполнить настройку системной учетной записи электронной. . .
|