Замечания о формулировках заданий

Общее описание



 

Электронный задачник Programming Taskbook предназначен для обуче-

ния программированию на языках Pascal, Visual Basic, C++, C#, Visual Basic

.NET. Он содержит 1000 учебных заданий, охватывающих все основные раз-

делы базового курса программирования: от скалярных типов и управляющих

операторов до сложных структур данных и рекурсивных алгоритмов.

Версия 4.6 задачника Programming Taskbook реализована для следу-

ющих сред: Borland Delphi 3.0–7.0 и 2006, в частности, Turbo Delphi 2006

for Windows, Microsoft Visual Basic 5.0 и 6.0, Borland C++Builder 4.0 и 5.0,

Microsoft Visual C++ 6.0, Microsoft Visual Studio .NET 2003 и 2005, а также

Visual Studio .NET 2005 Express Edition (языки Visual C++, Visual Basic .NET

и Visual C# .NET). Кроме того, задачник включен в учебную систему про-

граммирования Pascal ABC (автор доц. С. С. Михалкович), образуя единый

программный комплекс Pascal ABC & Programming Taskbook.

Задачник Programming Taskbook предоставляет учащимся следующие

возможности:

• отображение на экране текста задания и связанных с ним данных;

• демонстрация правильных результатов для каждого задания;

• предоставление исходных данных программе учащегося;

• дополнительный контроль за операциями ввода-вывода;

• проверка правильности результатов, полученных программой;

• запись в особый файл результатов информации о каждом тестовом ис-

пытании программы;

• регистрация задания как выполненного после проведения серии успеш-

ных тестовых испытаний программы.

 

Использование электронного задачника существенно ускоряет процесс

выполнения заданий, так как избавляет учащегося от дополнительных усилий

по организации ввода-вывода, что особенно удобно при обработке массивов,

строк, файлов и динамических структур. Предлагая учащемуся готовые исход-

ные данные, задачник акцентирует его внимание на разработке и программной

реализации алгоритма решения заданий, причем разнообразие исходных дан-

ных обеспечивает надежное тестирование предложенного алгоритма.

Задачник содержит следующие группы учебных заданий (в скобках ука-

зано количество заданий для каждой группы):

• Begin — ввод и вывод данных, оператор присваивания (40),



4


М. Э. Абрамян. Электронный задачник Programming Taskbook 4.6

 

 

• Integer — целые числа (30),

• Boolean — логические выражения (40),

• If — условный оператор (30),

• Case — оператор выбора (20),

• For — цикл с параметром (40),

• While — цикл с условием (30),

• Series — последовательности (40),

• Proc — процедуры и функции (60),

• Minmax — минимумы и максимумы (30),

• Array — одномерные массивы (140),

• Matrix — двумерные массивы (100),

• String — символы и строки (70),

• File — двоичные файлы (90),

• Text — текстовые файлы (60),

• Param — составные типы данных в процедурах и функциях (70),

• Recur — рекурсия (30),

• Dynamic — динамические структуры данных (80).

 

PDF-версия задачника Programming Taskbook содержит формулировки


всех учебных заданий. Формулировки отформатированы в соответствии с пе-

чатным вариантом задачника, который приведен в методических указаниях

[1−3] и книгах [4−6].

Задания, помеченные символом «◦», можно выполнять в свободно распро-

страняемом мини-варианте задачника PT4Mini−250. Доступными для выпол-

нения в мини-варианте являются 250 заданий, в том числе все задания групп

Begin, Integer, Boolean, а также 140 избранных заданий из других групп за-

дачника. Следует отметить, что в мини-варианте задачника можно выполнять

все задания, решения которых даются в книгах «Основы программирования

на языке Паскаль», «Практикум по программированию на языке Паскаль»,

и «Практикум по программированию на языках C# и VB .NET». Ниже при-

водится список всех заданий, доступных для выполнения в мини-варианте

PT4Mini−250:

Begin1–Begin40, Integer1–Integer30, Boolean1–Boolean40, If4, If6, If8, If12,

If22, If26, Case2, Case4, Case9–Case10, Case18, For5, For12–For13, For15–For16,

For19–For20, For33, For36, While1–While2, While4, While7, While11–While12,

While22–While23, Series1, Series15–Series17, Series19, Series21, Series30, Proc4,

Proc8, Proc10, Proc20–Proc21, Proc25, Proc40, Minmax1, Minmax4, Minmax6,



Общее описание



 

 

Minmax12, Minmax19, Minmax22, Array4, Array7, Array16, Array32, Array47,

Array54, Array63, Array71, Array79, Array89, Array92, Array108, Array112,

Array116, Array134, Matrix7, Matrix24, Matrix36, Matrix53, Matrix74, Matrix82,

Matrix88, Matrix100, String9–String10, String19, String29, String41, String44,

String63, String70, File2, File10, File25, File27, File41, File43, File48, File50,

File58, File61, File63, File67, File74, Text1, Text4, Text16, Text21, Text24, Text34,

Text38, Text42, Text44, Text57, Param1, Param17, Param30, Param40, Param49,

Param53, Param59–Param61, Recur1, Recur4–Recur5, Recur10, Recur14–Recur18,

Recur21, Recur25, Recur27, Dynamic2–Dynamic3, Dynamic5, Dynamic8–

Dynamic12, Dynamic25, Dynamic30, Dynamic49, Dynamic55, Dynamic59,

Dynamic63, Dynamic70, Dynamic74, Dynamic78.

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

дули:

• PT4Demo — позволяет просмотреть в демонстрационном режиме все

задания, включенные в задачник;

• PT4Load — обеспечивает генерацию программы-шаблона для требуемого

учебного задания и ее немедленную загрузку в выбранную среду програм-

мирования;

• PT4Result — предназначен для расшифровки, анализа и отображения на

экране содержимого файла результатов, в который заносятся сведения о

ходе выполнения заданий

Эти модули реализованы в виде отдельных программ-утилит, доступных

из меню задачника «Пуск | Программы | Programming Taskbook 4». Кроме того,

эти модули можно вызывать из меню тех программных сред, в которых ис-

пользуется задачник (соответствующие команды находятся в подменю «Tools»

или «Add-Ins»).

Дополнением к задачнику Programming Taskbook является свободно рас-

пространяемый комплекс «Teacher Pack for Programming Taskbook 4». Он

содержит компоненты электронного задачника, которые предназначены для

преподавателя программирования и призваны упростить подготовку и про-

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

элементов:

• PTVarMaker.exe — программа «Конструктор вариантов». Позволяет ав-

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

учащегося, а также создавать контрольные файлы, обеспечивающие ре-

гистрацию задания как выполненного только после проверки преподава-

телем текста программы, решающей это задание;



6


М. Э. Абрамян. Электронный задачник Programming Taskbook 4.6

 

 

• PT4Teach.exe — программа «Контрольный центр преподавателя». Пред-

назначена для подготовки каталогов учащихся к проведению занятий,

обеспечения дополнительного контроля за процессом выполнения зада-

ний, получения и анализа информации о результатах выполнения заданий,

резервного копирования важнейших файлов из каталогов учащихся;

• TeacherPack.chm — справочная система «Teacher Pack Info». СОдержит

полное описание программ PTVarMaker и PT4Teach, сведения о вспомо-

гательных файлах, используемых задачником Programming Taskbook, и

рекомендации по проведению групповых занятий.

Имеется также вариант данного комплекса «Teacher Pack for Pascal


ABC», ориентированный на совместное использование с учебной системой

программирования Pascal ABC (версии не ниже 2.5) и обладающий теми же

возможностями.

 

 

Замечания о формулировках заданий

 

В формулировках заданий не используются понятия и имена, специфиче-

ские для конкретного языка программирования.

Если о типе исходных или результирующих числовых данных в задании

ничего не сказано, то предполагаются вещественные данные. Исключение

составляет группа заданий Dynamic, в которой все числовые данные считаются

целыми, и в формулировках заданий это особо не оговаривается.

При обработке наборов вещественных чисел следует предполагать, что

все элементы набора являются различными (таким образом, любой набор

вещественных чисел содержит единственный минимальный и единственный

максимальный элемент). В наборах целых чисел могут присутствовать одина-

ковые элементы; в частности, наборы целых чисел могут содержать несколько

минимальных и максимальных элементов. Аналогичные предположения спра-

ведливы для числовых массивов, а также для файлов, содержащих числовые

данные.

Если в задании не указан максимальный размер исходных массивов, то

его можно считать равным 10 для одномерных и 10 Ч 10 для двумерных

массивов.

При описании элементов одномерных и двумерных массивов использует-

ся понятие порядкового номера элемента, причем начальный элемент масси-

ва A размера N всегда имеет порядковый номер 1 и обозначается в формули-



Ввод исходных данных и вывод результатов



 

 

ровках заданий как A1, а конечный элемент этого же массива имеет порядковый

номер N и обозначается как AN. Аналогично, начальный элемент двумерно-

го массива B обозначается как B1,1. Кроме того, понятие порядкового номера

применяется к строкам и столбцам двумерных массивов (матриц): начальная

строка и начальный столбец матрицы размера M Ч N имеют порядковый но-

мер 1, конечная строка — номер M, а конечный столбец — номер N. Подобный

подход не зависит от выбора языка программирования и соответствует тради-

ционно используемой в математике нумерации элементов векторов и матриц.

Максимальный размер исходных файлов не указывается, поэтому при ре-

шении заданий на файлы не следует использовать вспомогательные массивы,

содержащие все элементы исходных файлов, однако допускается использова-

ние вспомогательных файлов. Все исходные файлы считаются существующи-

ми, за исключением специально оговоренных случаев, в которых существова-

ние исходных файлов требуется проверять в ходе выполнения задания.

Под размером двоичного типизированного файла всегда подразумевается

количество содержащихся в нем элементов указанного типа (а не количество

байтов, как это принято в операционной системе). Как и для элементов мас-

сива, для элементов двоичного файла в формулировках заданий применяется

«естественная» нумерация: первый элемент файла имеет порядковый номер 1.

Если в используемом языке программирования отсутствует понятие «про-

цедура», то под процедурой в формулировках заданий групп Proc, Param и

Dynamic надо понимать функцию, не имеющую возвращаемого значения.

Формулировки заданий группы Dynamic приводятся в двух вариантах:

первый вариант (см. раздел «Динамические структуры данных») ориентирован

на применение указателей и предназначен для языков Паскаль и C++, второй

вариант (см. раздел «Динамические структуры данных (.NET)») ориентирован

на использование объектной модели платформы .NET и предназначен для

языков C# и Visual Basic .NET. Заметим,что в варианте задачника для языка

Visual Basic группа Dynamic отсутствует.