Javascript-форум (https://javascript.ru/forum/)
-   Оффтопик (https://javascript.ru/forum/offtopic/)
-   -   Pascal...Pascal... (https://javascript.ru/forum/offtopic/26292-pascal-pascal.html)

9xakep 03.03.2012 16:35

Pascal...Pascal...
 
Вложений: 1
Где вообще может использоваться этот язык? И главный вопрос: почему его до чих пор преподают в школе!? :blink:
И еще, как бы вы сделали такую задачу:
Ввод: 1812
Вывод: одна тысяча восемьсот двенадцать
Кому интересно мое решение ниже..

Gozar 03.03.2012 16:39

Цитата:

Сообщение от 9xakep (Сообщение 161110)
Где вообще может использоваться этот язык? И главный вопрос: почему его до чих пор преподают в школе!?

Потому что:
Цитата:

Сообщение от http://www.pascal7.ru/
Изначально язык Паскаль задумывался как учебный язык для обучения студентов навыкам программирования. Вирт сознательно пошел на заведомое ограничение возможностей языка... читать далее


9xakep 03.03.2012 16:44

Gozar,
Ок, не знал

monolithed 03.03.2012 17:57

Цитата:

Сообщение от 9xakep
И главный вопрос: почему его до чих пор преподают в школе!?

Не С/С++ же им преподавать ;)
А вообще преподавать устаревший материал - специфика всего российского образования.

micscr 03.03.2012 18:03

Паскаль он тоже не стоит на месте.
Из вики:
Цитата:

Delphi - диалект Object Pascal.
Object Pascal — результат развития языка Турбо Паскаль, который, в свою очередь, развился из языка Паскаль

monolithed 03.03.2012 18:07

Цитата:

Сообщение от micscr
Паскаль он тоже не стоит на месте.

Object Pascal появился в 86г.
Однако это не так важно, главное то, что в профессиональной среде разработки ПО этот язык не востребован, а следовательно преподавать его нет смысла.

9xakep 03.03.2012 18:45

Цитата:

Сообщение от monolithed (Сообщение 161130)
Не С/С++ же им преподавать ;)
А вообще преподавать устаревший материал - специфика всего российского образования.

Ну да) Но все же не язык, которому больше 30 лет:-?

Kolyaj 03.03.2012 18:56

Цитата:

Сообщение от monolithed
А вообще преподавать устаревший материал - специфика всего российского образования.

Цитата:

Сообщение от monolithed
Однако это не так важно, главное то, что в профессиональной среде разработки ПО этот язык не востребован, а следовательно преподавать его нет смысла.

Ещё раз
Цитата:

Сообщение от Gozar
Изначально язык Паскаль задумывался как учебный язык для обучения студентов навыкам программирования. Вирт сознательно пошел на заведомое ограничение возможностей языка..

Это изначально был невостребованный язык, создаваемый для обучения. И хорошо, что он перестал быть востребованным, пусть остаётся для обучения.

В школе и/или в университете нет и не должно быть цели подготовить вас к работе в какой-то конкретной конторке, есть цель научить программировать. Если умеешь программировать, новый язык выучить не проблема.

FINoM 03.03.2012 22:13

Цитата:

Сообщение от monolithed
Не С/С++ же им преподавать

А почему? Да, это несколько сложнее, но смысла от этого больше в бесконечность раз.

B@rmaley.e><e 03.03.2012 22:58

Цитата:

Сообщение от FINoM
смысла от этого больше

Какого смысла? Зачем среднему школьнику Си (или, тем более, C++ и ООП)?

FINoM 03.03.2012 23:08

Цитата:

Сообщение от B@rmaley.e><e
Какого смысла? Зачем среднему школьнику Си (или, тем более, C++ и ООП)?

А затем, что его можно применить. А с++ и ооп можно потом доизучить, особенно учитывая, что любой си код является валидным си++ кодом. А паскаль? А что паскаль? Говно паскаль. Его никак не применишь, на нем ничего серьезного не напишешь, просто бессмысленно потраченное время.

9xakep 03.03.2012 23:10

Цитата:

Сообщение от FINoM (Сообщение 161198)
А почему? Да, это несколько сложнее, но смысла от этого больше в бесконечность раз.

У меня есть хорошая знакомая, у которой великолепные мозги в плане русского, литературы(гуманитарные науки) но...физика, математика и т.п. ей надо объяснять, не все конечно, но все же(и таких у меня большая часть класса). Так что ты уверен что все осилят язык, который даже профессионалы, не стесняясь называют сложным?
==========
Еще такой вопрос:
Недавно был в спортмастере увидел на их компьютере до боли знакомое оформление среды паскаля, и мысль: уж не используют все-таки паскаль до сих пор? Просто вправду все было как в паскале(в плане оформления(среды разработки))

B@rmaley.e><e 03.03.2012 23:25

Цитата:

Сообщение от FINoM
А затем, что его можно применить.

Скажу по секрету: Pascal тоже можно применить. Он даже полный по Тьюрингу.

Цитата:

Сообщение от FINoM
го никак не применишь, на нем ничего серьезного не напишешь, просто бессмысленно потраченное время.

Что серьёзного Вы предлагаете писать школьнику? IDE для Scala? Приведите какие-нибудь аргументы в пользу того, что ничего серьёзного (знать бы ещё, что под этим подразумевается) на нём не написать.
И ещё: цель обучения программирования в школе — не научить человека писать программы, а научить его думать. Декомпозировать задачи до уровня, понятного машине. Составлять алгоритмы, т.е. как-то формализовать свои мысли. Именно поэтому программирование, которое, казалось бы, совсем не нужно какому-нибудь филологу или юристу, будет полезно и им в том числе.

9xakep 03.03.2012 23:30

B@rmaley.e><e,
как выразился мой знакомый: я этим занимаюсь(программировани м) только чтобы сделать хоть какую-то цепочку, как знаешь мысли у меня все облаках.

FINoM 04.03.2012 00:47

Цитата:

Сообщение от B@rmaley.e><e
Приведите какие-нибудь аргументы в пользу того, что ничего серьёзного (знать бы ещё, что под этим подразумевается) на нём не написать.

Ни одно SDK не работает с паскалем за редким, неизвестным мне, исключением. А то, что можно написать консольное приложение или простейшее окошко с кнопочками... Ну, как бы, Окей. Полнота по Тьюрингу мне ни о чем не говорит, когда применений языку чуть больше чем нуль. А сси — это тебе и QT и еще куча других разных вещей (лень гуглить).
Знаешь си, си++: можешь делать всё. Знаешь паскаль: знаешь паскаль.

devote 04.03.2012 01:06

Цитата:

Сообщение от FINoM
Ни одно SDK не работает с паскалем за редким, неизвестным мне, исключением. А то, что можно написать консольное приложение или простейшее окошко с кнопочками... Ну, как бы, Окей. Полнота по Тьюрингу мне ни о чем не говорит, когда применений языку чуть больше чем нуль. А сси — это тебе и QT и еще куча других разных вещей (лень гуглить).
Знаешь си, си++: можешь делать всё. Знаешь паскаль: знаешь паскаль.

Ой не заливай а. Прям уж ничего не написать. Не мало прог на нем написано, тот же скайп, таже аська, тот же тотал командер и т.д. и т.п. Если мозги есть то хорошую прогу на любом языке можно написать при желании.

FINoM 04.03.2012 01:32

Цитата:

Сообщение от devote
Не мало прог на нем написано, тот же скайп, таже аська, тот же тотал командер и т.д. и т.п.

Скайп на паскале? Пруф?
Цитата:

Сообщение от devote
Если мозги есть то хорошую прогу на любом языке можно написать при желании.

Ага, есть еще и пролог. Тоже полный по тьюрингу. Только смысла от этого тоже ноль (хотя, вру, здесь можно прослыть «ненормальным» программис том).

B@rmaley.e><e 04.03.2012 01:34

Цитата:

Сообщение от FINoM
Ни одно SDK не работает с паскалем за редким

Какого SDK? Зачем школьнику SDK? Я ещё раз повторяю: в школе не стоит задачи научить ученика писать программы под Android, стоит задача научить думать. Зачем для этого какой-то SDK?
Цитата:

Сообщение от FINoM
Скайп на паскале? Пруф?

Не на паскале, но на дельфи (авторитетный источник искать было лень).

FINoM 04.03.2012 01:42

Цитата:

Сообщение от B@rmaley.e><e
Какого SDK? Зачем школьнику SDK?

На этапе обучения не за чем. Но, вот, если человек захочет продолжать разбираться в программировании, ему нужно, по большому счету, прочесть доку к тому или иному набору инструментов. си — язык «на вырост».

У меня у самого первым языком был паскаль. Мне он очень нравился, я писал игры, утилитки, еще какие-то мелочи. На первой же лекции по си, я очень разочаровался в паскале из-за того, что многие вещи на си писать намного проще, несмотря на общую сложность языка (хотя какой-нибудь пролог-подобной сложности я не вижу).

B@rmaley.e><e 04.03.2012 02:06

Цитата:

Сообщение от FINoM
Но, вот, если человек захочет продолжать разбираться в программировании, ему нужно, по большому счету, прочесть доку к тому или иному набору инструментов.

Давайте тогда и многомерный и комплексный математический анализы добавим в школьную программу. А что — в основе та же теория пределов, а желающие заниматься математикой будут иметь хорошую базу. И неважно, что никто ничего не поймёт, 90% учеников это никогда не пригодится, а тех, кто "помёт" всё равно придётся переучивать.

micscr 04.03.2012 10:29

Цитата:

Сообщение от monolithed (Сообщение 161134)
Object Pascal появился в 86г.
Однако это не так важно, главное то, что в профессиональной среде разработки ПО этот язык не востребован, а следовательно преподавать его нет смысла.

Ну не знаю с чего ты это взял. Delphi весьма востребован, можно по вакансиям глянуть. На том же С++ Builder работать примерно также как на делфи, только синтаксис Сишный, но он от этого ни чуть не круче.
А в теме наверное вообще говорят действительно про какой то школьный паскаль...

Раед 04.03.2012 12:24

Цитата:

Сообщение от monolithed
Не С/С++ же им преподавать

это почему же? было бы интересно

Раед 04.03.2012 12:32

Цитата:

Сообщение от micscr
Delphi весьма востребован,

ну так и преподавали бы Delphi

float 04.03.2012 12:40

Цитата:

Где вообще может использоваться этот язык? И главный вопрос: почему его до чих пор преподают в школе!?
Я вот в школьные годы не задавался такими вопросами. Вместо этого фигачил игрульки на нём:)

monolithed 04.03.2012 12:42

В средней школе, математики за глаза хватает, а курс программирования если и нужен то только матлицеях, в которых и так преподают Pascal, Visual Basic, JavaScript иногда С/С++ и C#.
Однако само обучение как заметил B@rmaley.e><e сводится не к тому чтобы научить программировать (хотя это тоже приветствуется), а познакомить с алгоритмами.
Цитата:

Сообщение от Раед
это почему же? было бы интересно

Цитата:

Сообщение от FINoM
с++ и ооп можно потом доизучить

С++ - один их самых сложных языков - для неокрепших мозгов прямой путь в психбольницу :)
Цитата:

Сообщение от FINoM
особенно учитывая, что любой си код является валидным си++ кодом.

Не любой

Seva1986 04.03.2012 13:31

Да вообще в школе нужно ассм преподавать и в дополнение для лучшего понимания, компьютерную электронику.:lol:

Gozar 04.03.2012 13:40

Экономику и юриспруденцию нужно преподавать.

Раед 04.03.2012 14:11

Цитата:

Сообщение от monolithed
С++ - один их самых сложных языков - для неокрепших мозгов прямой путь в психбольницу

тем не менее, по-моему, один из самых широко употребляемых нормальнокомпилируемых(Java к таким не относится)

Раед 04.03.2012 14:12

Цитата:

Сообщение от Seva1986
Да вообще в школе нужно ассм преподавать

Не, можно начать с Brainfack'а

micscr 04.03.2012 15:30

Цитата:

Сообщение от Раед (Сообщение 161302)
ну так и преподавали бы Delphi

ну так купи на каждый школьный копм Delphi за тыщу у.е. и будут преподавать, твой же папа - олигарх?

GuardCat 04.03.2012 17:39

А мне кажется, Python лучше подошёл бы для образовательных целей. И привычки полезные прививает (ну с отступами, как минимум), и востребован. Да и переключиться будет на другой язык не сложнее, чем с Pascal. Но лучше Pascal, чем QBasic. Нас в школе учили два года (97 -- 98 г.г.) Quick Basic'у, а потом пытались научить Turbo Pascal. Лично я его тогда (Pascal) возненавидел за непохожесть на первый язык программирования в моей жизни. Ну запечатление и всё такое.

monolithed 04.03.2012 17:52

Цитата:

Сообщение от GuardCat
А мне кажется, Python лучше подошёл бы для образовательных целей.

Он очень сильно запутан, чтобы его преподавать в школе.
Представьте что будет со школьником, если он увидеть такую конструкцию:
[i**j for i, j in enumerate([1]*10) if i&j][::-1] #[9, 7, 5, 3, 1]

Можно конечно, сделать проще:
[i for i in range(10) if i%2][::-1] #[9, 7, 5, 3, 1]

Но суть это не меняет
Цитата:

Сообщение от GuardCat
И привычки полезные прививает (ну с отступами, как минимум)

И вместе с этим не ставить ;, забивать на совместимость между версиям, не проверять типы входных аргументов...

Seva1986 04.03.2012 18:11

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

Также считаю что ни в коем случае первым не должен быть ООП язык, так как хорошее понимание ООП предполагает отличное понимание функционально процедурного кода. что паскаль даст вполне. и более того считаю что перед ООП должно быть достаточно хорошее понимание ассемблера и внутреннее понимание устройства процессора и смежных тем. так как это залог хорошего программирования как процедурного так и объектно ориентированного подхода. ИМХО.

Раед 04.03.2012 18:47

Цитата:

Сообщение от Seva1986
и более того считаю что перед ООП должно быть достаточно хорошее понимание ассемблера и внутреннее понимание устройства процессора

зачем??? как ООП связано с внутренним устройством процессора?

Раед 04.03.2012 19:05

Цитата:

Сообщение от micscr
ну так купи на каждый школьный копм Delphi за тыщу у.е.

неужели нет других компиляторов под Object Pascal

GuardCat 04.03.2012 22:21

monolithed, с питоном я знаком только по симбиановскому интерпретатору и у меня осталось впечатление простоты правильности и лёгкости. Видимо обманчивое. Слушайте, а эти ваши конструкции, это нормально для питона? Просто в js тоже можно сделать код нечитаемым, но это не рекомендуется... Не из той же серии ваши примеры? Если нет, похоже, паскаль рулит реально.

monolithed 04.03.2012 22:30

Цитата:

Сообщение от GuardCat
Слушайте, а эти ваши конструкции, это нормально для питона?

Именно использование этих конструкций является наиболее эффективным способом организации кода в Python, а также наиболее оптимизированы в плане вычислительной сложности.
Иными словами такое представление в профессиональных приложениях применяется повсеместно.
Цитата:

Сообщение от GuardCat
Просто в js тоже можно сделать код нечитаемым, но это не рекомендуется...

На самом деле этот код кристально прозрачен для разработчиков на Python. В ES6 кстати такое представление тоже станет возможно. В FF уже сейчас.

Seva1986 05.03.2012 00:52

Цитата:

Сообщение от Раед
зачем??? как ООП связано с внутренним устройством процессора?

на прямую и не только ооп а всё програмирование, если программер не понимает толком что такое функция или процедура и как оно вызывается и не въезжает что такое обратный и дополнительный код да и всё остальное.

и повторюсь
Цитата:

Сообщение от Seva1986
хорошее понимание ООП предполагает отличное понимание функционально процедурного кода.

а оно без понимания внутреннего устройства не возможно.

x-yuri 12.03.2012 10:30

smalltalk, не? Тоже как бы в частности для обучения создавался

Цитата:

Сообщение от Seva1986
и не въезжает что такое обратный и дополнительный код да и всё остальное.

ну-ну...


Часовой пояс GMT +3, время: 16:21.