контрольная работа / вар 09 / контрольная работа №9
.docxСАРАТОВСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
БАЛАКОВСКИЙ ИНСТИТУТ ТЕХНИКИ, ТЕХНОЛОГИИ И УПРАВЛЕНИЯ
ФАКУЛЬТЕТ ВЕЧЕРНЕ-ЗАОЧНЫЙ КАФЕДРА
”УПРАВЛЕНИЯ И ИНФОРМАТИКА В ТЕХНИЧЕСКИХ СИСТЕМАХ”
КОНТРОЛЬНАЯ РАБОТА №1
ВАРИАНТ 09
ПО ДИСЦИПЛИНЕ: «ПРОГРАММИРОВАНИЕ АЛГОРИТМОВ
ЛИНЕЙНОЙ И РАЗВЕТВЛЯЮЩЕЙСЯ СТРУКТУРЫ
НА ЯЗЫКЕ Тuгbо Раscаl».
ВЫПОЛНИЛ: УИТ-2з
Ф.И.О
2000
Цель работы: разработка алгоритмов и программ с линейной и разветвляющейся структурой на языке Тuгbо Раscаl.
Задание 1. Вычислить и вывести на экран значения двух переменных.
,
где m=2, c=-1, t=1.2, b=0.7
Блок-схема алгоритма решения:
Начало
Введите m,c,t,b
Ввод m,c,t,b
Вывод f, z
Конец
Программа, реализующая приведенный алгоритм имеет вид :
Program zadanie_1;
Var
m, c, t, b, f, z : real;
Begin
Writeln ('Введите m,c,t,b');
Read (m,c,t,b);
f := sqrt(m*sin(t)/cos(t)+abs(c*sin(t)));
z := m*cos(b*t*sin(t))+c;
Writeln ( 'f= ',f:8:3,' z= ',z:8:3);
End.
Полученные результаты:
f=
z=
Проверка в математическом редакторе Маthcad:
m:=1 c:=-1 t:=1.2 b:=0.7
Задание 2. Вычислить и вывести на экран значение заданной функции, используя условный оператор if.
,
где a=20.3
Блок-схема алгоритма решения:
Начало
Введите х
Ввод х
нет
да да
Вывод f
Конец
Программа, реализующая приведенный алгоритм имеет вид :
Program zadanie_2;
Const a = 20.3;
Var f,x : real;
Begin
Writeln ( 'Введите x');
Read (x);
If x > 1 then f:= 0.4343*ln(x+1)
else if(x<=1) then f:= sqr(sin(sqrt(abs(a*x))));
Writeln (' f= ',f:8:3);
End.
Проверка в математическом редакторе Маthcad:
а:=20.3
f(2)=0.477
f(0)=0
f(-1)=0.958
f(1)=0.958
Задание 3. Решить задачу с использованием оператора саsе.
Вычислить, значение функции по одной из формул (х ≥ 0):
x + a, x < 10;
х - a, 10 ≤ x ≤ 20;
y= , 20 < x < 30;
+ x, 30 ≤ x < 60;
+ , x ≥ 60.
Программа, реализующая приведенный алгоритм имеет вид :
Program zadanie_3;
Var i: integer;
Begin
Write ('Введите i');
Readln(i);
Case i of
0..10: Writeln('x+a');
10..20: Writeln('x-a');
20..30: Writeln('x*x');
30..60: Writeln('a*a+x');
else Writeln('x*x+a*a');
End;
End.
Блок-схема алгоритма решения:
Начало
Введите i
Ввод i
i < 10
10 ≤ i ≤ 20
30 ≤ i< 60
20 < i < 30
x ≥ 60
x + a
x - a
+ x
+
Конец