лабораторная работа / лаб2
.docМИНИСТЕРСТВО ОБЩЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ
САРАТОВСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕСИТЕТ
БАЛАКОВСКИЙ ИНСТИТУТ ТЕХНИКИ, ТЕХНОЛОГИИ И УПРАВЛЕНИЯ
КАФЕДРА СММ
Отчет по лабораторной работе №2
по дисциплине
Основы алгоритмизации и программирования
Выполнил ст. гр. УИТ-22
Балаково 2004
Цель работы: овладение практическими навыками разработки алгоритмов и программ, разветвляющейся и циклической с заданным числом повторений.
Задание: Вычислить и вывести на экран значения заданной функции. Вычислить многократно значения функции при изменении аргумента в указанном диапазоне и с заданным шагом. Организовать вывод значения аргумента и вычислить значения функции в виде таблицы.
,
1.Цикл с предусловием While:
Блок-схема: Программа на языке
Turbo Pascal:
program lab21(input,output);
var x,y,x0,xk,dx:real;
begin
writeln('Введите x0,xk,dx');
read(x0,xk,dx);
x:=x0;
while x<=xk do
begin
if x>3.5 then y:=sin(x)*0.4343*ln(x)
else y:=sqr(cos(x));
writeln('x=',x:8:2,' y=',y:8:4);
x:=x+dx;
end;
end.
1.Цикл с послеусловием Repeat:
Блок-схема: Программа на языке
Turbo Pascal:
program lab22(input,output);
var x,y,x0,xk,dx:real;
begin
writeln('Введите x0,xk,dx');
read(x0,xk,dx);
X=X0
repeat
нет
else y:=sqr(cos(x));
да
x:=x+dx;
until x>xk;
end.
Y=sin (x)*lg (x) x=x+dx
нет
да
3. Цикл с определенным числом повторений FOR TO DO:
Программа:
program lab23(input,output);
var x,y,x0,xk,dx:real;
begin
writeln('Введите x0,xk,dx');
read(x0,xk,dx);
x:=x0;
for x:=x0 to xk do
begin
if x>3.5 then y:=sin(x)*0.4343*ln(x)
else y:=sqr(cos(x));
writeln('x=',x:8:2,' y=',y:8:4);
x:=x+dx;
end;
end.
Блок-схема:
X=X0
нет да
Y=sin (x)*lg (x)
x=x+dx
Во всех трех случаях получена одинаковая таблица x и y:
x= 2.00 y= 0.1732
x= 2.25 y= 0.3946
x= 2.50 y= 0.6418
x= 2.75 y= 0.8543
x= 3.00 y= 0.9801
x= 3.25 y= 0.9883
x= 3.50 y= 0.8770
x= 3.75 y= -0.3281
x= 4.00 y= -0.4556
x= 4.25 y= -0.5624
x= 4.50 y= -0.6385
x= 4.75 y= -0.6762
x= 5.00 y= -0.6703