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

procedure ResultFileT(FileName: string; Y1, Y2: integer);

Процедуры группы ResultFile с именами, завершающимися символами N, R, C, S, позволяют включить в задание в качестве результирующего файла один двоичный файл с элементами целочисленного, вещественного, символьного и строкового типа соответственно. Процедура ResultFileT позволяет включить в задание в качестве результирующего файла один текстовый файл. К моменту вызова процедуры файл, включаемый в задание, должен быть создан, заполнен контрольными данными и закрыт. Под контрольными данными понимаются, как обычно, данные, которые должны содержаться в результирующем файле в случае правильного решения задания.

Смысл параметров процедур группы ResultFile совпадает со смыслом соответствующих параметров процедур группы DataFile, за исключением того, что теперь номера экранных строк Y, Y1, Y2 относятся к области результирующих данных. Ограничения на параметры для процедур группы ResultFile накладываются те же, что и для процедур группы DataFile.

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

Как и в случае процедур группы DataFile, отображение некоторых результирующих файлов можно отключить, положив в соответствующих процедурах ResultFile значения параметров Y или Y1 равными 0 (см., например, задание File1). Это, естественно, не отменит сравнения содержимого результирующих файлов с контрольными данными и удаления результирующих файлов при завершении программы.

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

Процедуры для включения в задание указателей и динамических структур данных

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

type

PNode = ^TNode;

TNode = record

Data : integer;

Next : PNode;

Prev : PNode;

Left: PNode;

Right: PNode;

Parent: PNode;

end;

Этот тип позволяет формировать одно- и двусвязные линейные динамические структуры (при этом используются поля связи Next и Prev), бинарные деревья и деревья общего вида (при этом используются поля связи Left и Right), а также бинарные деревья с обратной связью (при этом используются поля связи Left, Right и Parent). Поскольку значение адреса, хранящегося в указателе, не представляет интереса (и, кроме того, может изменяться при каждом тестовом запуске программы), на экране отображается не оно, а условное обозначение указателя ptr", снабженное обязательным комментарием, например, P1 = ptr, PX = ptr и т. д. В задании можно использовать до 36 различных указателей, которым присваиваются номера от 0 до 35. Указатели с номерами от 0 до 9 имеют комментарии с цифровым индексом (P0-P9), а указатели с номерами от 10 до 35 -- с буквенным (PA-PZ). Если некоторый указатель имеет нулевое значение, то вместо текста ptr" отображается текст "nil" (или аналогичный текст с обозначением нулевого указателя, соответствующего текущему языку программирования), например, P1 = nil для языка Pascal, P1 = NULL для языка C++. Комментарии к указателям также используются при отображении на экране динамических структур, если они содержат элементы, с которыми связаны данные указатели.

procedure SetPointer(NP: integer; P: PNode);

Эта процедура позволяет определить в учебном задании указатель с номером NP (значение этого указателя при инициализации задания будет равно P, однако при выполнении задания оно может измениться). Все прочие процедуры, связанные с этим указателем и описываемые далее, используют не его конкретное значение, а номер NP.

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

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

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

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

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

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

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

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

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