Файл: Лабораторная работа Создание линейного алгоритма 5 Лабораторная работа Решение задач с линейным алгоритмом 7.docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 29.04.2024

Просмотров: 150

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

СОДЕРЖАНИЕ

Интерфейс программы

Функциональные клавиши

Структура программы на языке Turbo Pascal

Лабораторная работа № 2. Решение задач с линейным алгоритмом

Лабораторная работа № 3. Обработка строковых и символьных переменных

Лабораторная работа № 4. Обработка целочисленных данных

Лабораторная работа № 5. Создание разветвляющего алгоритма

Лабораторная работа № 6. Решение задач с разветвляющимся алгоритмом

Лабораторная работа № 7. Использование оператора выбора CASE.

Лабораторная работа № 8. Генератор случайных чисел

Лабораторная работа № 9. Использование цикла с параметром

Лабораторная работа № 10. Использование цикла с предусловием

Лабораторная работа № 10. Использование цикла с предусловием

Лабораторная работа № 11. Решение задач с использованием циклического алгоритма

Лабораторная работа № 12. Использование цвета

Лабораторная работа № 13. Создание меню

Лабораторная работа № 14. Обработка одномерного массива

Лабораторная работа № 15. Решение задач на использование одномерных массивов

Лабораторная работа № 16. Обработка двумерного массива

Лабораторная работа № 17. Решение задач с использованием двумерных массивов

Лабораторная работа № 18. Использование процедур

Лабораторная работа № 19. Использование функций

Лабораторная работа № 20. Графические возможности Turbo Pascal

Лабораторная работа № 21. Работа с файлами

Лабораторная работа № 22. Задания для самостоятельной работы

Лабораторная работа № 18. Использование процедур



Процедуры применяются для сокращения объема программы и выполнения часто повторяющихся действий в программе. Процедура по структуре очень похожа на структуру всей (основной) программы:


Procedure название (переменные : тип данных);

Var переменные : тип данных;

Begin

……

……

……

End;


Переменные, которые указываются после названия – это те переменные, значения которых берутся из основной программы.

Переменные, которые указываются после var, используются только внутри самой процедуры.

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


1 вариант

2 вариант

Program q;

Uses crt;

{--------------------------------}

Procedure summ(x,y,z:real);

Begin

z:=x+y;

writeln('Summa = ', z:6:2);

end;

{--------------------------------}

Var a,b,s:real;

Begin

clrscr;

writeln('Vvedite 2 chisla');

Readln(a);

Readln(b);

summ(a,b,s);

readln;

end.


Program q;

Uses crt;

{------------------------------}

Procedure summ(a,b:real);

var summa:real;

Begin

summa:=a+b;

writeln('Summa = ', summa:6:2);

end;

{-------------------------------}

Var a,b:real;

Begin

clrscr;

writeln('Vvedite 2 chisla');

Readln(a);

Readln(b);

summ(a,b);

readln;

end.

Задание для самостоятельной работы:


  1. Написать программу с использованием процедуры для вычисления суммы четырех действительных чисел.

  2. Написать программу с использованием процедуры для вычисления выражения

  3. Написать программу с использованием процедуры для поиска максимального числа из двух действительных чисел, которые вводятся с клавиатуры.

  4. Дано 2 числа. Если первое число больше второго, то вычислить сумму чисел. Если второе число больше первого, то вычислить произведение чисел. В случае равенства чисел не выполнять никаких вычислений. (Для вычисления суммы и произведения использовать процедуры).

  5. Одномерный массив K(20) заполнен случайными числами от -20 до +20. Вывести массив на экран. Определить, количество отрицательных, количество положительных, количество четных, количество нечетных элементов. Результаты вывести на экран и записать в текстовый документ. Обработку массива выполнить в отдельной процедуре.

  6. Написать программу, состоящую из трех подпрограмм и основной программы. Подпрограммы должны организовывать ввод чисел, вычисление их суммы и вывод результата.



Лабораторная работа № 19. Использование функций



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

Переменные, которые указываются после var, используются только внутри самой функции.

Функцию можно вызвать из основной программы по ее названию. Функцию можно вызвать любое количество раз. Идентификаторы переменных основной программы и функции могут быть разные или одинаковые.
Значение функции должно храниться в какой-либо переменной и ее можно использовать для последующих вычислений!
Далее приведены два варианта использования функции, которая вычисляет сумму двух действительных чисел.


1 вариант

2 вариант

program dex;

uses crt;

var a,b,s:real;

{-----------------------------------}

function summa(x,y:real):real;

begin

summa:=x+y;

end;

{-----------------------------------}

begin

clrscr;

writeln('Vvedite 2 chisla');

readln(a,b);

s:=summa(a,b);

writeln ('summa chisel = ', s:6:2);

readln;

end.

program dex;

uses crt;

var a,b,s:real;

{-----------------------------------}

function summa:real;

var x,y:real;

begin

writeln('Vvedite 2 chisla');

readln(x,y);

summa:=x+y;

end;

{-----------------------------------}

begin

clrscr;

s:=summa;

writeln ('summa chisel = ', s:6:2);

readln;

end.


Задание для самостоятельной работы:


  1. Написать программу с использованием функции для вычисления суммы четырех действительных чисел.

  2. Написать программу с использованием функции для вычисления выражения . Функцию использовать для вычисления выражения (x2+1)

  3. Написать программу с использованием функции для вычисления и . С помощью функций вычислить выражение: t:= -

  4. Одномерный массив K(20) заполнен случайными числами от -20 до +20. Вывести массив на экран. Определить максимальное, минимальное значение, количество нулевых элементов. Результаты вывести на экран и записать в текстовый документ. Использовать для обработки массива функции.

  5. Вычисление факториала числа N.

  6. Написать программу, которая вычисляет периметр треугольника, если известны координаты его вершин. Формулу для вычисления расстояния (где x1, у1; x2, y2 — координаты точек ) оформить в виде подпрограммы.





Лабораторная работа № 20. Графические возможности Turbo Pascal



Для формирования графических изображений предназначен стандартный библиотечный модуль graph. В нем содержится 79 графических процедур, функций, десятки стандартных констант и типов данных. Все они составляют единый комплекс средств, позволяющих разрабатывать программные продукты.
Запуск графической системы:
USES GRAPH {подключение модуля graph}

VAR DR, MD: INTEGER; {описание переменных driver (драйвер) и mode (режим) для определения режима работы графического системы}

BEGIN

DR:=DETECT; {автоматический подбор драйвера}

INITGRAPH (DR, MD,’C:\PROGRAM\TP\BGI’); {инициализация граф. системы}

………………………….

{окончание работы графической системы}

CLOSEGRAPH

Процедуры построения графических примитивов
Все изображения, построенные в графическом режиме, состоят из точек (пикселей). Для построения изображения на экране используется система координат. (x=640, y=480)


1. Вывод точки осуществляется процедурой:

PutPixel (x,y,color); - x,y – координаты, color – цвет
Например:PutPixel (10,10,2); - вывод точки на экран с координатами 10,10 зеленого цвета

PutPixel (10,100,Magenta); - вывод точки на экран с координатами 10,100 малинового цвета
Цветовая шкала

Цвет

Код

Цвет

Код

Black - черный

0

DarkGray – темно-серый

8

Blue – синий

1

LightBlue – ярко-голубой

9

Green – зеленый

2

LightGreen – ярко-зеленый

10

Cyan – бирюзовый

3

LightCyan – ярко-бирюзовый

11

Red – красный

4

LightRed – ярко-красный

12

Magenta – малиновый

5

LightMagenta – ярко-малиновый

13

Brown – коричневый

6

Yellow – желтый

14

LightGray – светло-серый

7

White - белый

15



2. Построение линии выполняется процедурой:

Line (x1,y1,x2,y2); - x1,y1 – rкоординаты начала линии, x2,y2 – координаты конца линии
Также для построения линий используются еще 2 процедуры:


  • LineTo (x,y:integer); - построение линии из точки текущего положения в точку с координатами x,y

  • LineRel (dx,dy:integer); - строит линию из точки текущего положения в точку, смещенную на dx по оси x, dy по оси y.


3. Построение прямоугольника

Rectangle (x1, y1, y1, y2); x1,y1 – координаты левого верхнего угла прямоугольника,x2,y2 – координаты правого нижнего угла прямоугольника.
4. Построение закрашенного прямоугольника

Bar (x1, y1, x2 ,y2 : integer);
5. Построение окружности

circle (x,y,r); x,y – координаты центра, r – радиус
6. Построение дуги

Arc (x, y : integer; StAngle, EndAngle, Radius : word );

x, y - rкоординаты центра, StAngle, EndAngle – начальный и конечный углы дуги, Radius – радиус дуги
7. Построение эллипса и эллипсовидных дуг

ellipse (x,y: integer; StAngle, EndAngle : word ; xr , yr : word);

x,y – координаты центра, StAngle, EndAngle – начальный и конечный углы эллипса, xr, yr – горизонтальная и вертикальная оси)

TP позволяет вычерчивать линии разного стиля: тонкие, широкие, сплошные, штриховые, пунктирные и т.д.

Для установки стиля при построении графических примитивов используется процедура:
SetLineStyle (LineStyle:word;Pattern:word;Thckness:word); - LineStyle – стиль линии, Pattern – образец, Thckness – толщина линии.
Если используется стандартный образец линии, то параметр Pattern=0.
Стиль линии Толщина линии

Константа

Значение

Описание

Константа

Значение

Описание

SolidLn

0

Непрерывная линия

NormWidth

1

Нормальная толщина (1 пиксел)

DottedLn

1

Линия из точек

ThickWidth

3

Жирная линия (3 пикселя)

CenterLn

2

Линия из точек и тире










DashedLn

3

Штриховая линия










UserBitLn

4

Тип пользователя