написанные программы / павловская лаба № 3 с отчетом — 1 / Отчет по информатике 3
.doc
Отчет по информатике.
Лабораторная работа №3
Вариант №15.
«Работа с циклами»
Цель:
Написать программу, которая на введенном интервале (от Dn до Dk) аргумента вычисляет значение функции с заданным шагом dX.
Нет
k;=0;
x;=Xn
Да
y:=1
y:=-(0.5*x+2)
y:=sqrt(4-sqr(x+2))
y:=-sqrt(1-sqr(x-1))
y:=-x+2
k:=k+1
x:=x+dX
k:=0
Код программы.
program laboratornaya_rabota3;
uses crt;
var x,y,xn,xk,dx,k : real;
a :boolean;
begin
writeln(' Vvedite Xn, Xk, dX');
readln(Xn, Xk, dX);
if (((xn<xk) and (dx<0)) or ((xn>xk) and (dx>0)) or (dx=0))
then
writeln ('error')
else
begin writeln(''#201''#205''#205''#205''#205''#205''#203''#205''#205''#205''#205''#205''#187'');
writeln(''#186'X '#186' Y'#186'');
k:=0;
x:=xn;
repeat
if (xn<=xk) then a:=(x>=xk);
if (xn>=xk) then a:=(x<=xk);
if ((x<-7) or (x>3)) then writeln('');
if (-7<=x) and (-6>x) then y:=1;
if (-6<=x) and (-4>x) then y:=-(0.5*x+2);
if (-4<=x) and (0>x) then y:=sqrt(4-sqr(x+2));
if (0<=x) and (2>x) then y:=-sqrt(1-sqr(x-1));
if (2<=x) and (3>=x) then y:=-x+2;
if ((x<-7) or (x>3)) then writeln('Znacheniya ne prinadlezhat grafiky')
else
writeln(''#186'' ,x:5:2,''#186'' ,y:5:2 ,''#186'' );
k:=k+1;
x:=x+dx;
if k=15
then
begin
writeln('->');
readkey;
clrscr;
k:= 0 ;
end;
until a ;
end;
writeln(''#200''#205''#205''#205''#205''#205''#202''#205''#205''#205''#205''#205''#188'');
readln;
end.
Результаты:
При:Xn= -7 Xk= 3 dX=1 При:Xn= 3 Xk= -7 dX=-1
|
X -7.00 -6.00 -5.00 -4.00 -3.00 -2.00 -1.00 0.00 1.00 2.00 3.00 |
Y 1.00 1.00 0.50 0.00 1.73 2.00 1.73 0.00 -1.00 0.00 -1.00 |
||
---|---|---|---|---|
|
|
|
X 3.00 2.00 1.00 0.00 -1.00 -2.00 -3.00 -4.00 -5.00 -6.00 -7.00 |
Y -1.00 0.00 -1.00 0.00 1.73 2.00 1.73 0.00 0.50 1.00 1.00 |