- Любовные романы
- Фантастика и фэнтези
- Ненаучная фантастика
- Ироническое фэнтези
- Научная Фантастика
- Фэнтези
- Ужасы и Мистика
- Боевая фантастика
- Альтернативная история
- Космическая фантастика
- Попаданцы
- Юмористическая фантастика
- Героическая фантастика
- Детективная фантастика
- Социально-психологическая
- Боевое фэнтези
- Русское фэнтези
- Киберпанк
- Романтическая фантастика
- Городская фантастика
- Технофэнтези
- Мистика
- Разная фантастика
- Иностранное фэнтези
- Историческое фэнтези
- LitRPG
- Эпическая фантастика
- Зарубежная фантастика
- Городское фентези
- Космоопера
- Разное фэнтези
- Книги магов
- Любовное фэнтези
- Постапокалипсис
- Бизнес
- Историческая фантастика
- Социально-философская фантастика
- Сказочная фантастика
- Стимпанк
- Романтическое фэнтези
- Ироническая фантастика
- Детективы и Триллеры
- Проза
- Юмор
- Феерия
- Новелла
- Русская классическая проза
- Современная проза
- Повести
- Контркультура
- Русская современная проза
- Историческая проза
- Проза
- Классическая проза
- Советская классическая проза
- О войне
- Зарубежная современная проза
- Рассказы
- Зарубежная классика
- Очерки
- Антисоветская литература
- Магический реализм
- Разное
- Сентиментальная проза
- Афоризмы
- Эссе
- Эпистолярная проза
- Семейный роман/Семейная сага
- Поэзия, Драматургия
- Приключения
- Детская литература
- Загадки
- Книга-игра
- Детская проза
- Детские приключения
- Сказка
- Прочая детская литература
- Детская фантастика
- Детские стихи
- Детская образовательная литература
- Детские остросюжетные
- Учебная литература
- Зарубежные детские книги
- Детский фольклор
- Буквари
- Книги для подростков
- Школьные учебники
- Внеклассное чтение
- Книги для дошкольников
- Детская познавательная и развивающая литература
- Детские детективы
- Домоводство, Дом и семья
- Юмор
- Документальные книги
- Бизнес
- Работа с клиентами
- Тайм-менеджмент
- Кадровый менеджмент
- Экономика
- Менеджмент и кадры
- Управление, подбор персонала
- О бизнесе популярно
- Интернет-бизнес
- Личные финансы
- Делопроизводство, офис
- Маркетинг, PR, реклама
- Поиск работы
- Бизнес
- Банковское дело
- Малый бизнес
- Ценные бумаги и инвестиции
- Краткое содержание
- Бухучет и аудит
- Ораторское искусство / риторика
- Корпоративная культура, бизнес
- Финансы
- Государственное и муниципальное управление
- Менеджмент
- Зарубежная деловая литература
- Продажи
- Переговоры
- Личная эффективность
- Торговля
- Научные и научно-популярные книги
- Биофизика
- География
- Экология
- Биохимия
- Рефераты
- Культурология
- Техническая литература
- История
- Психология
- Медицина
- Прочая научная литература
- Юриспруденция
- Биология
- Политика
- Литературоведение
- Религиоведение
- Научпоп
- Психология, личное
- Математика
- Психотерапия
- Социология
- Воспитание детей, педагогика
- Языкознание
- Беременность, ожидание детей
- Транспорт, военная техника
- Детская психология
- Науки: разное
- Педагогика
- Зарубежная психология
- Иностранные языки
- Филология
- Радиотехника
- Деловая литература
- Физика
- Альтернативная медицина
- Химия
- Государство и право
- Обществознание
- Образовательная литература
- Учебники
- Зоология
- Архитектура
- Науки о космосе
- Ботаника
- Астрология
- Ветеринария
- История Европы
- География
- Зарубежная публицистика
- О животных
- Шпаргалки
- Разная литература
- Зарубежная литература о культуре и искусстве
- Пословицы, поговорки
- Боевые искусства
- Прочее
- Периодические издания
- Фанфик
- Военное
- Цитаты из афоризмов
- Гиды, путеводители
- Литература 19 века
- Зарубежная образовательная литература
- Военная история
- Кино
- Современная литература
- Военная техника, оружие
- Культура и искусство
- Музыка, музыканты
- Газеты и журналы
- Современная зарубежная литература
- Визуальные искусства
- Отраслевые издания
- Шахматы
- Недвижимость
- Великолепные истории
- Музыка, танцы
- Авто и ПДД
- Изобразительное искусство, фотография
- Истории из жизни
- Готические новеллы
- Начинающие авторы
- Спецслужбы
- Подростковая литература
- Зарубежная прикладная литература
- Религия и духовность
- Старинная литература
- Справочная литература
- Компьютеры и Интернет
- Блог
Описание языка PascalABC.NET - W Cat
Шрифт:
Интервал:
Закладка:
Здесь Task ¦-- процедура, содержащаяся в модуле Drawman и вызывающая задание с указанным именем.
Имеются следующие группы заданий для исполнителя Чертежник:
a – вводные задания;
c – цикл с параметром;
cc – вложенные циклы;
p – процедуры без параметров;
pp – процедуры с параметрами.
Для создания произвольного поля размера 20 x 30 используется процедура StandardField без параметров, а для создания поля размера N x M -- процедура Field(N,M).
Что такое проверяемые задания
Задания, проверяемые автоматически, являются мечтой любого преподавателя. Несомненно, что при автоматической проверке можно проверить только сам факт выполнения задания, но не те знания, которые получил ученик. Поэтому крайне желательно, чтобы выполнение проверяемых заданий проходило под контролем преподавателя.
Опыт авторов системы PascalABC.NET и электронного задачника Programming Taskbook свидетельствует, что обучение программированию с помощью проверяемых заданий, сочетаемое с другими методиками (обучение на примерах, поиск ошибок в программах, ручная и автоматическая трассировка, создание творческих программных проектов и т. д.), позволяет существенно ускорить сам процесс обучения и облегчить труд преподавателя.
Итак, что такое проверяемые задания и как их выполнять в системе PascalABC.NET? Для того чтобы это узнать, проще всего ознакомиться с несколькими примерами выполнения типовых заданий.
Пример 1. Задание Begin3 из электронного задачника Programming Taskbook.
Выполняя задание Begin3, следует обратить внимание на одну важную особенность работы с электронным задачником: при его подключении процедуры ввода-вывода read и write начинают работать иначе: процедура read получает исходные данные непосредственно от задачника (который генерирует их, используя датчик случайных чисел и учитывая особенности выполняемого задания), а процедура write пересылает результаты задачнику для проверки их правильности. Исходные данные, подготовленные задачником, и результаты, полученные программой, отображаются в соответствующих разделах окна задачника; ученик не должен заботиться об их форматировании и поясняющих подписях, поскольку за эти действия отвечает сам задачник. Важно учитывать, что при каждом запуске программы учащегося ей будут предлагаться различные варианты исходных данных, поэтому для решения задания необходимо разработать алгоритм, правильно обрабатывающий любые наборы допустимых исходных данных.
Пример 2. Задание a1 для исполнителя Робот.
Исполнитель Робот является бесценным источником заданий для быстрого обучения основным конструкциям программирования школьников средних классов.
Пример 3. Задание String9 из электронного задачника Programming Taskbook.
Данное задание знакомит с особенностями выполнения заданий на обработку символов и строк. Следует обратить внимание на диагностику ошибки, связанной с выводом строки, длина которой превышает длину строки -- правильного решения.
Пример 4. Задание File48 из электронного задачника Programming Taskbook.
Это задание знакомит с особенностями выполнения заданий на обработку типизированных файлов. Исходные файлы при вызове задания создаются на диске, после чего могут обрабатываться по стандартным правилам. Содержимое файлов, созданных в процессе выполнения задания, проверяется электронным задачником; после проверки исходные и результирующие файлы автоматически удаляются. Следует обратить внимание на то, как содержимое файлов отображается в окне задачника, а также на обработку ошибок времени выполнения, возникающих при выполнении заданий. В примере описаны типичные ошибки при работе с файлами и способы их устранения.
Пример 5. Задания группы Dynamic из электронного задачника Programming Taskbook.
В данном примере описываются задания из раздела, посвященного указателям и линейным динамическим структурам данных. При вызове задания в динамической памяти создаются все исходные структуры данных (в виде односвязных или двусвязных списков), а указатели на элементы этих структур выступают в качестве входных данных задания. Содержимое всех структур данных отображается в окне задачника в наглядном виде. Созданные программой ученика структуры данных анализируются задачником и после анализа все структуры данных удаляются из памяти.
Пример 6. Задания группы Tree из электронного задачника Programming Taskbook.
В данном примере описываются задания на обработку иерархических структур данных -- деревьев. Подобные структуры, как и линейные динамические структуры, рассмотренные в предыдущем примере, создаются задачником автоматически и в наглядном виде отображаются в его окне. Для доступа к ним также используются указатели.
Пример 7. Задания групп ExamBegin и ExamTaskC из электронного задачника Programming Taskbook.
Пример содержит описание процесса выполнения заданий, связанных с ЕГЭ по информатике. Основной особенностью этих заданий является то, что при их выполнении требуется использовать стандартные процедуры ввода-вывода языка Pascal (а не их специальные модификации, реализованные для задачника Programming Taskbook). Рассматриваются задания из группы ExamBegin, посвященные базовым алгоритмам, и задания из группы ExamTaskC, посвященные обработке сложных наборов данных.
Все примеры, связанные с электронным задачником Programming Taskbook, иллюстрируются изображениями окна задачника в режиме с динамической компоновкой, появившемся в версии 4.11.
Задание Begin3 из электронного задачника Programming Taskbook
Задание Begin3 относится к самой первой группе задачника, посвященной знакомству с вводом-выводом и оператором присваивания. Приведем формулировку этого задания.
Begin3. Даны стороны прямоугольника a и b. Найти его площадь S=a*b и периметр P=2*(a+b).
Далее по шагам опишем сценарий выполнения задания в системе PascalABC.NET.
Шаг 1. Для выполнения заданий из электронного задачника подключим к программе модуль PT4 и вызовем в начале программы процедуру Task, передав ей в качестве параметра имя задания:
uses PT4;
begin
Task('Begin3');
Заметим, что эту программу не обязательно набирать вручную. Для автоматической генерации данной программы выполним следующие действия. Нажмем кнопку . На экране появится окно программного модуля PT4Load, позволяющего создать программу-заготовку для требуемого задания:
Наберем в поле ввода «Задание» текст Begin3 и нажмем Enter. После этого указанный выше текст сгенерируется автоматически и сохранится в файле Begin3.pas в рабочем каталоге системы PascalABC.NET (по умолчанию это каталог C:PABCWork.NET).
Запустим программу (нажав клавишу F9), чтобы увидеть на экране текст задания:
Запуск нашей программы был признан ознакомительным (и поэтому правильность решения не анализировалась), так как в ходе ее выполнения не было совершено ни одной операции ввода-вывода.
Шаг 2. Переменные a и b считываются из полей ввода, выделенных желтым цветом, с помощью обычной процедуры read. Закроем окно задачника и изменим программу следующим образом:
uses PT4;
var a, b: integer;
begin
Task('Begin3');
read(a, b);
После запуска этого вариант программы окно задачник примет вид:
Как видим, исходные данные поменялись и появилось сообщение об ошибке -- переменные a и b должны быть объявлены как вещественные. Если запуск программы не является ознакомительным, то в окне задачника появляется раздел с полученными результатами (в нашем случае он не содержит ни одного числа), а также панель индикаторов, показывающих количество введенных и выведенных данных, а также число успешных тестовых запусков программы.
Шаг 3. Исправим тип исходных данных:
uses PT4;
var a, b: real;
begin
Task('Begin3');
read(a, b);
Вновь запустим программу:
Электронный задачник предупреждает, что не выведен результат. Обратите внимание на то, что для сообщений о различных видах ошибок используются разные цвета (например, фиолетовый для ошибок, связанных с несоответствием типов, и оранжевый для ошибок, связанных с вводом/выводом недостаточного числа данных).
Шаг 4. Проведем вычисления и выведем результирующие данные, но в неверном порядке:
uses PT4;
var a, b, S, P: real;
begin
Task('Begin3');
read(a, b);
S := a * b;
P := 2 * (a + b);
write(P, S)
Вновь запустим программу:
Мы видим, что все требуемые исходные данные введены, все результаты выведены, однако полученные результаты имеют неверные значения. В случае ошибочного решения окно задачника всегда содержит раздел с примером верного решения, чтобы можно было сравнить полученные и правильные результаты.

