Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методические указания Дремук - 1 семестр.doc
Скачиваний:
25
Добавлен:
04.03.2016
Размер:
1.58 Mб
Скачать

Лабораторная работа 1 Работа в среде Turbo Pascal. Программирование линейных и разветвляющихся алгоритмов Цели:

  • познакомиться с интегрированной средой разработки Turbo Pascal;

  • научиться программировать линейные и разветвляющиеся алгоритмы.

Процедуры ввода/вывода языка Turbo Pascal

Для выполнения ввода/вывода информации в языке Turbo Pascal существуют следующие стандартные процедуры:

Read(x1, x2, x3) — ввод значений переменных ,,.

Write(x1, x2, x3) — вывод значений переменных ,,.

WriteLn(x1, x2, x3) — вывод на экран значений переменных ,,с переходом курсора на новую строку.

Например, Write('x1=') — выводит на экран строку «x1=».

Процедура вывода также выводит на экран результат вычисления выражения, заключённого в скобках. Например, Write(х1 + х2) — выводит на экран сумму значений переменных и.

Оператор присваивания

Оператор присваивания — это один из основных операторов языка Turbo Pascal. В левой части указывается имя переменной, правая часть — это выражение того же типа, что и переменная. Символы «:=» связывают левую и правую части оператора присваивания и означают «присвоить значение». Данные символы рассматриваются как один специальный символ и пишутся слитно.

Например: а := b + c;

Условный оператор

Условный оператор предназначен для изменения порядка выполнения операторов в зависимости от истинности или ложности некоторого условия. Это условие записывается в виде логического выражения, а действие, которое нужно выполнить, задается в виде последовательности операторов. Существует две конструкции оператора ветвления — простая и расширенная.

Расширенная конструкция:

If <условие> then <оператор 1> else <оператор 2>;

Простая конструкция:

If <условие> then <оператор>;

Примеры решения задач

  1. Найти сумму двух чисел.

Program Sum;

Var x, y, Summa: Real;

Begin

Write(‘Введите числа x и y: ’);

Read(x, y);

Summa := x + y;

WriteLn(‘Сумма чисел x и y равна ’, Summa);

End.

  1. Вывести на экран максимальное из этих чисел и.

Program Maximum;

Var x, y, max: Real;

Begin

Write('Введите числа х и у ');

Read(x, y);

If x > y then max := x else max := y;

Write('Максимальное число = ', max);

End.

Задания

Задание 1.

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

Таблица 1.1 — Варианты заданий

Вариант

Функция

Значения параметров

1

; ;

2

;

3

; ;

4

5

;

6

; ;

7

; ;

8

; ;

9

; ;

10

;

11

;

12

; ;

Задание 2.

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

Таблица 1.2 — Варианты заданий

Вари-ант

Функция

Вари-ант

Функция

1

7

2

8

3

9

4

10

5

11

6

12

Требования к отчету

Отчет предоставляется преподавателю в электронном варианте и должен содержать:

  • название работы, постановку цели, вывод;

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

  • ответы на контрольные вопросы, указанные преподавателем.

Контрольные вопросы

  1. Какую структуру имеет программа на Языке Turbo Pascal?

  2. Назовите основные процедуры ввода\вывода языка Turbo Pascal.

  3. Каково назначение оператора присваивания?

  4. Какую конструкцию имеет условный оператор If?

Лабораторная работа 2

Программирование циклических алгоритмов

Цели:

  • научиться программировать циклические алгоритмы.

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

Имеется три вида циклических алгоритмов: цикл с предусловием (цикл While), цикл с постусловием (цикл Repeat) и цикл с заранее заданным числом повторений (цикл For).

Оператор Repeat организует выполнение цикла, состоящего из любого числа операторов, с заранее неизвестным числом повторений. Тело цикла выполняется хотя бы один раз. Выход из цикла осуществляется, если условие выполнения окажется истинным. Структура оператора Repeat имеет вид:

Repeat

<Оператор 1>;

<Оператор 2>;

……………….

<Оператор N>;

Until <условие>;

Оператор While организует выполнение цикла, состоящего из любого числа операторов, с заранее неизвестным числом повторений. Выход из цикла осуществляется, если условие выполнения окажется ложным. Так как истинность логического выражения проверяется в начале каждого повтора, тело цикла может не выполняться ни разу. Структура оператора While имеет вид:

While <условие> do <тело цикла>.

Оператор For организует выполнение цикла с заранее заданным числом повторений. Выполнение очередного повтора включает в себя сначала выполнение оператора, а затем присваивание переменной цикла следующего значения. Существует два варианта оператора цикла For.

For <переменная> := <нач. знач.> to <кон. знач.> do <оператор>;

For <переменная> := <нач. знач.> downto <кон. знач.> do <оператор>;

Первая разновидность цикла при каждой итерации увеличивает значение переменной на единицу, вторая – уменьшает.

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