Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УМК_ОАиП.doc
Скачиваний:
47
Добавлен:
01.04.2025
Размер:
5.06 Mб
Скачать

Лабораторная работа №3. Графические возможности Турбо Паскаль.

Цель: Закрепить навыки использования графических операторов.

1. Составьте программу рисования часов типа “кукушка”.

2. Нарисуйте детскую картинку. Постройте из закрашенных пересекающихся окружностей рисунок облака.

3. Выполните построение следующей картинки.

4. Составьте программу рисования скворечника.

5. Нарисовать новогоднюю елку.

6. Постройте избушку на курьих ножках.

7. Составьте программу рисования павлина.

8. Составьте программу рисования фотоаппарата.

9. Постройте домик, разукрасьте его по своему вкусу.

10. Составьте программу рисования компьютера.

11. Составьте программу рисования веера.

12. Составьте программу рисования предмета, придуманного Вами с использованием рассмотренных процедур.

Будьте готовы ответить на следующие вопросы:

1. Какие существуют команды для редактирования текста программы? Как ими пользоваться?

2. Что такое драйвер? Где они находятся?

3. Что значит инициализировать графический режим? Что для этого нужно сделать?

4. Что значит присвоить переменной типа драйвера значение Detect? Как в этом случае будет происходить инициализация графики?

5. Где находятся стандартные графические функции и процедуры? Что нужно сделать, чтобы ими воспользоваться?

6. Какие известные Вам текстовые процедуры можно использовать в графическом режиме, а какие – нельзя?

7. Назовите процедуры очистки экрана в текстовом и графическом режиме.

8. Существует ли в графическом режиме курсор? Если существует, есть ли у него название?

9. С помощью какой процедуры можно поменять цвет рисования линии?

10. С помощью какой процедуры можно поменять стиль закраски? Что обозначают параметры этой процедуры?

11. Как Вы думаете, зачем нужны три процедуры рисования линии? Какой процедурой чаще всего пользовались Вы? Попробуйте предположить, в каком случае Вам понадобятся другие?

12. Какие основные ошибки Вы допускали при инициализации графики?

13. Каким параметром в записи процедур всегда стоит радиус?

14. Какие параметры и в каком порядке нужно задать, чтобы нарисовать дугу?

15. Какие параметры и в каком порядке нужно задать, чтобы нарисовать окружность?

16. Какие параметры и в каком порядке нужно задать, чтобы нарисовать эллипс?

17. Какие параметры и в каком порядке нужно задать, чтобы нарисовать прямоугольник?

18. Какие параметры и в каком порядке нужно задать, чтобы нарисовать параллепипед?

19. Какие параметры и в каком порядке нужно задать, чтобы нарисовать сектор круга?

20. Какие параметры и в каком порядке нужно задать, чтобы нарисовать сектор эллипса?

21. Можно ли начертить пунктирную линию? Какие стандартные линии предоставляет Вам среда программирования? Как называется эта процедура? Как к ней обратиться?

22. Можно ли нарисовать толстую линию? Если можно, то объясните как?

23. Какими процедурами и в каком порядке нужно воспользоваться, чтобы закрасить фигуру?

24. Каким требованиям должна соответствовать фигура, чтобы она закрасилась без ошибок?

25. Какие есть графические процедуры вывода текста на экран? Как можно изменить шрифт букв? Какие еще есть процедуры, управляющие выводом текста? Для чего они нужны?

Раздел 4. Основные алгоритмические конструкции и их реализация на языке Pascal .

Тема 4.1. Разветвляющиеся алгоритмы. Оператор условия If. Логические операции not, and, or. Нахождение значений логических выражений.

Цель:- познакомить с понятием разветвляющийся алгоритм;

  • - научить читать и составлять алгоритмы различными способами;

  • - развивать логическое мышление, умение анализировать, делать выводы.

План урока.

  1. Повторение пройденного материала.

  2. Изучение нового материала (с элементами повторения).

  3. Закрепление.

  4. Домашнее задание.

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

Признаком разветвляющегося алгоритма является наличие операций проверки условия. Различают два вида условий – простые и составные.

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

Примечание. Название “булевые” произошло от имени математика Джорджа Буля, разработавшего в XIX веке булевую логику и алгебру логики.

Переменная, которая может принимать одно из двух значений: True (правда) или False (ложь), называется булевой (логической) переменной.

В общем случае полная форма конструкции условного оператора имеет вид:

if <логическое выражение>

then

<оператор 1>

else

<оператор 2>

Условный оператор работает по следующему алгоритму.

Сначала вычисляется значение логического выражения, расположенного за служебным словом IF. Если его результат истина, выполняется <оператор 1>, расположенный после слова THEN, а действия после ELSE пропускаются; если результат ложь, то, наоборот, действия после слова THEN пропускаются, а после ELSE выполняется <оператор 2>.

Если в качестве оператора должна выполниться серия операторов, то они заключаются в операторные скобки begin-end. Конструкция Begin ... End называется составным оператором.

if <логическое выражение>

then

begin

оператор 1;

оператор 2;

...

end

else

begin

оператор 1;

оператор 2;

...

end;

Составной оператор - объединение нескольких операторов в одну группу. Группа операторов внутри составного оператора заключается в операторные скобки (begin-end).

begin

оператор 1;

оператор 2;

end;

Логический тип данных. Логические операции not, and, or. Нахождение значений логических выражений. Самостоятельная работа.

Переменные логического типа описываются посредством идентификатора Boolean. Они могут принимать только два значения – False (ложь) и True (истина). Описываются они также в разделе описания переменных.

Var

Flag : Boolean

В языке Турбо Паскаль имеются логические операции, применяемые к переменным логического типа. Это операции not, and, or и хor. В этой теме Вы рассмотрите три логические операции. Обозначения и результаты этих операций приведены в таблице. Рассмотрите ее.

Значения операндов

Результат операции

X

Y

not X

X and Y

X or Y

False

False

True

False

False

False

True

True

False

True

True

False

False

False

True

True

True

False

True

True

Операция not (не) имеет один операнд и образует его логическое отрицание. Результат операции not есть False, если операнд истинен, и True, если операнд имеет значение ложь. Так,

not True False (неправда есть ложь)

not False True (неложь есть правда)

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

• not

• and, *, /, div, mod

• or, +, -

• операции отношения.

Задание. Запишите в тетрадь и вычислите значения выражений при a=10, b=20, c=true, d=false:

а) (a>5) and (b>5) and (a<20) and (b<30);

b) not (a<15) or not (b<30);

c) c or d and (b=20);

Задача. Вывести на экран большее из двух данных чисел.

Program Example1;

Var

x, y : integer; {вводимые числа}

Begin

writeln(‘Введите 2 числа ‘); {вводим два целых числа через пробел}

readln(x,y);

if x>y

then

writeln (x) {если х больше y, то выводим х}

else

writeln (y) {иначе выводим y}

readln;

End.

Задача. Составить программу, которая, если введенное число отрицательное меняет его на противоположное.

Program Chisla;

Var

x : integer; {вводимое число}

Begin

writeln(‘Введите число ‘); {вводим целое число}

readln(x);

if x<0

then

x:=-x;

writeln (x);

readln;

End.

Домашнее задание:

1. Если целое число М делится нацело на целое число N, то вывести на экран частное от деления, в противном случае вывести сообщение М на N нацело не делится.

2. Запишите условный оператор, в котором значение переменной с вычисляется по формуле a+b, если а – нечетное и a*b, если а – четное.

3. Вычислить значение функции:

у=

4. Написать программу для подсчета суммы только положительных из трех данных чисел.

5. Даны три числа. Написать программу для подсчета количества чисел, равных нулю.