OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Вторник, 23 Апрель, 2024 09:40

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 9 ] 
Автор Сообщение
СообщениеДобавлено: Суббота, 12 Январь, 2008 21:17 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Очередная конкретная история.

Вчера попросили позаниматься к сессии с человеком, который учится на первом курсе МЭСИ "Прикладная информатика в менеджменте".

Сегодня было первое занятие (оно же в силу обстоятельств и последнее). Человек оказался умным, всё "рубящим на лету", в хорошем ладу с математикой.
Касательно программирования я сразу извлёк из него следующие данные:
Чему учили? - "Паскалю". Как учили? - "Рассказали всё до массивов и давали много примеров. Нужно подготовиться к решению таких примеров на экзамене, на бумажке". Кто учил? - "У, матёрый такой, знаток, он аспирантуру МГУ закончил...".

Ладно, говорю, некоторую базу я тебе дам на втором занятии, а сейчас попробуем начать от твоих примеров. И поехали мы...
"Примеры" - это презентация с некоторым количеством разобранных задач (то, что было на парах) и уйма аналогичных для сам. решения.
ВСЕ задачи сугубо одного характера: "Дана матрица (m, n)... Исключить все строки и столбцов, в которых... OR Посчитать число строк и столбцов, в которых.... Обработку матрицы оформить в виде процедуры, вводящей-выводящей данные только через свои параметры". То ли алгоритмизация в прикладных задачах ассоциируется у людей исключительно с "матрицедроблением"... :-)

Смотрим разбор решений. Сразу до боли знакомые вложенные for с break. "Да, нам советуют так, и мне самому break нравится, изящный такой оператор". Памятуя об ограниченности времени и конкретной задаче здачи экзамена сначала разбираю с ним логику данных решений пары задач, после чего "а... дошло...". Пробуем решить то же сами декомпозицией и пошаговым уточнением. Постоянно порываемся вместо неспешного думания сорваться на "ну, тут строим for и потом ещё внутри...". Ну, да ладно.
Далее просит объяснить алгоритм определения простоты числа. "Не понимаю" - говорит. "И почему неравенства присваиваются типу Boolean - тоже". Вижу в презентации следуюший "чистейшей прелести чистейший образец":
Код:
procedure Prost (x: Word): Boolean;
  var z: Word;
begin
  Prost := x > 1;
  for z := 2 to x div 2 do
    if x div z = 0 then Prost := false
end;

Думая про себя "хоть бы, блин, break поставил уж тогда, оптимизатор хренов", говорю: "Нет, дорогой, без линейного поиска мы далеко не уедем". Объясняю саму схему и строим определитель простоты. "Ну да, тут всё ясно". Делаю упор на связь линейного поиска и полного прохода с кванторами существования и всеобщности и на то, что условия типа "все числа в строке простые" можно обращать на противоположный квантор "в строке не найдено составного числа". Принцип схватывается "с лёту".

Переходим к разбору очередной задачи. Дана всё та же матрица. Посчитать число пар симметричных диагоналей, параллельных главной, элементы которых равны между собой. Глядя на приводимое в презентации решение, медленно выпадаю в осадок по стулу. Сначала выполняется какая-то трансформация матрицы (без поллитры не разберёшь какая) - то ли поворот на 45 градусов :-) Только потом пишется здоровая процедура подсчёта, с несколькими последовательными for-for блоками. Видимо, задача приводилась к такому виду, чтобы было можно применить вложенные for :-)
Написали быстренько решение строчек в 15, с линейным поиском в i-й паре диагоналей несовпадающих элементов (офрмленным в отдельную функцию ComplemDiags(i)) и полным проходом с подсчётом по парам диагоналей. Порадовались и разошлись :-)

Ужос. Неужели даже в солидных ВУЗах подобные случаи ближе к всеобщности, а обратные - к существованию :(


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 13 Январь, 2008 00:01 

Зарегистрирован: Среда, 28 Февраль, 2007 00:08
Сообщения: 142
Откуда: Нижний Новгород
А можно выложить решение из презентации?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 13 Январь, 2008 00:09 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Увы, ничего уже нету :( Работали с человеком на его ноутбуке.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Среда, 16 Январь, 2008 01:57 
Администратор

Зарегистрирован: Вторник, 15 Ноябрь, 2005 01:14
Сообщения: 4695
Откуда: Россия, Орёл
Порезал я вас, товарищи. Идите туда - viewtopic.php?f=29&t=830


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Среда, 16 Январь, 2008 13:46 

Зарегистрирован: Пятница, 29 Июнь, 2007 12:16
Сообщения: 98
У меня сестра вот на манагера учится, я помню как-то на первом курсе писал я ей програму строчек на 15.... так она потом за мной все структурирование кода стирала... говорит - не одобряют...


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Среда, 16 Январь, 2008 17:02 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Прямо хоть бы в госстандарте совершенно чётко прописали, КАК должен преподаваться базовый курс программирования (обязательный набор знаний, умений, навыков). Чтоб тот, кто не соответствует, шёл в управдомы... (главное, щоб не в ИТ-манагеры :-) ).


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Среда, 16 Январь, 2008 18:06 

Зарегистрирован: Понедельник, 28 Ноябрь, 2005 10:28
Сообщения: 1428
Ага. Как пропишут - мало не покажецца.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Среда, 16 Январь, 2008 20:05 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Да, хорошо подумавши... Даже страшновато стало :-) Мы уж лучше и сами как-нибудь..


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Среда, 16 Январь, 2008 20:52 

Зарегистрирован: Четверг, 01 Июнь, 2006 11:14
Сообщения: 240
Илья Ермаков писал(а):
Чтоб тот, кто не соответствует, шёл в управдомы...

с текущими зарплатами преподавателей думаю большой очереди "соответствующих" в вузы не будет...


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 9 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2024, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB