- •Лабораторная работа № 4
- •Var X , y , d : real ; { Описание переменных }
- •Var X , y , d : real ; { Описание переменных }
- •2: WriteLn ;
- •Var X , t , z : real ; { Описание переменных }
- •Var a , b , X , y , z , c : real ; { Описание переменных }
- •6. Вид печати:
- •Var X : Integer; { Описание переменных}
- •6. Вид печати:
- •Var X : Integer; { Описание переменных }
- •6. Вид печати:
- •Варианты задания
- •Самостоятельная работа (дополнительно)
Лабораторная работа № 4
Тема – программирование разветвляющихся вычислительных процессов с использованием операторов, реализующих базовые структуры ветвления.
Цель работы - освоить на практике программирование несложных разветвляющихся вычислительных процессов, используя для этого простейшие операторы управления, в частности условный оператор и оператор безусловного перехода.
Задание 1.
Выполните учебные примеры.
ПРИМЕР 1. Составить программу вычисления y по формуле
при заданном значении x. Напечатать значения x и y.
Указание. Программу составить двумя способами:
а) с помощью условного оператора;
б) с помощью оператора безусловного перехода.
Решение.
1. Расчётные формулы:
2. Тесты для проверки программы:
3. Исходные данные: x = 0,5 ==> 0.5;
x = 0,0 ==> 0.0;
x = - 0,5 ==> -0.5;
4. Блок - схема:
5. Программа:
Program Prim1 ; { Разветвляющийся вычислительный процесс}
{ С помощью условного оператора }
Var X , y , d : real ; { Описание переменных }
Begin {Начало основного блока}
WriteLn;
WriteLn(' Введите значение x');
ReadLn(x) ; { Ввод x }
d := sin(x) ; { Вычисление d }
if x>0 then y := d / x { Вычисление y для случая x>0 }
else y := Sqrt(1.0 + d*d) ;{ Вычисление y для случая x<=0}
WriteLn ;
WriteLn(' x=',x:5:2,' y=',y:8:4); { Вывод x , y }
End. { Конец программы}
6. Вид печати:
x= 0.50 y= 0.9589
x= 0.00 y= 1.0000
x=-0.50 y= 1.1090
Program Prim1 ; { Разветвляющийся вычислительный процесс}
{ С помощью оператора безусловного перехода }
Var X , y , d : real ; { Описание переменных }
Label 1,2 ; {Раздел меток}
Begin {Начало основного блока}
WriteLn;
WriteLn(' Введите значение x');
ReadLn(x) ; { Ввод x }
d := sin(x) ; { Вычисление d }
if x>0 then goto 1;
y := Sqrt(1.0 + d*d) ;{ Вычисление y для случая x<=0}
goto 2;
1: y := d / x { Вычисление y для случая x>0 }
2: WriteLn ;
WriteLn(' x=',x:5:2,' y=',y:8:4); { Вывод x , y }
End. { Конец программы}
6. Вид печати:
x= 0.50 y= 0.9589
x= 0.00 y= 1.0000
x=-0.50 y= 1.1090
ПРИМЕР 2. Вычислить z по формуле
при заданном значении x. Напечатать значения x, z.
Решение.
Расчётные формулы:
2. Тесты для проверки программы:
3. Исходные данные: x=-0,5 ==> -0.5;
x =0,0 ==> 0.0;
x=1,0 ==> 1.0;
x=2,0 ==> 2.0;
x=3,0 ==> 3.0;
4. Блок - схема:
5. Программа:
Program Prim2 ; { Пример разветвляющейся программы }