Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Задания по ЭВМ.doc
Скачиваний:
43
Добавлен:
28.03.2016
Размер:
108.03 Кб
Скачать

15-16. Программирование на языке Pascal. Использование процедур графического вывода на экран. Использование псевдослучайных чисел.

Задание 14.

Написать программу «Звездное небо», которая выводит в цикле до нажатия пользователем любой клавиши на клавиатуре в случайное место полного графического экрана всевозможным случайным цветом точки (пиксели). Точки должны выводится с замедлением в 0.1 сек.

Программа должна работать в «оптимальном» графическом режиме – режиме, соответствующим процедуре инициализации графики в Паскале (InitGraph) с параметром переменной DriverVar, равной константе Detect.

Параметры установленного графического режима (функции GetMaxX, GetMaxY, GetMaxColor) вывести в центре экрана после проверки правильности инициализации графики (функция GraphResult). При наличии ошибки инициализации – вывести соответствующее сообщение (функция GraphErrorMsg) и остановить работу программы.

Для вывода текста в графическом режиме используется процедура OutTextXY, для преобразования чисел в строки – процедура STR.

Рекомендуемый порядок работы.

1) Скопировать пример на процедуру PutPixel в свою программу.

(Даже если работаете на FreePascal, пример взять из Borland Pascal – запустить K:\BP\bin\bp.exe, войти в Help, …).

2) Изучить текст программы, оттранслировать, запустить на выполнение.

Программы выводит точки в случайное место квадрата 100x100. Цвет точек – «максимальный» (GetMaxColor), который в Borland Pascal является белым, а во FreePascal может быть и черным.

3) Изменить программу в соответствии с заданием. Изучить все используемые функции и процедуры. (Используйте Help BP).

4) Оттранслировать программу. Запустить на выполнение.

5) Сохранить в свой сетевой каталог свои файлы *.pas, *.exe. (Если создавали программу в Borland IDE, то сохранить и файл egavga.bgi).

6) Выполнить программу в командной строке из своего каталога.

10