|
Платежеспособный зверь
8966 / 4389 / 1655
Регистрация: 28.10.2009
Сообщений: 11,647
|
|
Оператор GOTO: за и против20.11.2011, 16:38. Показов 15515. Ответов 146
Метки нет (Все метки)
Люди, по ходу, газет не читают:
Оператор GOTO в языках высокого уровня является объектом критики, поскольку чрезмерное его применение приводит к созданию нечитаемого «спагетти-кода». Впервые эта точка зрения была отражена в статье Эдсгера Дейкстры «Доводы против оператора GOTO», который заметил, что качество программного кода обратно пропорционально количеству операторов GOTO в нём. Статья приобрела широкую известность как среди теоретиков, так и среди практиков программирования, в результате чего взгляды на использование оператора GOTO были существенно пересмотрены. В своей следующей работе Дейкстра обосновал тот факт, что для кода без GOTO намного легче проверить формальную корректность. Код с GOTO трудно форматировать, так как он может нарушать иерархичность выполнения (то есть парадигму структурного программирования), и потому отступы, призванные отображать структуру программы, не всегда могут быть выставлены правильно. GOTO также аннулирует многие возможности компилятора по оптимизации управляющих структур Доводы против оператора GOTO оказались столь серьёзны, что в структурном программировании его стали рассматривать как крайне нежелательный Начало тут
0
|
|
| 20.11.2011, 16:38 | |
|
Ответы с готовыми решениями:
146
Оператор GOTO и его метки Goto - за и против Оператор goto |
|
COM‐пропагандист
|
||
| 04.02.2023, 14:36 | ||
|
В программировании такая функция называется чистой.
0
|
||
|
Кормпилятор
|
||||||
| 04.02.2023, 14:50 | ||||||
|
не то что код, в ворде печатать не разумеют. Им кто-то рассказал, что программировать может любой, хотя это далеко не так в силу психико-физиологических особенностей. Вот это и есть целевой контингент этих анализаторов. Анализаторы проверяют по шаблонам на банальные ошибки к алгоритмам это не относится. А ждать пока луп прокрутится - это вообще бред, флаги применяются там, где они не дадут слоудаун из-за лишних пары холостых прокруток цикла и это офигенно малая цена за раскладку алгоритма в линейный итеративный вид, где можно по одной итерации блоху под микроскопом ковать. И состояния там всегда строго разделены, нет никакой даже малейшей необходимости прыгать из одного в другое, потому что сам алг разложен в итеративный несвязанный по состояниям вид. Если ты опускаешься до сортировок и до переходов, то это означает, что лично тебе в твоём коде требуется критическая оптимизация, это в свою очередь означает что надо спуститься на уровень ниже на ассемблер и там уже оптимизировать. Есть простая закономерность: чем качественнее твой алгоритм, тем меньше эффект от технической оптимизации. В идеальном случае это 85%-95% и соотв 15%-5%. По большому счёту достаточно просто хреначить нормально алгоритмически чтобы уже хорошо работало просто не все это умеют и с должным качеством, Antony Gual это доказывал и рейкастером и Jpeg декодером. Когда ты размазываешь оптимизацию по всей программе а не усираешься в отдельно взятой сортировке - общий эффект от твоей оптимизации гораздо выше и заметнее, при этом упор на алгоритмич. оптимизацию даёт максимальный эффект. Про это уже рассказывал когда расписывал потребность всё писать руками и пояснял, что даже если что-то не дотягивает до эталонных рыночных образцов - беды в этом нет, коли всё формализуется и идёт работа над алгоритмами, потому что софт именно в среднем будет иметь возможность работать быстрее аналогов, конечно это зависит от приложенных усилий и самого программиста, но описываемый мною подход даёт такие возможности. Тайн никаких нет, это вполне себе понятная и логичная стратегия разработки. работу за письменным столом. И то не все пока ещё впитали суть, то бишь зачем и почему. когда есть рабочее место, настроенная IDE и никто не мешает. Уразумей это. Там есть интересные и сложные моменты, но грубо говоря ты делаешь прогу чисто для себя(бестолковость++). А если делать на коммерс, то там упарываться не надо, это озвученный срок + оформление всего этого дела и ты должен был это понять в холиварах, которые на тему твоей игры вспыхивали. В моих реализованных задачах ты бы утонул на долгие годы и не факт что скодил, я и сам там кое-где обосрался много на себя взяв, надо порой понимать что на свои плечи взваливаешь соизмеряя с уровнем подготовки, опыта и личного кодархива.
1
|
||||||
|
|
||
| 04.02.2023, 14:51 | ||
|
0
|
||
|
Кормпилятор
|
||
| 04.02.2023, 15:12 | ||
|
людям впаривают аналоги мобильных ЦП на дешёвом говняном текстолите за деньги, на которые можно было бы собрать жирного монстра из Китая или середняка из регионалки. Осеписателей нет, т.е. совсем и порты линукса - это всё что данное железо ожидает. Спецификации - закрыты, эмулятор - закрыт. Видеоядра, очевидно, чужие. Элементная база - Китай. А лазер на 130Нм будет готов к 2025-му году. Короче к ребятам вопросов много. Жаренный петух их как-то слабо уклюнул, пока что-то глобальное не случится - так и будут хрен пинать.
0
|
||
|
|
|||||
| 04.02.2023, 15:46 | |||||
|
0
|
|||||
|
Кормпилятор
|
||
| 04.02.2023, 17:46 | ||
|
- это дебилизм, а вот прогу которую я выше приводил - ты без флагов не напишешь вовсе хоть ты конём епись))). Как, как... По комментариям и документации. Ты думаешь у тебя кода меньше будет на одну и ту же задачу? И мол нагрузка на голову меньше, да ты наивняк пипец. Ищещь золотой грааль, которого нет. У тебя есть алгоритм, который работает отталкиваясь от состояний, состояния сгруппированы в CASE, внтури кейза необходимые условия или ещё кейзы или цикл или формулы или вызовы процедур\функций, каждое состояние делает свою часть работы и переключается(переменная в кейзе меняет значение). Таких переключений может быть много. И если GOTO ты можешь не группировать и прыгать хер знает куда(а лохи или ещё большие извращенцы так и будут делать) то CASE сидит ровно в одном месте, найти в нём состояние не проблема, более того он и заточен под это, он буквально орёт тебе - "вот тут состояния элементов алгоритма". Они отрабатывают последовательно, состояние(участок кода) не завершившее свою работу не прыгает по 10 раз туда сюда - потому что это говнокод. В самых общих случаях алгоритм строится так, что состояния идут друг за другом, на то в какое русло переключится состояние может влиять бесчисленное кол-во факторов. И как бы там ни было зашиты эти состояния будут в порядке того как разрабатывался алгоритм, если при разработке человек всё разложил по полочкам - то будет очень даже читабельно, т.к. одного взгляда будет достаточно, чтобы понять что это последовательно идущие части одного толстого алгоритма, разбитого на состояния. И опять же не все алгоритмы удастся нормально сделать на флагах, но их множество гораздо более обширное, чем всех остальных. Они дофига где применяются, например, в большинстве конвеерных задач.
0
|
||
|
COM‐пропагандист
|
||
| 04.02.2023, 20:30 | ||
|
Чистая же функция при одних и тех же параметрах всегда будет выдавать один и тот же результат.
0
|
||
| 04.02.2023, 20:30 | |
|
Помогаю со студенческими работами здесь
147
Оператор goto
оператор GoTo Безусловный оператор GoTo Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Модель здравосохранения 18. Чем здоровее работник, тем быстрее выгорает
anaschu 24.05.2026
Имитационная модель корпоративного здравоохранения: что показывает математика
Сегодня в модели рабочего коллектива на AnyLogic появились три новые механики — выгорание через накопленную усталость,. . .
|
Модель здравосохранения 17. Планы на выгорание
anaschu 23.05.2026
Вот конкретная схема реализации:
В классе Работник добавить:
накопленнаяУсталость — растёт каждый час работы, снижается в перерывы и болезни
коэффициентПрезентеизма — снижает продуктивность. . .
|
Изменение цветов в палитре gif файла aka фавикона
russiannick 23.05.2026
Изменение цветов в палитре gif файла, юзаемого как фавиконка в составе html-файла, помещенная в base64, средствами нативного Java Script, навеянное сном в майский день.
Для работы необходим браузер,. . .
|
Модель здравосохранения 16. Слишком хорошие и здоровые сотрудники уходят, недовольные зарплатой
anaschu 23.05.2026
Отладка увольнений и настройка производительности
Сегодня во второй половине дня разобрались с механикой увольнений и настроили коэффициент сложности заданий. Вот что было сделано.
. . .
|
|
Как я стал коммунистом))) Модель сохранения здоровья сотрудников, запись блога номер 15
anaschu 23.05.2026
Внезапно хорошее здоровье сотрудников не нужно капиталистам?))
|
Модель здравоСохранения 15. Как мы чинили AnyLogic модель рабочего коллектива: сочленение диаграммы состояний болезней и поломок в ресурспул
anaschu 23.05.2026
Как мы чинили AnyLogic модель рабочего коллектива
Сегодня разобрались с пятью багами, из-за которых модель либо падала с ошибкой, либо давала совершенно бессмысленные результаты. Каждый баг был. . .
|
Диалоги с ИИ
zorxor 23.05.2026
Насколько я понимаю - Вы - Искусственный Интеллект. Это так?
Да, всё верно. Я — искусственный интеллект.
Я представляю собой большую языковую модель, созданную для помощи в самых разных задачах. . . .
|
Модель здравосохранения 14. Собираем всю модель вместе.
anaschu 22.05.2026
Модель собрана. В будущих постах на видео я покажу, как она работает.
В этом посте запускаем её, проверяем результаты и разбираем что можно с ней делать дальше.
Перед запуском проверяем. . .
|