Pull to refresh

Comments 33

Ну, во первых там код не плюсовый, а чистый ANSI C, даже переменные объявляются только в начале блоков (=
Как по мне, так код написан так себе, т.к. в функциях присутсвует куча неявных изменений глобальных данных без прямой передачи их в функцию через параметры, именование переменных тоже не айс (то с маленькой буквы, то с большой). Думаю, что эту программулину товарисч написал не несколько лет назад а в далекие студенческие годы.

з.ы. ну и коды не в репозитории — это теперь почти моветон (=
Как по мне, так код написан так себе

Он премьер Сингапура, а чего добился ты?
Он премьер Сингапура

The eldest child of Singapore's first prime minister Lee Kuan Yew and his wife Kwa Geok Choo

И чего такого особенного он добился при таких родителях?
Да и не понимаю я, почему я должен умиляться говнокоду человека, который программирование изучал в одном из лучших ВУЗ'ов мира.
з.ы. судя по карме, много на ГТ оскорбленных моими коментами граждан Сингапура (=
Просто вы сразу начали агрессивно критиковать, что, видимо, кому-то не очень понравилось. Вы представляете, что какой-нибудь наш высокопоставленный чиновник будет выкладывать свой код куда-нибудь и рассказывать об этом? Я вот не представляю. :)
А чего там было агрессивного? О_о
Из граждан Сингапура в данной теме, скорее всего, я в единственном числе. Поэтому не надо на нас инсинуаций насчёт кармы :)

Код как код, выглядит как и должен выглядеть код написаный специалистом в другой прикладной области, решившим попрограммировать самостоятельно по книжке в качестве хобби. Умиляться коду совершенно незачем. Тем более, что код в этой новости на втором месте.

А ещё у нас есть министр, который достаточно адекватно занимается C и Arduino :)
Ну вообще то у него именно что профильное образование, причем полученное в Кембридже ;-)
А судя по коду, не похоже, чтобы он был написан недавно и очень смахивает на студенческую лабораторку.

А вообще IT-шник в политике — это хорошо как минимум потому, что есть вероятность, что он будет развивать эту отрасль со знанием дела, а не с префиксом «нано-», как у нас)
Он по образованию больше математик, CS — это сопутствующий диплом. Поэтому код именно что на студенческий и похож.

В нашем парламенте самый IT-шник — это как раз ардуинщик. Который на самом деле доктор медицинских наук. Он, кстати, и отвечает за новую госпрограмму Smart Nation.

С поддержкой отрасли тут всё очень хорошо :)
Мне кажется хреновы вы код разбирали, S2 определяется стазу после if.
Так что C++ однозначно.
Ну или это ANSI C99, начиная с которого стало можно объявлять переменные не только глобально, или в начале блока. Т.ч. не однозначно (=
Извините, но сразу вспоминается анекдот про Брежнева и то, как он спрашивает у Пельше, читал ли он «Малую землю»! Ни в коем случае никак не хочу обидеть премьер-министра Сингапура (может, он и правда такой!), но если остальные решат уподобиться ему, то возможно появление вот таких вот «Малых земель»…
Сразу вспоминается анекдот:

… и выиграл сразу в двух номинациях: «Лучший программист среди премьер-министров» и «Лучший премьер-министр среди программистов».
Код — норм. Именование переменных немного странное, некоторые блоки невыровненны, что может быть причиной копипасты, а может — и нет. Если код действительно его, то очень круто (наверно) иметь такого премьера.
Чем круто? Похоже просто на хобби, не хуже, не лучше других.
Круто тем, что такой человек не позволит себе опуститься до того, чтобы воровать бюджетные деньги, нести какую-то чушь из телевизора или обвинять другие страны в своих бедах. Его «понтами» будет не количество денег, которую он успел утащить подальше от дома, а уровень развития родной страны. Ну, и как бы уровень развития Сингапура намекает об этом.
UFO just landed and posted this here
Импликацию обращать нельзя. Из A => B следует только, что !B => !A, но никак не !A => !B.
Первая посылка вашего силлогизма: политик, умеющий кодить — честен. Думаю, можно не продолжать :)
Борис Березовский преподавал в ВУЗ'е, имел докторскую степень по математике, был членом академии наук, опубликовал чертову кучу статей, руководил IT-отделом АвтоВАЗ'а в лохматые 80-е годы. Но тем не менее против него было заведено немало уголовных дел. Т.ч. вряд ли и тут есть какая-то связь между умением программировать и отсутствием криминальных наклонностей. Хотя исключать такой связи тоже не стоит.
Скорее всего связи нет, иначе это напоминает одно из произведений Жванецкого — «Консерватория».

Консерватория, аспирантура, мошенничество, афера, суд, Сибирь.

Консерватория, частные уроки, еще одни частные уроки, зубные протезы, золото, мебель, суд, Сибирь.

Консерватория, концертмейстерство, торговый техникум, зав. производством, икра, крабы, валюта, золото, суд, Сибирь.

Может, что-то в консерватории подправить?
Не причиной, а следствием. Не надо путать причину и следствие. В особенности не надо путать следствие.
Код лучше, чем у некоторых сеньоров-помидоров.
UFO just landed and posted this here
Работает быстро, но не хватает проверки на неверные входные данные. Программа перебирает даже для таких данных:
Входные данные
123456789
123456789
---------
---------
---------
---------
---------
---------
---------

UFO just landed and posted this here
Если бы я не знал, то сильно усомнился бы в том, что это код премьер-министра. Кодеров с таким стилем еще поискать надо (я про стиль, а не про логику).
Интересно, Дворкович может что-то подобное предоставить? Неважно на чём.
Почему Дворкович а не Сурков?
>Кстати, если кто-то будет оценивать программу — отпишитесь в комментариях, хорош ли код, написанный премьер-министром.
Итак, оценка со всей строгостью, без скидок на непрофессионализм и размер программы:
1. Код пронизан магическими числами.
2. Почти весь код — чистый Си. Но вкралась 163-я строка, которая все портит. Надо было настроить компилятор таким образом, чтобы он такое не пропускал (или просто назвать файл .c)
3. Отсутствие соглашения об именовании. Полная каша.
4. Однобуквенные и прочие непонятные и неоднозначные имена переменных.
5. Слишком императивный подход. Непонятный поток управления. Place() в случае успеха вызывает Succeed(), при этом ничего не возвращая. Лучше бы вернул результат, а вызывающий сам решил, что с ним делать. Соответственно, повторное использование кода затруднено. Сюда же относятся глобальные переменные.
6. Плохая декомпозиция. Алгоритм не понятен. Что происходит в main()? Какие-то циклы, что они делают? Затем идет ConsoleInput(), затем какой-то Place() и, по сути, всё. А где результат и где он выводится? Как читающий должен догадаться, что он в Place()?
7. Высокоуровневый алгоритм переплетен с битоё*ством. Но это тоже относится к проблемам декомпозиции.
Вот не надо всех судить по способности написать программу. Думаю, министру культуры это не так важно, как какие-то творческие навыки. И не факт, что Сингапуру этот премьер-министр был бы бесполезен, не научившись он в университете основам программирования. Это полезно, так как тренирует мозги, поэтому и хорошо, что программирование есть в программах обучения, даже если оно не очень полезно с прикладной точки зрения (какой-нибудь консольный турбопаскаль в наши времена).
Главное, будучи на высоких постах, не быть узким специалистом, не видящим картины в целом, не имеющего системного подхода к решению проблемы.
Надеюсь все понятно, что это фейк?)
Sign up to leave a comment.

Articles