Re[10]: Статья Н.Вирта: взгляд из Зазеркалья
От: mefrill Россия  
Дата: 04.02.06 05:53
Оценка:
Здравствуйте, zitz, Вы писали:

Z>В моем потоке небыло ниодно человека, который не понял операции присваивания в си. Может матиматиков это и сбивает, но обычный человек когда смотрит на = не задумывается о "симметричности"!


Не знаю как там было в потоке, в моем, я имею ввиду. Но вот я имею некоторый опвт преподавания языка си++. Причем не только в учебном учереждении, но и в виде частных уроков. Для тех, у кого это был первый язык программирования, знак = для обозначения операции присваивания вызывал затруднения. Затем, конечно, трудно было понять, что у действия может быть значение, т.е. что операция в языке рассматривается также и как выражение. Но первый барьер — это понимания смысла операции присваивания. И в преодолении этого барьера символ = не помогает. Не понимаю, это ведь очевидно, о чем здесь спорить? Если в китайском, напрмиер, стол будет называться стулом, то это точно не поможет в постижении сужности стола.

Z>В той же матиматике есть вещи которые очень смущают, например квадрат — это четырехугольник, но читырехугольник не есть квадрат... Вот я над чем парился в детстве!


Так это все паряться. Дело в том, что принятая в наших учебниках 70-80 годов классификация четырехугольников весьма отличается от евклидовской и ринципиально не верна. Правильное название для прямоугольника — это разносторонник, так в оригинале было у Евклида. Т.е. правильно классификацию следует вести по сторонам, а не по углам — отсюда и вся путаница.

Хотя любому из Вас это ясно, от того что вы это знаете!!! Я это понял и осознал, как понял и осознал знак = в си и := в паскале.

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

Z>Подобные знаки (=, -->, # и т.п.) используются в разных науках и там не вызывают затруднений, хотя и обозначают отличные от матиматических действия...

Z>Если вы спрашиваете о затруднениях, то это от того что язык начинают изучать с матиматических операций, по этому он с самого начала вызывает такие ассоциации...
Z>Например я не понимал как заставить бейсик вывести ответ и считал что если написать
Z>
Z>6 + 7 =
Z>

Z>то он мне его посчитает... Когда начинаешь понимать программирование, такие проблемы просто отваливаются... Понял как все происходит и стало все равно, что там стоит за присваеванием = или :=

Ну вот тпичная иллюстрация проблемы. Знак = интуитивно понимается как равенство двух выражений, а не как операция присваивания. Отсюда и все эти проблемы с "6+7=".

Z>А Вирт давит на то, что ребенок не пинимает, что (уж простите формула не матиматики, но жизни )

Z>
Z>Маша + Петя = Любовь
Z>

Z>и
Z>
Z>Любовь =  Маша + Петя
Z>

Z>не одно и тоже, ну так это по моему очевидно...

Здесь ничего не могу сказать, статью Вирта не читал. Я вообще про другое — про трудности изучения.

Z>Короче суть в следующем: почитайте, в топике никто не жаловался на то что он не понял знак присваевания в си, т.е. проблем на этом этапе НЕТ! Проблема в том, что программирование != (или <>) матиматика и обучать ему как матиматике не стоит!


Ну да, еще бы в этом топике учавствовали те, кто не понимает смысл операции = ! Тогда какая же это философия программирования?

Z>И еще, ничего не мешает Вам начать обучение с (интуитивно понятного и легкого в изучении, по мнению Вирта) Паскаля, а потом перейти на си, на начальном этапе прокатит — я сам так перескочил (ну это конечно скорее всего от того, что о си я узнал познее).


Вот-вот, и получается, что для изучения Паскаль гораздо понятнее.

Главное то, суть познать! Как хотите здесь плюйтесь, но чтобы получить 6 + 7 = 13, нужно
Z>
Z>write(6+7);
Z>

Z>ну а это НИКАК с матиматикой не согласуется

Почему не согласуется? Вполне себе нормальная композиция двух функций: write и +.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.