Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
MED_INFORMATIKA.docx
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
425.49 Кб
Скачать

Задание 3. Алгоритм Евклида.

Алгоритм Евклида используется при подсчете НОД (наибольшего общего делителя) двух натуральных чисел. Этот алгоритм базируется на утверждении о том, что:

Н

ОД(А, В) = А, если А = В

НОД(А, В) = НОД(А, ВА), если А < В

НОД(А, В) = НОД(А  В, В), если А > В

При этом программа по существу сводится к повторению условного оператора.

Program Evklid;

var a, b: integer;

begin

Writeln ('Введите числа a и b ');

read (a,b);

while (a < > b) do

if a > b then a:= a  b

else b:= b  a;

writeln ('НОД=', a)

end.

  1. Запустите Turbo Pascal.

  2. В окне редактирования наберите текст программы.

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

  4. Сохраните программу под именем Evklid.

Задание 4. Оператор цикла с постусловием

Оператор цикла с постусловием имеет вид:

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

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

……..

<оператор N>

Until <условие>;

О ператор организует выполнение нескольких операторов неизвестное заранее число раз. Тело цикла выполняется до тех пор, пока условие ложно, выполнение прекращается, когда условие становится истинным (см. рис.6). Оператор цикла с постусловием всегда выполняется хотя бы один раз.

Рис. 6. Блок-схема оператора цикла с постусловием

Составить программу на языке Turbo Pascal для вывода значений функции на отрезке [a, b] с шагом h, используя цикл с постусловием.

  1. Запустите Turbo Pascal.

  2. В окне редактирования наберите текст программы:

Program Tab_2;

var a, b, h, x, y: real;

begin

Writeln ('Введите значения a, b, h');

Read (a, b, h);

x:=a;

Repeat

y:=x*(1+exp(-x*x));

Writeln ('x=', x:6:2, ' y=', y:6:2);

x:=x+h

Until x>b

end.

  1. Откомпилируйте программу.

  2. Запустите программу на выполнение.

  3. Сохраните программу на диске.

Задание 5. Решение задач по теме

Самостоятельно составьте программу игры "Угадай число" и программу нахождения НОД двух целых чисел, используя оператор цикла с постусловием.

Лабораторная работа №5. Программирование циклов с параметром

Цель работы: Овладеть навыками программирования на языке Turbo Pascal алгоритмов циклической структуры

Существует две формы оператора цикла с параметром:

For <параметр>:=<начальное знач.> To <конечное знач.>

Do <оператор>;

For <параметр>:=<конечное знач.> DownTo <начальное знач.>

Do <оператор>;

Операторы цикла For организуют выполнение одного оператора известное заранее число раз. Если в цикле требуется выполнить несколько операторов, то из них нужно организовать составной оператор. В ходе выполнения цикла значения параметра изменяется от начального до конечного с шагом 1 (для цикла For…To) или от конечного до начального с шагом -1 (для цикла For…Downto). Тип начального и конечного значений должен совпадать с типом параметра цикла. Выход из цикла осуществляется при достижении параметром конечного (или соответственно начального) значения.

Задание 1. Нахождение суммы

Составить программу на языке Turbo Pascal для вычисления значения суммы .

  1. Запустите Turbo Pascal.

  2. В окне редактирования наберите текст программы:

Program Summa;

var i, n, s: integer;

begin

Writeln ('Введите значение n');

Read (n);

s:=0;

For i:=1 To n

Do s:=s+(i*i*i 1);

Writeln ('s=', s : 6);

end.

  1. Запустите программу на выполнение.

  2. Сохраните программу на диске.

  3. Самостоятельно составьте программу нахождения суммы для произвольного значения n. (Проверка: для n = 15 сумма должна быть равна 3.3182289932Е+00 или 3.318).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]