Форум » Олимпиадное программирование » Выбор языка программирования и компилятора для олимпиадного программирования » Ответить

Выбор языка программирования и компилятора для олимпиадного программирования

inf777: Опять тема выбора языка программирования? Да, но теперь уже в разрезе подготовки к олимпиадам по программированию. Сразу хочу затронуть тему выбора компилятора. На мой взгляд, это не маловажно, тем более, когда речь идет о языках семейства С. Итак, на каком языке программирования вы проводите школьные олимпиады по информатике? Какой используете компилятор? Какие у вас достижения?

Ответов - 11

Oleg_D: Лучший язык программирования - 1С-бухгалтерия - самый востребованый, однако! Ладно, шутки в сторону. Если парочка C/C++ так замечательна, то: 1. Зачем продолжают выдумывать другие языки? 2. Почему эту парочку не пускают в такие сферы, как ядерная энергетика, космос, авиация? Там по-прежнему предпочитают "Вирт-уальные" Аду и Модулу! Паскаль ставит мозги на место - это раз, он надежен - это два, практичен - три. В конце концов он просто красив! Хотите убедиться? "Песни о Паскале" - для школьников и начинающих программистов, гуглите!

LoW: Я лично использую Pascal (Delphi и т.п.) У меня правда на C синтаксис аллергия, то есть при желании читать могу, но долго плуюсь. C изначально не создавался как учебный язык и приницпы его создания были а наворотим ка мы всего побольше и жалательно непонятнее. Правда в силу некоторых особенностей (на нем написаны все основные ОСи Win, *nix) он стал стандартом.

inf777: Солидарен с Вами по поводу «корявости» синтаксиса языка Си, мне тоже нравиться Паскаль и Delphi, но Си действительно стал стандартом. Вообще мне как-то обидно за Вирта, а именно за его язык Оберон. Ведь как многие говорят, при разработке этого языка использовано много отличных находок, но Вирта никто не поддержал, хотя многие воровали его идеи.


LoW: inf777 пишет: но Си действительно стал стандартом. Да, но это не означает смерть других языков. В принципе я хедеры на C вполне прочитать могу, но писать. inf777 пишет: Вообще мне как-то обидно за Вирта, а именно за его язык Оберон. Да и Борланд, в последнее время двигал Delphi не канонам Вирта, а из требований рынка и давления Microsoft.

inf777: LoW пишет: Да, но это не означает смерть других языков. В принципе я хедеры на C вполне прочитать могу, но писать. Не хотел быть голословным и пытался отыскать заметку Руслана Богатырева (Мир ПК), где он изучал ситуацию с языками программирования, к сожалению не нашел. На память могу сказать, что С и все его отпрыски выдавливают и Delphi и конечно Паскаль. У меня вообще по этому обзору сложилось впечатление, что Россия последний оплот Delphi. Вообще Россия удивительная страна, у нас порой приживается продукты, которые не смогли прижиться даже у себя на родине. Вот вам один пример. Разговариваю с товарищем проживающем в Германии, он собирается покупать новый компьютер для детей. Спрашиваю, не хочет ли он купить двухядерный AMD Athlon, он говорит, что про фирму AMD слышит в первый раз, не смотря на то, что оба завода по производству процессоров находятся в Германии. У нас же процессоры AMD весьма популярны, взять хоть компьютеры «Формоза», которые, как правило, собираются на базе процессоров AMD. Множество раз видел объявления по поиску Си-программиста (нужен такой был и на Яндексе), но что-то пока не видел вакансии Delphi-программиста. Как говорится: «Я хороший юрист». «Извините, но нам нужен сварщик».

starik: Во-первых автору сайта: замечательную работу ведете (5+++) и подборка отличная, а о хостинге думаете? LoW пишет: У меня правда на C синтаксис аллергия, то есть при желании читать могу, но долго плуюсь. C изначально не создавался как учебный язык и приницпы его создания были а наворотим ка мы всего побольше и жалательно непонятнее. Правда в силу некоторых особенностей (на нем написаны все основные ОСи Win, *nix) он стал стандартом. inf777 пишет: Солидарен с Вами по поводу «корявости» синтаксиса языка Си, Да вы что ребята, язык С - образец для подражания. не даром же именно его синтаксис лежит в основе языков Java, PHP, Perl и пр. и пр. А Pascal чего? (Ada да еще парочка-тройка мало кому нужных) Вы просто противоречите здравому смыслу и практике информационных технолгий. Ведь все они заточены в первую очередь под С. (Даже всем известный в среде delphi Firebird) inf777 пишет: Россия последний оплот Delphi. Это действительно так. Ведь если какой-нибудь бешенный террорист врежется в Borland, кто еще поддержит Delphi??? А капиталисты не будут вкладывать деньги в проект построенный на одной даже супергениальной компании. А у нас большинство ВУЗов консервативны и учат по материалам 10-20 летней давности, поэтому Pascal популярен в среде студентов. Итог: помоему начинать обучение программированию нужно на Basic, а для олимпиад C\C++ однозначно, иначе очень скоро мы окажемся в .... Вобщем там где были лет 10 назад.

gu: занимаюсь профессионально подготовкой к олимпиадам. знаю Delphi, C, Java. выбрал для подготовки C/C++ по простой причине: на олимпиаде нужно писать в максимально сжатые сроки. в плюсах есть STL который избавляет от многих проблем, в частности от реализации красно-черных деревьев или куч. кроме того, сишный код получается заметно короче. например, задача поместить в перменную a меньшее из чисел a и b. Delphi: if a>b then a := b а на си (плюсах, яве): a<?=b; при эффективном использовании языковых конструкций длина кода сокращается раза в два. возьмем нормальную задачку со Всероса - это 6 Кб текста (Дельфи). если набивать по 100 символов в минуту (тут нельзя просто колотить, тут думать надо еще, поэтому 100 и выходит), то это час чистого набивания. а на сях - 30 минут. выигрыш полчаса на одной задаче. на трех выйдет больше часа. значит, больше часа на раздумья. а это серьезное преимущество. конечно, Java еще эффективнее в плане наличия в ней библиотек (длинная арифметика, например), но у нее пока есть три недостатка: не сильно распространена на олимпиадах школьников, тормозит (раза в 2 медленнее сишного кода) и у нее уж очень убогий текстовый ввод. поэтому си. практика показывает, что переход с си на дельфи и обратно занимает неделю-две, а через месяц человек уже свободно ориентируется в обоих языках. поэтому подход в плане практической применимости не определяет.

LoW: gu пишет: кроме того, сишный код получается заметно короче. Языки программирования создавались, что бы они были понятны людям, к C это относится в наименьшей степени. gu пишет: при эффективном использовании языковых конструкций длина кода сокращается раза в два. Ну и что? Отсуда делаем выводы переменные называем как можно короче, остальное то же. Это путь к утопии. gu пишет: практика показывает, что переход с си на дельфи и обратно занимает неделю-две, Вряд, ли. Если вы имеете в виду только язык, то возможно. Но учтите что у каждого языка свая библиотека VCL, MFC и с ее тонкостями вы в месяц не уложитесь. inf777 пишет: Итак, на каком языке программирования вы проводите школьные олимпиады по информатике? Когда мы организовывали был Pascal, Basic (это для школьников, правда проводили в институте). Правда в последнее время что-то мне все больше концепция этих олимпиад не нравится, я например с нашими (на ACM и т.п.) работать отказлся.

gu: да нормально все в сях. те же if, for, while, do while. только вместо длинных begin, end, do, downto используются более короткие конструкции. это не сильно усложняет понимание. к тому же, си позволяет писать также коряво, как и паскаль (тот пример, который я привел, вполне можно и на си написать и будет работать ничуть не хуже), но, для тех кто умеет, в сях есть более короткие конструкции. а кто не умеет - тот может писать как на паскале, ничего страшного не случится. переменные действительно лучше называть покороче. библиотеки на олимпиадах один черт не используются, разве что STL плюсовый, но его аналога в паскале вообще нет, так что ничего страшного. ну и опять же, это исключительно в плане олимпиад взгляд.

LoW: gu пишет: да нормально все в сях. те же if, for, while, do while. только вместо длинных begin, end, do, downto используются более короткие конструкции. Какая от этого польза, я begin ... end очень быстро печатаю :) gu пишет: но, для тех кто умеет, в сях есть более короткие конструкции. а кто не умеет - тот может писать как на паскале, ничего страшного не случится. Иногда приходится читать чужой код, и для меня Delphi код читать и разбираться в нем в разы легче (ихмо). gu пишет: ну и опять же, это исключительно в плане олимпиад взгляд. Я наоборот смотрю с другой стороны :) Да у C сильные позиции, в силу некоторых обстоятельств и последних изменений в Borland, причем некотрые вещи в Delphi не возможно сделать (теже драйвера), но и Delphi есть преймущества, это большое количество third-party, плюс собственная неплохая библиотека VCL (еще б Unicode, цены ей небыло).

erina_m: После того, как действительно (!!!) научишься писать на Си - Паскаль (и Delphi тоже, естественно) - это слон в посудной лавке!!!



полная версия страницы