Тема занятия: Разработка и отладка разветвляющихся программ.
Цель: Получение практических навыков разработки разветвляющихся программ.
Техническое обеспечение: ПЭВМ
Программное обеспечение: Паскаль.
Место проведения занятий: Лаборатория ПЭВМ
Продолжительность занятия: 2 часа.
1. Краткая справка.
Оператор условия IF является одним из самых популярных средств, изменяющих естественный порядок выполнения операторов программы. Он может принимать одну из следующих форм:
1. if <условие> then <оператор1>
else <оператор2>;
2. if <условие> then <оператор>;
Здесь ключевые слова if, then, else означают соответственно «если», «то», «иначе».
Оператор выбора CASE является обобщением оператора IF и позволяет сделать выбор из произвольного числа имеющихся вариантов. Он состоит из выражения, называемого селектором, и списка параметров, каждому из которых предшествует список констант выбора (список может состоять и из одной константы). Как и в операторе IF, здесь может присутствовать слово ELSE, имеющее тот же смысл.
Формат:
Case <выражение-селектор> of
<список1>: <оператор1;>
<список2>: <оператор2;>
…
<список N>: <оператор N;>
else <оператор>
end;
Оператор CASE работает следующим образом. Сначала вычисляется значение выражения-селектора, затем обеспечивается реализация того оператора, константа выбора которого равна текущему значению селектора. Если ни одна из констант не равна текущему значению селектора, выполняется оператор, стоящий за словом ELSE.
2. Контрольные вопросы.
2.1. Оператор условия.
2.2. Оператор выбора.
Задания и технология выполнения
3.1. Пример 1.
3.1.2. Разработать программу вычисления для следующего выражения:
при x = - 4 , x = 4 с точностью до 2х знаков.
· Программа
PROGRAM K2; { заголовок }
USES CRT; { подключение библиотек }
VAR X,Y:REAL; { описание переменных }
BEGIN { начало раздела операторов }
CLRSCR ; { очистка экрана}
WRITE (‘Введите х’); { пояснительный текст }
READLN(X); {ввод х}
IF X>=0 THEN Y:=SQRT(ABS(X))
ELSE Y: =SQR(Х); { проверка условия }
WRITELN (‘Y=’,Y:1:2) {вывод Y}
END. { конец программы}
3.1.3. CTRL+F9 (запуск программы)
3.1.4. ALT+F5 ( просмотр результатов)
3.2. Пример 2.
3.2.2. Разработать программу вычисления следующего выражения
с точностью до 2х знаков при х=3 , x=7 , x=15.
· Программа.
PROGRAM K3 ; { заголовок }
USES CRT ; { подключение библиотеки }
VAR X :INTEGER ; Y:REAL; { описание переменных }
BEGIN { начало разделения операторов }
CLRSCR; {очистка экрана }
WRITELN (‘,Введите х ‘); {пояснительный текст}
READ (X) ; { ввод х}
CASE X OF
1..5: Y: =2*X;
6..10: Y: =X/2
ELSE Y: =X
END; {выбор варианта}
WRITELN (‘Y=’, Y:1:2) {вывод Y)
END. {конец программы }
3.2.3. CTRL+F9 (запуск программы)
3.2.4. ALT+F5 ( просмотр результатов)
4. Контрольные задания.
4.1. Составить программу вычисления следующего выражения с точностью до 2-х знаков.
4.1.1. , при х = 0.5, x = 7.
4.1.2. , при х = - 0.7, x = 10.
4.1.3. , при х = -3, x = 3.
4.1.4. , при х = 0.4, x = 0.8.
4.1.5. , при х = 2, x = 10.
4.1.6. , при х = 0, x = -2, х = 2.
4.1.7. , при х = 0.2, x = 0.4, х = 0.6.
4.1.8. , при х = 0, x = 4, х = 0.5.
4.1.9. , при х = 2, x = 4, х = 6.
4.1.10. ,при х = 2, x = 4, х = 6.
5. Рекомендуемая литература
5.1. Бородич Ю.С. и др. Паскаль для персональных компьютеров.
- Мн.: Высш.шк.: БФ ГИТМП «НИКА», 1991.- с.36-39.
Практическое занятие № 4
Тема: Основы алгоритмизации и программирования
Тема занятия:Разработка и отладка циклических программ.
Цель: Получение практических навыков разработки циклических программ.
Техническое обеспечение: ПЭВМ
Программное обеспечение: Паскаль.
Место проведения занятий: Лаборатория ПЭВМ
Продолжительность занятия: 2 часа.
1. Краткая справка
Оператор повтора FOR состоит из заголовка и тела цикла. Он может быть представлен в двух форматах:
1. FOR <параметр цикла> := <S1> TO <S2> DO <оператор>;
2. FOR <параметр цикла> := <S1> DOWNTO <S2> DO <оператор>;
S1 и S2 — выражения, определяющие соответственно начальное и конечное значения параметра цикла. FOR … DO – заголовок цикла, <оператор> - тело цикла. Тело цикла может быть простым или составным оператором. Оператор FOR обеспечивает выполнение цикла до тех пор, пока не будут перебраны все значения параметра цикла от начального до конечного.
Оператор повтора REPEAT состоит из заголовка (repeat), тела и условия окончания (until).
Формат: REPEAT
<оператор;>
<оператор;>
…
<оператор;>
UNTIL <условие>;
Условие – выражение булевского типа. При написании условия допустимы булевские операции и операции отношения. Операторы, заключенные между словами REPEAT и UNTIL, являются телом цикла. Вначале выполняется тело цикла, затем проверяется условие выхода из цикла. Если результат булевского выражения False, тело цикла тело цикла активизируется еще раз, если результат True — происходит выход из цикла.
Оператор REPEAT имеет три характерные особенности: выполняется, по крайней мере, 1 раз; тело цикла выполняется пока условие равно False; в теле может находиться произвольное число операторов без операторных скобок Begin … End.
Оператор повтора While осуществляет проверку условия выполнения цикла в самом начале оператора.
Формат: while <условие> do <тело цикла>;
Условие — булевское выражение, а тело цикла – простой или составной оператор. Перед каждым выполнением цикла вычисляется значение выражения условия. Если результат равен True, тело цикла выполняется и снова вычисляется выражение условия. Если результат равен False, происходит выход из цикла и переход к первому после While оператор. Если перед первым выполнением цикла значение выражения было равно False, тело цикла вообще не выполняется и происходит переход на следующий оператор.
2. Контрольные вопросы.
2.1. Оператор повтора FOR.
2.2. Оператор Repeat.
2.3. Оператор While.
Задания и технология выполнения.
3.1. Составить программу для вычисления следующего выражения:
;
при х = 1..10, h = 1.
Технология работы:
3.1.1.Первый вариант:
¨ Программа:
Program K4;
Uses CRT;
Var X, Y: Integer;
Begin
ClrScr;
For X : = 1 To 10 Do
Begin
Y: = Sqr(X) + 4;
Writeln (‘Y = ‘,Y );
End;
End.
¨ <Ctrl> + <F9> — запуск программы.
¨ <Alt> + <F5> — просмотр результатов выполнения программы.
3.1.2. Второй вариант.
¨ Программа:
Program K5;
Uses CRT;
Var X,Y:Integer;
Begin
X: =1;
While X<=10 Do
Begin
Y: =Sqr(X)+4;
Writeln(‘Y=’,Y);
X: =X+1
End;
End.
¨ <Ctrl> + <F9> — запуск программы.
¨ <Alt> + <F5> — просмотр результатов выполнения программы.
3.1.3. Третий вариант:
¨ Программа:
Program K6;
Uses CRT;
Var X, Y:Integer;
Begin
X:=1;
Repeat
Y:= Sqr(X) +4;
Writeln (‘Y = ‘,Y);
X:=X+1;
Until ( X>10 );
End.
¨ <Ctrl> + <F9> — компиляция и запуск программы.
¨ <Alt> + <F5> — просмотр результатов выполнения программы.
4. Контрольные задания.
4.1. Разработать алгоритм и составить программу вычисления следующего выражения.
4.1.1. , x = 1..5, h = 1.
4.1.2. , x = 1..5, h = 0.5.
4.1.3. , x = -pi/2..pi/2, h = pi/4
4.1.4. , x = -pi..pi, h = pi/2
4.1.5. y = x3 – 2x, x = -3..3, h = 1
4.1.6. y = 2x2 + x3, x = 3..-3, h = -1
4.1.7.
4.1.8.
4.1.9.
4.1.10.
5. Рекомендуемая литература
5.1.Бородич Ю.С. и др.
Паскаль для персональных компьютеров.- Мн.: Высш.шк.: БФ ГИТМП
«НИКА», 1991.- с.39-43.
Практическое занятие № 5
Тема: Основы алгоритмизации и программирования.
Тема занятия: Использование алгоритмических структур в графике.
Цель: Сформировать знания об использовании графических возможностей языка программирования.
Техническое обеспечение: ПЭВМ
Программное обеспечение: Паскаль.
Место проведения занятий: Лаборатория ПЭВМ
Продолжительность занятия: 4 часа.
1. Краткая справка.
Всякое графическое изображение представляет собой совокупность точек – пикселей. Каждая из них задается своими координатами и цветом.
Количество отображаемых на экране пикселей называют разрешающей способностью (разрешением) графического экрана. Разрешение экрана может быть различным в зависимости от типа графического адаптера и графического драйвера.
Графический адаптер -печатная плата, на которой размещаются электронные компоненты видеодисплея.
Графический драйвер -специальная программа, которая осуществляет управление графическим адаптером.
Графика в стандартном видеорежиме среды программирования Borland Pascal, поддерживает следующие параметры экрана компьютера: 640 х 480 х 16 ( 640 точек по горизонтали, 480 точек по вертикали, 16 цветов).
Каждая точка (позиция) экрана задается номером пикселей по горизонтали и вертикале.
Например, пиксель (150, 120) находится в 150-м столбце и 120-й строке.
Для управления графическим экраном предназначен модуль GRAPH. Сам модуль представляет собой отдельный файл Graph.tpu. При программировании он должен быть доступным для компилятора. Также доступным (для запуска программ) должен быть драйвер EGAVGA.bgi. Файл Graph.tpu хранится в папке UNITS, а файл EGAVGA.bgi – в папке BGI, вложенной в папку BP.
Для работы в графическом режиме, необходимо выполнить следующие действия:
- Подключить модуль GRAPH – USES GRAPH;
- Выполнить инициализацию графического режима (переход в графический режим):
А) в разделе описания переменных описать две целочисленные переменные для указания драйвера и режима работы графического адаптера, например gd и gr соответственно: Var gd, gr: Integer;
Б) в разделе операторов установить графический режим с помощью процедуры INITGRAPH:
….
Begin
Gd:=DETECT;
INITGRAPH (gd, gr, '');
- Выполнить графические построения.
- В конце программы выполнить возврат в текстовый режим с помощью процедуры CLOSEGRAPH:
….
Readln; {задержка результата на экране монитора}
CloseGraph;
End.
Примечание: Общий вид процедуры INITGRAPH:
InitGraph (драйвер, режим, путь);
Здесь
«путь» - полный путь к папке, в которой хранится нужный графический драйвер. Если графический драйвер скопирован в текущую рабочую папку, путь представляется как «пустая строка».
Для задания типа драйвера можно использовать режим автоопределения DETECT.
При инициализации графического режима можно написать конкретный путь к файлам драйверов, например:
InitGraph (драйвер, режим, ' С:/BP/BGI ');
В этом случае предварительное копирование файлов Graph.tru и EgaVga. bgi в рабочую папку не требуется.
Можно также соответствующим образом настроить среду программирования BP:
для этого в режиме среды Options – Directories – Unitdirectories указывается каталог, в котором размещаются требуемые файлы; например:
C:/BP/Units; /BP/BGI.
Создание изображений
Задание цвета
Прежде чем приступить к рисованию, художник готовит чистый холст и краски. При рисовании на языке Паскаль холст (фон рисунка) можно очистить с помощью процедуры ClearDevice; При этом холст заполняется фоновым цветом (по умолчанию черным).
Для выбора цвета фона, на котором будет выполняться рисунок, используется процедура SetBkColor:
SetBkColor (номер цвета);
Эта процедура изменяет цвет фона, не изменяя изображений (в отличие от процедуры ClearDevice, которая стирает все изображения).
Для выбора цвета изображения используется процедура SetColor:
SetColor (номер цвета);
Примечание:
- При инициализации графического режима экран автоматически очищается (заполняется фоновым цветом).
- В программе вначале задается цвет изображения, и лишь затем используются средства для получения этого изображения!
Например процедурой SetColor (4);
Цвета (0 – черный, 1 – синий, 2 – зеленый, 3 – голубой, 4 – красный, 5 – фиолетовый, 6 – коричневый, 7 – светло-серый, 8 – темно-серый, 9 – ярко-синий, 10 – ярко-зеленый, 11 – ярко-голубой, 12 – розовый, 13 – малиновый, 14 – желтый, 15 – белый, 128 – мерцание символа)