nextupprevious

Next:Рекомендации преподавателю и студенту
Up:Введение
Previous:Введение


Цели и содержание практикума


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

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

Вместе с тем студенту и преподавателю нужно иметь в виду, что многие из методов и понятий, используемых в индивидуальных заданиях, являются неотъемлемой частью образования современного специалиста, использующего ЭВМ для решения своих задач. Поэтому студенту рекомендуется прочитать весь методический материал главы, включая словарь понятий (используемых в заданиях), прежде чем приступать к решению заданий, формулировки которых находятся в гл. 6. Тематические задачи разбиты на пять разделов:

1) графы и системы дорог,
2) грамматики, языки и автоматы,
3) формулы и программы,
4) геометрия,
5) игры
в соответствии с кругом тех понятий, определения которых составляют соответствующие разделы словаря (гл.  2).

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

В процессе решения каждого задания студент составляет отчет, который включает:
 

Выполнение каждого задания в общем случае включает следующие виды работ:
 
  • анализ условия задачи и выработка подхода к ее решению;
  • пошаговая разработка (на основании выбранного подхода) алгоритма решения и его описание;
  • обоснование алгоритма;
  • выбор и обоснование представления для входных, выходных и промежуточных данных;
  • кодирование алгоритма, т.е. его запись на языке Zonnon;
  • выбор и обоснование набора тестов, на которых будет проверяться программа;
  • отладка программы и демонстрация ее правильной работы на выбранном наборе тестов.

  • Это разбиение условно в том смысле, что фактически некоторые виды работ тесно переплетаются и выполнение их обычно составляет единый процесс. Например, строить набор тестов удобнее одновременно с построением самого алгоритма, а обосновывать правильность работы алгоритма удобно путем детальной демонстрации процесса его построения. Практические рекомендации по выполнению перечисленных работ приведены в гл.3. Здесь даются общие рекомендации по разработке алгоритма, представления данных и выбора тестов, начиная с анализа условия задачи.

    Особенностью индивидуальных заданий является то, что они связаны со сложными структурами данных, с организацией поиска или порождения тех элементов конечного (но, как правило, чрезвычайно большого) множества, которые удовлетворяют определенным ограничениям, и требуют при своем решении анализа алгоритма и его сложности. Поэтому в гл. 4 даются рекомендации по алгоритмическому решению задач, связанных с организацией вычислений на дискретных конечных математических структурах, а в гл. 5 подробно рассматриваются вопросы выбора представления данных.
     

    Next:Рекомендации преподавателю и студенту
    Up:Введение
    Previous:Введение



    © В.Н. Касьянов, Е.В. Касьянова, 2004