Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторные работы_програмирование.doc
Скачиваний:
14
Добавлен:
19.11.2018
Размер:
508.42 Кб
Скачать

Задания для самостоятельного выполнения

Задание 1. Известны количество жителей в государстве и площадь его территории. Определить плотность населения в этом государстве. Составить программу и зарисовать блок-схему.

Задание 2. Составить программу вычисления длины окружности. Зарисовать блок-схему.

Задание 3. Составить программу, которая меняет местами две последние цифры введенного трехзначного числа. Зарисовать блок-схему.

Задание 4. Найти площадь кольца по заданным внешнему и внутреннему радиусу. Составить блок-схему и записать программу.

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

  1. Что такое программа?

  2. Как запустить Pascal?

  3. Как осуществляется копирование текста программы в программу Word?

  4. Как оформляется оператор вывода на экран, ввода?

  5. Почему перед оператором ввода в программе целесообразно записывать оператор вывода?

  6. Как оформляется арифметическое выражение в алгоритмическом языке?

  7. Какие знаки арифметических операций используются в арифметических выражениях? Укажите приоритет выполнения арифметических операций при расчете значения выражения?

  8. Как оформляется оператор присваивания? Как он работает?

  9. Какие основные разделы могут присутствовать в программе, написанной на языке Pascal? Важен ли порядок следования разделов?

  10. Главные элементы любой программы?

  11. Типы переменных?

  12. Для чего служит операция mod, div?

  13. Что такое блок-схема?

Лабораторная работа № 4 «Алгоритм как модель деятельности: создание программ с ветвлениями на языке Pascal 7.0»

Цель: научиться записывать алгоритмы с условиями на языке блок-схем и составлять программы с условиями в среде Turbo Pascal 7.0.

Выполнив данную работу, Вы должны уметь:

  1. создавать, сохранять и отлаживать программы с условиями в среде Turbo Pascal 7.0;

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

Краткий теоретический материал

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

Краткая форма оператора условия

Полная форма оператора условия

if условие then оператор1;

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

Описание условия в блок-схеме

Любая встретившаяся часть ELSE соответствует ближайшей к ней «сверху» части THEN условного оператора. Перед ELSE не ставится точка с запятой, так как это один оператор. Если за словами ELSE и THEN необходимо выполнить группу операторов, то тогда используются операторные скобки begin … end, а такая структура называется вложенной:

Begin

If условие then begin

Оператор1;

Оператор2;

оператор n

end

else begin

Оператор1;

Оператор2;

оператор n

end;

End.

Логические выражения в алгоритмах и программах

Часто при решении задач переменные связаны отношениями: =, ≠, ≤, ≥. Если условие выполняется, то говорят, что соответствующее выражение истинно (логическая единица), если не выполняется – выражение ложно (логический ноль). Речь идет о логическом выражении. Для построения сложных условий в Паскале имеются логические операции and (и), or (или), not (не). Построим таблицы истинности для этих операций.

X

Y

X and Y

X or Y

X

notX

0

0

0

0

0

1

0

1

0

1

1

0

1

0

0

1

1

1

1

1

Пусть требуется определить принадлежит ли точка х отрезку [a,b]. Это условие в математике записывается в виде двойного неравенства a≤x≤b. В Паскале двойное неравенство записывается с помощью логических операций: (x>=a) and (x<=b). Если точка не принадлежит отрезку, то запись будет следующий вид иметь: not((x>=a) and (x<=b)) или (x<a) or (x>b). Отношения, между которыми стоит логическая операция, заключаются в скобки.

Составьте программу для вычисления Y (кусочная функция) по заданному X. Y=

Листинг программы

Program z21;

Var x, y: real;

Begin

Writeln(‘Введите x= ’);

Readln(x);

If x<=10 then y:=210 else y:=x*x*x;

Writeln(‘при х= ’, х, ‘y= ’, y);

End.

Зарисуем блок-схему.

Составьте программу вычислений значений функции:

Листинг программы

Program z22;

Var x, y: real;

Begin

Writeln(‘введите x= ’); Readln(x);

If x>5 then y:=5*x-7

else begin

if (x>=-3) and (x<=5) then y:=sin(x)

else y:=11; end;

Writeln(‘при х= ’, х, ‘y= ’, y);

End.

Выделенным шрифтом отмечено описание кусочной функции y(x) при помощи оператора условия ifthenelse (используется два оператора условия, а не три, так как непринадлежность х к двум промежуткам по логике означает принадлежность к третьему промежутку и вычисление по третьей формуле).

Аналогично решается задача вычисления значений функции с учетом области определения.