Читать интересную книгу Описание языка PascalABC.NET - W Cat

Шрифт:

-
+

Интервал:

-
+

Закладка:

Сделать
1 ... 72 73 74 75 76 77 78 79 80 ... 101

Для непараллельных" заданий раздел отладки содержит единственную область вывода. Для заданий по параллельному программированию число областей вывода равно числу параллельных процессов плюс 1; при этом в каждый момент времени в разделе отладки отображается одна из областей. Если областей вывода больше одной, то в нижней части раздела отладки выводится набор ярлычков, позволяющих переключиться на любую из имеющихся областей вывода:

Ярлычки с номерами (от 0 до N-1, где N -- количество процессов) позволяют просмотреть содержимое области вывода, связанной с процессом соответствующего ранга; ярлычок с символом *" позволяет просмотреть область вывода, содержащую объединенный текст всех других областей:

Для переключения на нужную область вывода достаточно щелкнуть мышью на соответствующем ярлычке. Кроме того, для последовательного перебора ярлычков слева направо или справа налево можно использовать комбинации Alt+Right и Alt+Left соответственно (перебор осуществляется циклически). Можно также сразу перейти к нужной области вывода, нажав соответствующую клавишу: для области *" -- клавишу [*], для областей "0"-"9" -- цифровые клавиши 0-9, а для областей "10"-"35" -- буквенные клавиши от A до Z (при выполнении заданий по параллельному программированию максимально возможное число процессов равно 36).

Если в основных разделах окна задачника отсутствуют прокручиваемые элементы или основные разделы являются скрытыми, то дополнительную клавишу Alt в перечисленных выше клавиатурных Alt-комбинациях можно не использовать.

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

Количество отладочных строк для каждого процесса не должно превышать 999; если некоторый процесс пытается вывести данные в строку с номером, превышающим 999, то в связанной с этим процессом области отладки выводится сообщение об ошибке, и последующий вывод отладочных данных для этого процесса блокируется. Указанное ограничение позволяет, в частности, избежать проблем, возникающих при бесконечном" выводе отладочной информации из какого-либо зациклившегося подчиненного процесса во временный файл.

Каждая экранная строка, отображаемая в разделе отладки, состоит из служебной области и области данных. Ширина служебной области равна 6 экранным позициям для непараллельных" заданий и 9 позициям для заданий по параллельному программированию. Ширина области данных равна 80 позициям.

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

область нумерации процессов (только для заданий по параллельному программированию): 2 экранные позиции, отводимые для ранга процесса, и символ |"; область нумерации строк: 3 экранные позиции, отводимые для номера строки данных, после которых следует символ ">" и символ пробела; область признака сообщения об ошибке: одна экранная позиция, в которой может содержаться либо пробел (признак обычного отладочного текста), либо символ "!" (признак сообщения об ошибке). Если в разделе отладки выводится текст, связанный со всеми процессами параллельного приложения (этот текст связан с ярлычком "*"), то нумерация строк для каждого процесса производится независимо.

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

Содержимое области вывода, отображаемой в разделе отладки, можно копировать в буфер Windows; для этого предназначена стандартная клавиатурная комбинация Ctrl+C и соответствующая команда контекстного меню раздела отладки.

Для вывода данных в раздел отладки предназначены процедуры Show и ShowLine. Описания этих процедур приводятся в разделе, посвященном типам и процедурам модуля PT4.

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

В режиме с динамической компоновкой отсутствует возможность просмотра областей вывода, связанных с отдельными процессами параллельной программы: раздел отладки всегда содержит объединенный текст, полученный из всех областей. Для просмотра содержимого отдельных областей вывода следует переключиться в режим окна с фиксированной компоновкой, нажав клавишу F4.

Просмотр результатов

Результаты выполнения всех заданий из задачника Programming Taskbook заносятся в специальный файл результатов results.abc, который должен находиться в том каталоге, из которого запускаются программы с заданиями.

Данный файл автоматически создается в рабочем каталоге системы PascalABC.NET (по умолчанию рабочим каталогом является каталог PABCWork.NET, находящийся на диске C). При смене рабочего каталога (это можно сделать с помощью программы настройки задачника PT4Setup) в новом рабочем каталоге также создается файл результатов.

Данные хранятся в файле результатов в зашифрованном виде, поэтому его непосредственный просмотр и корректировка невозможны. Для просмотра содержимого файла результатов предназначен программный модуль PT4Results, который вызывается непосредственно из среды PascalABC.NET командой меню Модули | Просмотреть результаты" (с данной командой связана также кнопка и клавиатурная комбинация Shift+Ctrl+R).

При просмотре файла результатов с помощью модуля PT4Results содержащаяся в нем информация отображается в двух вариантах.

Вариант с полной информацией представляет собой перечень всех запусков программ с учебными заданиями; для каждого запуска указывается имя задания, дата и время запуска, а также результат запуска. Например: = Иванов Петр (C:PABCWork)

Begin1 A27/09 19:07 Выведены не все результирующие данные.

Begin1 A27/09 19:07 Ошибочное решение.--2

Begin1 A27/09 19:07 Задание выполнено!

For1 A27/09 19:07 Ознакомительный запуск.

For1 A27/09 19:08 Выведены не все результирующие данные.

For1 A27/09 19:10 Ошибочное решение.--3

For1 A27/09 19:13 Задание выполнено!

For5 A27/09 19:15 Неверно указан тип при вводе исходных данных.--2

For5 A27/09 19:16 Выведены не все результирующие данные.

For5 A27/09 19:19 Задание выполнено!

For10 A27/09 19:21 Неверно указан тип при вводе исходных данных.

For10 A27/09 19:22 Ошибочное решение.

Буква A перед датой означает, что задание выполнялось в системе PascalABC.NET, а числа в конце некоторых строк указывают на то, что было проведено подряд несколько запусков программы с одинаковым результатом.

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

= Иванов Петр (C:PABCWork.NET)

-1- ВРЕМЯ ЗАНЯТИЙ:

27/09(19:07-19:22)[3/16] ВСЕГО: 0:16 [3/16]

-2- ВЫПОЛНЕННЫЕ ЗАДАНИЯ:

Begin1 A27/09 [4] For1 A27/09 [6] For5 A27/09 [4]

-3- НЕЗАВЕРШЕННЫЕ ЗАДАНИЯ:

For10 27/09 [2]

-5- СВОДКА ПО ГРУППАМ ЗАДАНИЙ:

Begin 1 For 2 ВСЕГО: 3

При использовании задачника в системе PascalABC.NET в файл результатов заносится также информация о выполненных заданиях для исполнителей Робот и Чертежник.

Начиная с версии 4.11, программный модуль PT4Results можно вызвать непосредственно из окна задачника, нажав клавишу F2.

Демонстрационный режим

Для запуска задачника в демонстрационном режиме следует при указании имени задания в процедуре Task дополнить это имя символом ?, например:

Task('Begin12?');

Можно также указать символ ? сразу после имени темы, например, 'Begin?'. В этом случае в окне задачника сразу будет отображено последнее задание указанной группы.

1 ... 72 73 74 75 76 77 78 79 80 ... 101
На этом сайте Вы можете читать книги онлайн бесплатно русская версия Описание языка PascalABC.NET - W Cat.
Книги, аналогичгные Описание языка PascalABC.NET - W Cat

Оставить комментарий