Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2004.10.31;
Скачать: [xml.tar.bz2];

Вниз

Задачи по программированию в среде Delphi.   Найти похожие ветки 

 
31512 ©   (2004-10-07 09:26) [0]

Какие задачи можно придумать обучая студентов программированию на Delphi? У меня есть скудные идеи, но сформировать законченную концепцию не получается. Могу изложить. Обсудим?


 
КаПиБаРа ©   (2004-10-07 09:34) [1]

31512 ©   (07.10.04 9:26)
Излакай.
Блин что то я часто стал жать не на те буквы. Наверно алфавит забывать начал :))


 
Jeer ©   (2004-10-07 09:44) [2]

Это что ?
"новый" педагог ?


 
Александр Иванов ©   (2004-10-07 09:48) [3]

Обсудим


 
31512 ©   (2004-10-07 09:51) [4]


> КаПиБаРа ©   (07.10.04 09:34) [1]

1. Поскольку Delphi это один из возможных инструментов (сред разработки) создания приложений под Win32 (пока ограничимся этим), то мне кажется возможным выделить следующие тематические области:
    1) Общее программирование.
       Здесь главным образом алгоритмы всякие, сортировки и т.д.
       Этих задач море. Главное разобрать их, отсортировать по
       порядку изучения.
    2) Общее "программирование" именно в Delphi, пока без ООП.
       Грамматика и лексика языка. "Культура" программирования.
    3) ООП
       Здесь рассматривается объектная модель языка.
    4) WinAPI в Delphi.
       ???
Базы данных выбрасываем сразу, поскольку это узкая полоска. Предтечей ей должен быть курс "Базы данных".

Думаю, я изложил вполне очевидные вещи, но в своём понимании. Пока не могу ничего добавить.


 
Александр Иванов ©   (2004-10-07 10:11) [5]

1. А какой уровень у обучаемых? Т.е. знают ли они основы программирования.
2. Знают ли они простые алгоритмы (сортировка, поиск, и т.д.)
3. Работали ли с Дельфи?


 
КаПиБаРа ©   (2004-10-07 10:25) [6]

31512 ©   (07.10.04 9:51) [4]
Начнем с этого:
1. Какова цель обучения? Какими знаниями умениями должен обладать специалист прошедший обучение?
2. Какими знаниями должен обладать специалист до начала обучения?


 
Jeer ©   (2004-10-07 10:35) [7]

Прочитай и подумай.
Вирт
http://www.inr.ac.ru/~info21/greetings/wirth_doklad_rus.htm#progkonstrmyshl
Наследие Ершова
http://ershov.iis.nsk.su/archive/eaindex.asp?lang=1
http://ershov.iis.nsk.su/russian/second_literacy/article.html

Н.К. Верещагин, А.Шень. Лекции по математической логике и теории алгоритмов
А.Шень. Программирование: теоремы и задачи.
http://www.mccme.ru/free-books/

http://www.pspu.ac.ru/mirrors/computer-science/


 
Igorek ©   (2004-10-07 10:47) [8]


> Jeer ©   (07.10.04 10:35) [7]

Млин были б здесь оценки, самую высшую бы поставил.


 
КаПиБаРа ©   (2004-10-07 11:07) [9]

Jeer ©   (07.10.04 10:35) [7]
Вирт
http://www.inr.ac.ru/~info21/greetings/wirth_doklad_rus.htm#progkonstrmyshl


Однако наследники Паскаля, существенно его превосходившие, Модула-2 и Оберон, не получили должного внимания среди преподавателей, и сами пали перед лицом самого недостойного из соперников — C. Самого недостойного, т.к. в этом языке были нарушены все открытые к тому времени принципы серьезного программирования. Он запутывает студентов, допуская разный смысл для x = y и y = x и принуждая всех писать x = = y вместо обычного x = y. Только за одни эти пороки он заслуживает изгнания из учреждений образования. Однако сей уродливый синтаксис был целиком воспроизведен в языке Java, принятие которого академическим сообществом произошло по меньшей мере отчасти благодаря этой преемственности.

Крута :)))


 
vecna ©   (2004-10-07 11:19) [10]

моя любимая:
вводим с клавиатуры последовательность чисел (длина последовательности любая). Вывести ее в обратном порядке не прибегая к использованию массива.

правда, это скорее задача на придумывание алгоритма, чем на _дельфи_. и чтоб соблазна не было (например TMemo.Lines) лучше вообще на паскале писать.

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


 
Игорь Шевченко ©   (2004-10-07 11:19) [11]


> Он запутывает студентов, допуская разный смысл для x = y
> и y = x


Эт как ?


 
Jeer ©   (2004-10-07 11:42) [12]

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

Еще:)

Взрыв в 1996 г. ракеты-носителя Ариан-5 стоимостью около 500 миллионов долларов через 40 секунд после старта произошел, как выяснилось, из-за сбоя программного обеспечения: одна из вспомогательных подпрограмм пыталась преобразовать длинное целое значение в короткое без проверки величины значения. Компиляторы Оберона по умолчанию отказываются компилировать такие программы, считая их ошибочными, тем самым "тыкая носом" проектировщика в точки потенциальных сбоев.

http://www.uni-vologda.ac.ru/cs/syntax/graph.gif


 
Игорь Шевченко ©   (2004-10-07 11:47) [13]


> Интуитивно, начинающие воспринимают = как операцию сравнения,
> а не присвоения.


Вот же странно. Я не воспринимал, коллеги тоже. Может, в школьные программы по арифметике внести исправления, задавая операцию присваивания через := ?


 
iZEN ©   (2004-10-07 11:57) [14]

Задачка: подсчитать частоту лексем (слов) в тексте.

import java.util.*;

// Prints a frequency table of the words on the command line
public class Frequency {
 public static void main(String[] args) {
    Map<String, Integer> m = new TreeMap<String, Integer>();
    for (String word : args) {
        Integer freq = m.get(word);
        m.put(word, (freq == null ? 1 : freq + 1));
    }
    System.out.println(m);
 }
}

Вывод:
java Frequency if it is to be it is up to me to do the watusi
{be=1, do=1, if=1, is=2, it=2, me=1, the=1, to=3, up=1, watusi=1}

Попробуйте сделать то же самое на Pascal.


 
Jeer ©   (2004-10-07 11:59) [15]

Вы со мной спорите или с Виртом ?
Со мной не нужно - у меня примеров со студентами хватит на сотню шевченок.:)


 
Игорь Шевченко ©   (2004-10-07 12:00) [16]


> Попробуйте сделать то же самое на Pascal.


2 TStringList c Sorted.true и Duplicates = dupError :)


 
Игорь Шевченко ©   (2004-10-07 12:04) [17]

Удалено модератором
Примечание: Дубль


 
Игорь Шевченко ©   (2004-10-07 12:06) [18]

Jeer ©   (07.10.04 11:59) [15]


> Вы со мной спорите или с Виртом ?


В посте [12] указано ваше авторство :))
Если же это высказывание Вирта, то могу и ему посоветовать учебник по афирметике открыть :)


 
iZEN ©   (2004-10-07 12:17) [19]

http://www.uni-vologda.ac.ru/cs/syntax/graph.gif
Ява - это вообще отдельная ветка, которая ближе к Симула и Смолтоку, но никак не к Си/Си++ (главное ведь семантика).


 
iZEN ©   (2004-10-07 12:40) [20]

http://www.levenez.com/lang/history.html


 
Jeer ©   (2004-10-07 13:04) [21]

Игорь Шевченко ©   (07.10.04 12:06) [18]
Вы и так все прекрасно поняли, но ваша черта "нетолерантность" разрешила Вам не пройти мимо.

iZEN ©   (07.10.04 12:17) [19]
Согласен, тренд от истоков С некорректен.
Но речь шла о кол-ве лексем.


 
Игорь Шевченко ©   (2004-10-07 13:07) [22]

Jeer ©   (07.10.04 13:04) [21]

К сожалению я, наверное, не так понял.


 
Ega23 ©   (2004-10-07 13:15) [23]

1. На алгоритмизацию и понимание программирования - перевод числа из К-той системы счисления в N-тую. Там же студенты с IDE в общих чертах ознакомятся.
2. Написание Калькулятора.


 
Agent13 ©   (2004-10-07 13:29) [24]


> Вот же странно. Я не воспринимал, коллеги тоже. Может, в
> школьные программы по арифметике внести исправления, задавая
> операцию присваивания через := ?

Насколько я понимаю, в арифметике нету присваивания, всё уже присвоено до нас :) Нам остаётся только записывать РАВЕНСТВА. Во вском случае выражений а=а+5 в математике не бывает.


 
Игорь Шевченко ©   (2004-10-07 13:31) [25]

Agent13 ©   (07.10.04 13:29) [24]

Спасибо :) Стормозил.


 
Sergey_F ©   (2004-10-07 14:34) [26]


> Jeer ©   (07.10.04 11:42) [12]
> Интуитивно, начинающие воспринимают = как операцию сравнения,
> а не присвоения.
> Нужны усилия для закрепления, что сравнение это ==
> Одна из самых распространенных ошибок среди обучающихся
> подмена
> == на =


C "==", у меня проблем не возникало. Была другая сложность:
В Паскале я обычно писал "=", а на ":=". Потом смотрел на строчку, не понимая, чго он ругается.


 
31512 ©   (2004-10-07 14:43) [27]


> Jeer ©   (07.10.04 10:35) [7]

За ссылки большое спасибо. Вот, сижу, изучаю детально.

Для всех.
по поводу

> Александр Иванов ©   (07.10.04 10:11) [5]

Студенты 1 курс. Для 80% из них компьютер = телевизор с кнопками (будь не ладен этот ЕГ). Кто-то немного знаком с Pascal, кто-то С++ изучать пытался. В голове каша. У знаний по математике очень высокая "энтропия". Многие не знают что такое факториал.
Начинал я вообще с информации. Прошли представление чисел в разнах системах исчисления и переводы из одной системы в другую.
Потом кодирование, декодирование - понятие о теоремах Шенона, международные системы байтового кодирования. Элементы теории графов. Подошли к понятию алгоритма(три подхода: теория конеч. и бесконеч. автоматов; терия вычислимых функций; лябда-исчиление Черча), их графическое представление. Машину Поста начали изучать. По пути учим мат. аппарат... Очень много девчёнок. Сними вообще тяжело работать в этом отношении. Короче масса очень сырого материала. Поэтому и обратился сюда.


 
КаПиБаРа ©   (2004-10-07 14:47) [28]

31512 ©   (07.10.04 14:43) [27]
Студенты 1 курс

Факультет, специальность?

>  теоремах Шенона...


> теория конеч. и бесконеч. автоматов; терия вычислимых
> функций; лябда-исчиление Черча), их графическое
> представление. Машину Поста


Стока непонятных слов. Представляю как вас любят студенты.


 
КаПиБаРа ©   (2004-10-07 14:49) [29]

1. Какова цель обучения? Какими знаниями умениями должен обладать специалист прошедший обучение?


 
31512 ©   (2004-10-07 14:55) [30]


> КаПиБаРа ©   (07.10.04 14:47) [28]

А вот факультет: ФИВТ - факультет информатики и вычислительной техники. Специальность  - издательские системы.


 
Игорь Шевченко ©   (2004-10-07 15:00) [31]

31512 ©   (07.10.04 14:55) [30]


> Специальность  - издательские системы.



> терия вычислимых функций; лябда-исчиление Черча), их графическое
> представление


Для "издательских систем" лучший способ отбить охоту к обучению.


 
31512 ©   (2004-10-07 15:02) [32]


> КаПиБаРа ©   (07.10.04 14:49) [29]

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


 
31512 ©   (2004-10-07 15:03) [33]


> Игорь Шевченко ©   (07.10.04 15:00) [31]

Давай с этого места поподробнее.


 
КаПиБаРа ©   (2004-10-07 15:04) [34]

31512 ©   (07.10.04 14:55) [30]
WinApi тогда вычеркнуть. Они скорее всего на Mac"ах будут работать. :)

Исходите из потребности знаний вашего предмета для данной специальности.

PS: Меня "убивала" преподаватель политологии, которая считала что для энергетиков ее предмет самый наиважнейший :)


 
Leksiy ©   (2004-10-07 15:10) [35]

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


 
Игорь Шевченко ©   (2004-10-07 15:10) [36]

31512 ©   (07.10.04 15:03) [33]


> Давай с этого места поподробнее.


Можно и подробнее - меня тоже когда-то учили программировать в институте, несмотря на то, что большинство знаний я получил самостоятельно. Так вот, при обучении мне всех страшных слов, которые ты написал, не говорили ни разу, и тем не менее, сокурсники программы писали. Даже работающие. Мое IMHO - научить следует умению алгоритмизировать задачу, разбить сложную задачу на совокупность простых и т.д. Без привлечения теории, с практическими примерами. В качестве серьезного задачника могу порекомендовать книгу Чарльза Уэзерелла "Этюды для программистов".

И руководствоваться хорошим правилом - "Любая теория без практики мертва". Ты готов применить

> понятие о теоремах Шенона, международные системы байтового
> кодирования. Элементы теории графов. Подошли к понятию алгоритма(три
> подхода: теория конеч. и бесконеч. автоматов; терия вычислимых
> функций; лябда-исчиление Черча), их графическое представление.
> Машину Поста


К издательским системам ?

Если готов, то удачи и блага во всех начинаниях. Если нет, то выкидывай нафиг все эти слова.


 
31512 ©   (2004-10-07 15:12) [37]


> КаПиБаРа ©   (07.10.04 15:04) [34]


> WinApi тогда вычеркнуть. Они скорее всего на Mac"ах будут
> работать.

WinApi? Возможно. На Mac"ах точно работать не будут. Это я проверил. Да и нет у нас Мас"ов для обучения...

А политологичка твоя абсолютно права. Когда я поработал на энергетиков я сам это понял. Политики они отменные. Причём даже технари.


 
Leksiy ©   (2004-10-07 15:12) [38]

шевченко браво твоя мысль оказалась более глубоко изложена чем моя :)


 
31512 ©   (2004-10-07 15:16) [39]


> Leksiy ©   (07.10.04 15:10) [35]

Вот я и ломаю голову над поиском и придумыванием интересных задач. Программистов из них делать совсем не нужно.


 
Jeer ©   (2004-10-07 15:26) [40]

Leksiy ©   (07.10.04 15:12) [38]
Неудивительно :)

Выкидывать "непонятные" слова ни в коем случае нельзя.
Более того, необходима обязательая привязка к истории вопроса.
Здесь появляются имена, причинно-следственные связи, общемировые стандарты и тп.
Другое дело, ограничить область преподавания минимально необходимым набором дисциплин.
Но это преррогатива даже не преподавателя, а той школы преподавания, которая сложилась в вашем вузе + опыт родственных вузов.
Если еще ничего не сложилось, то надо начинать такое строительство под руководством более опытных педагогов.
Есть межвузовские связи, наверняка, да и напроситься можно к кому-либо.
Возможно, идеализирую, но как сказано у Вирта "Эффективность действия профессионалов должна быть намного выше таковой у любителей".



Страницы: 1 2 вся ветка

Форум: "Потрепаться";
Текущий архив: 2004.10.31;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.56 MB
Время: 0.04 c
1-1097739102
Chris
2004-10-14 11:31
2004.10.31
работа с MSWord через OLE


14-1097258049
GanibalLector
2004-10-08 21:54
2004.10.31
ГИМН КАЗАНТИПА


1-1098255088
BillyJeans
2004-10-20 10:51
2004.10.31
Как отловить окончание изменения TrackBar


1-1098176351
starik30
2004-10-19 12:59
2004.10.31
Обмен между потоками


14-1097259853
DeadMeat
2004-10-08 22:24
2004.10.31
Раз уж дело зашло о старом железе...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский