
- •Смоленский гуманитарный университет
- •Часть 1. Основы алгоритмизации
- •Тема 1 «Алгоритмы линейной структуры»
- •Ход работы
- •Тема 2 «Алгоритмы разветвляющейся структуры»
- •Ход работы
- •Тема 3 «Алгоритмы циклической структуры»
- •Ход работы
- •Тема 4 «Вложенные циклы»
- •Ход работы
- •Тема 5 «Массивы»
- •Ход работы
- •Часть 2. Программирование
- •Тема 6 «Линейная структура программы»
- •Примеры решения задач
- •Ход работы
- •Тема 7 «Разветвляющая структура программы»
- •Примеры решения задач
- •Ход работы
- •Тема 8 «Циклическая структура программы»
- •Примеры решения задач
- •1 Способ
- •2 Способ.
- •1 Способ
- •2 Способ
- •1 Способ
- •2 Способ
- •1 Способ
- •2 Способ
- •Ход работы
- •Тема 9 «Понятие подпрограммы. Организация процедур и функций»
- •Примеры решения задач
- •Ход работы
- •Тема 10 «Рекурсия»
- •Примеры решения задач
- •Ход работы
- •Тема 11 «Строковый тип данных. Методы работы со строками»
- •Ход работы
- •Тема 12 «Тип данных массив»
- •Примеры решения задач
- •1 Способ
- •2 Способ
- •1 Способ
- •2 Способ
- •1 Способ
- •2 Способ
- •Алгоритм
- •1 Способ
- •2 Способ
- •1 Способ
- •2 Способ
- •Алгоритм
- •Работа программы
- •Ход работы
- •Тема 13 «Тип данных - запись»
- •Ход работы
- •Тема 14 «Файлы. Типы файлов. Методы работы с файлами»
- •Примеры решения задач
- •1 Способ
- •2 Способ
- •Ход работы
- •Тема 15 «Множества»
- •Ход работы
- •Тема 16 «Работа с мультимедиа»
- •Ход работы
- •Максимова Наталья Адександровна Основы программирования
- •214014, Г. Смоленск, ул. Герцена, 2
Тема 16 «Работа с мультимедиа»
Цели: 1. Познакомиться с мультимедийными возможностями Turbo Pascal.
2. Научиться создавать программы работа с графикой и мультимедиа средствами Turbo Pascal.
Вопросы к допуску и защите:
Чем объяснить разные возможности текстового и графического режимов видеомонитора?
За счет каких элементов компьютера обеспечивается аппаратная поддержка графики.
Что такое видеоадаптер, каково его назначение, из каких основных частей он состоит?
Зачем видеоадаптеру нужна видеопамять? Что такое видеостраница?
Какие процедуры предназначены для работы с видеостраницами?
Каково назначение графических драйверов?
Назначение стандартного библиотечного модуля GRAPH? Как запустить графическую систему?
Как включить графический режим? Назначение процедуры InitGraph и ее параметров: DriverVar, ModeVar, PathToDriver? Как перейти в текстовый режим и обратно? Как закрыть графический режим?
Какие стандартные функции можно использовать для своевременного обнаружения и нейтрализации ошибок в графическом режиме?
Какова система координат, используемая при построении графических изображений на экране?
Какую роль выполняет в графическом режиме невидимый текущий указатель СР (Current Pointer)? Как его переместить?
Что такое окно? Как создать окно в графическом режиме? Как установить фон графического окна?
Какие процедуры используются для работы с графическим примитивом — точкой?
Какие процедуры используются для работы с графическим примитивом — линией?
Какие процедуры используются для вывода текста в графическом режиме? Каковы особенности вывода численных данных в графическом режиме?
Ход работы
Задача 261. Установите графический режим и с помощью Random заполните экран 30000 точек случайного цвета.
1._______________________________________________________________________
2._______________________________________________________________________
3._______________________________________________________________________
4._______________________________________________________________________
5._______________________________________________________________________
Задача 262. Постройте желтую линию с координатами краев (0,0),(630,0) с помощью процедуры PutPixel.
1._______________________________________________________________________
2._______________________________________________________________________
3._______________________________________________________________________
4._______________________________________________________________________
5._______________________________________________________________________
Задача 263. Постройте рамку цвета LightCyan по краям экрана с помощью процедуры Line.
1._______________________________________________________________________
2._______________________________________________________________________
3._______________________________________________________________________
4._______________________________________________________________________
5._______________________________________________________________________
Задача 264. В верхней части экрана создайте область, ограниченную рамкой цвета LightGreen и текстом в центре: "Банк данных школы № 86 г.Воронежа". Цвет для текста — LightCyan.
1._______________________________________________________________________
2._______________________________________________________________________
3._______________________________________________________________________
4._______________________________________________________________________
5._______________________________________________________________________
Задача 265. В нижней части экрана создайте область, ограниченную рамкой цвета LightGreen и текстом в центре: "Для продолжения программы нажмите Enter". Выводимый текст должен трижды изменить цвет с LightCyan на LightRed.
1._______________________________________________________________________
2._______________________________________________________________________
3._______________________________________________________________________
4._______________________________________________________________________
5._______________________________________________________________________
Задача 266. Разметьте экран на три области: заголовочную, диалогов, подсказки, как размечена оболочка IDE Turbo Pascal . Для рамок используйте цвет Yellow. Соответственно выведите сообщения: "Заголовок", "Рабочая область", "Подсказка" цветом LightCyan.
1._______________________________________________________________________
2._______________________________________________________________________
3._______________________________________________________________________
4._______________________________________________________________________
5._______________________________________________________________________
Задача 267. Используя произвольный цвет, постройте двухмерный закрашенный прямоугольник и внизу сделайте подпись белого цвета: "1992". Параметры для SetFillStyle = (1,3).
1._______________________________________________________________________
2._______________________________________________________________________
3._______________________________________________________________________
4._______________________________________________________________________
5._______________________________________________________________________
Задача 268. Нарисуйте "бублик" желтого цвета произвольного радиуса.
1._______________________________________________________________________
2._______________________________________________________________________
3._______________________________________________________________________
4._______________________________________________________________________
5._______________________________________________________________________
Задача 269. Разметьте экран на три области: заголовочную, диалогов, подсказки. Для рамок используйте цвет Yellow. Соответственно выведите сообщения: "Заголовок", "Рабочая область", "Подсказка" цветом LightCyan. Центральную часть, исключая рамку, оформите как окно с фоном Cyan и заполните его 30000 точек случайного цвета. Для очистки и установки' фона графического окна используйте процедуру Bar.
1._______________________________________________________________________
2._______________________________________________________________________
3._______________________________________________________________________
4._______________________________________________________________________
5._______________________________________________________________________
Задача 270. Нарисуйте круг цвета произвольного радиуса, закрасив цветом Cyan все, что лежит вне этого круга.
1._______________________________________________________________________
2._______________________________________________________________________
3._______________________________________________________________________
4._______________________________________________________________________
5._______________________________________________________________________
Задача 271. В центре экрана нарисуйте эллипс, закрашенный цветом LightGreen, всю остальную площадь экрана сделайте фиолетовой.
1._______________________________________________________________________
2._______________________________________________________________________
3._______________________________________________________________________
4._______________________________________________________________________
5._______________________________________________________________________
Задача 272. Находясь в графическом режиме, присвойте двум переменным целые значения, сложите их и выведите результат в центр экрана. Так как вывести число в графике нельзя, преобразуйте результат в строку отдельной пользовательской функцией.
1._______________________________________________________________________
2._______________________________________________________________________
3._______________________________________________________________________
4._______________________________________________________________________
5._______________________________________________________________________
Задача 273. Находясь в графическом режиме, присвойте двум переменным дробные значения, сложите их и выведите результат в центр экрана. Так как вывести число в графике нельзя, преобразуйте результат в строку отдельной пользовательской функцией. Используйте процедуру Str.
1._______________________________________________________________________
2._______________________________________________________________________
3._______________________________________________________________________
4._______________________________________________________________________
5._______________________________________________________________________
Задача 274. Заданы пять значений количества заболевших гриппом в классе за последние шесть лет: 12 (1990), 30 (1991), 11 (1992), 21 (1993), 4 (1994). С помощью Bar3D постройте диаграмму, отражающую динамику (в высоте столбца) заболеваемости. Под каждым столбцов укажите год. Исходные данные опишите в типизированном массиве.
1._______________________________________________________________________
2._______________________________________________________________________
3._______________________________________________________________________
4._______________________________________________________________________
5._______________________________________________________________________
Задача 275. Составить программу, которая воспроизводит выбранную обучаемым мелодию (мелодию можно взять из сборника или подобрать самостоятельно).
1._______________________________________________________________________
2._______________________________________________________________________
3._______________________________________________________________________
4._______________________________________________________________________
5._______________________________________________________________________
Задача 276. Построить звуковой мультфильм «Танцующий НЛО». НЛО строить из отдельных символов так, как показано на рисунке.
\ /
\ /
- - - - - -
-- - - - - -
/ \
/ \
Очередное положение НЛО на экране определить с помощью датчика случайных чисел. Результатом обращения к датчику должны быть номера строки и столбца экрана, с которыми следует совместить левый верхний угол прямоугольника, объемлющего НЛО. Каждый раз, когда номер полученного таким образом столбца окажется кратным 12, НЛО должен издавать звуковой сигнал.
1._______________________________________________________________________
2._______________________________________________________________________
3._______________________________________________________________________
4._______________________________________________________________________
5._______________________________________________________________________
Задача 277. В рисованных мультфильмах иллюзия движения создается последовательной сменой кадров, каждый из которых фиксирует очередное положение движущегося объекта. Используя этот принцип, получить мультфильм, показывающий:
а) идущего человечка;
б) бегущего человечка;
в) приседающего человечка;
г) машущего флажком человечка.
Для построения отдельных кадров мультфильма воспользоваться фигурками, описанными в рассказе А.Конан Дойля «Пляшущие человечки».
1._______________________________________________________________________
2._______________________________________________________________________
3._______________________________________________________________________
4._______________________________________________________________________
5._______________________________________________________________________
Задача 278. Игра «Быки и коровы». Программа выбирает с помощью датчика случайных чисел четырехзначное число с разными цифрами. Угадать это число. На каждом шаге играющий называет четырехзначное число, а программа сообщает, сколько цифр угадано (быки) и сколько цифр угадано и стоит на своем месте (коровы). Например, если программой загадано число 1294, а играющий назвал 1423, он получит ответ «1 корова, 3 быка».
1._______________________________________________________________________
2._______________________________________________________________________
3._______________________________________________________________________
4._______________________________________________________________________
5._______________________________________________________________________
Задача 279. Игра «Угадай число». Один из играющих задумывает число от 1 до 1000, другой пытается угадать его за десять вопросов вида: верно ли, что задуманное число больше такого-то числа. Написать программу, играющую за отгадчика.
1._______________________________________________________________________
2._______________________________________________________________________
3._______________________________________________________________________
4._______________________________________________________________________
5._______________________________________________________________________