Читаем Описание языка PascalABC.NET полностью

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

Пример 7. Задания групп ExamBegin и ExamTaskC из электронного задачника Programming Taskbook.

Пример содержит описание процесса выполнения заданий, связанных с ЕГЭ по информатике. Основной особенностью этих заданий является то, что при их выполнении требуется использовать стандартные процедуры ввода-вывода языка Pascal (а не их специальные модификации, реализованные для задачника Programming Taskbook). Рассматриваются задания из группы ExamBegin, посвященные базовым алгоритмам, и задания из группы ExamTaskC, посвященные обработке сложных наборов данных.

Все примеры, связанные с электронным задачником Programming Taskbook, иллюстрируются изображениями окна задачника в режиме с динамической компоновкой, появившемся в версии 4.11.

<p>Задание Begin3 из электронного задачника Programming Taskbook</p>

Задание 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)

Вновь запустим программу:

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

Шаг 5.Исправим ошибку:

uses PT4;

var a, b, S, P: real;

begin

Task('Begin3');

read(a, b);

S := a * b;

P := 2 * (a + b);

write(S, P)

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

Если решение является правильным, то дополнительный раздел с примером правильного решения в окне не выводится.

Шаг 6.Чтобы задание считалось выполненным, запустим программу еще два раза. В результате в окне задачника появится сообщение «Задание выполнено!»:

Перейти на страницу:

Похожие книги

1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

Алексей Анатольевич Гладкий

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных