1)
program FunctionIFfull;
uses crt;
var
x, y : real;
begin
clrscr;
write('x = ');
readln(x);
if x>=1 then y:= sqrt(3*x+4)
else
if x<=-1 then y:= sqr(x)+4*x
else y:=4*sqr(x)-2*x+3;
writeln('y = ', y:8:2);
readln;
end.
2)
program FunctionIFshort;
uses crt;
var
x, y : real;
begin
clrscr;
write('x = ');
readln(x);
if x>=1 then y:= sqrt(3*x+4);
if x<=-1 then y:= sqr(x)+4*x;
if (x>-1) and (x<1) then y:= 4*sqr(x)-2*x+3;
writeln('y = ', y:8:2);
readln;
end.
Объяснение:
1. Повна команда розгалуження має вигляд
if < логічний вираз > then <команда 1> else < команда 2 >;
2. Коротка команда розгалуження має вигляд
if <логічний вираз > then <команда 1>;
Program n1;
var x,y,z:real;
function arccos(x : real) : real; {это понадобится для теор. кос.}
begin
arccos := 2 * arctan(sqrt((1 - x) / (1 + x)));
end;
procedure ygl( a,b,c: real); {процедура для удобства}
var ga: real;
begin
ga:=arccos((sqr(a) + sqr(b) - sqr(c))/(2 * a* b)) * 180 / pi; {сама теор. кос.}
writeln('угол С= ',ga:5:2);
end;
begin
write('введите сторону а: ');
readln(x);
write('введите сторону b: ');
readln(y);
write('введите сторону c: ');
readln(z);
if(x>=y+z)or(y>=x+z)or(z>=x+y)then writeln('Это не треугольник')
else if x*x+y*y=z*z then {теорема пифагора}
writeln('Это прямоугольный треугольник')
else if (x*x+y*y>z*z)and(x*x+z*z>y*y)and(z*z+y*y>x*x)
then
begin
writeln('Это остроугольный треугольник');
ygl(x,y,z); {вызываем процедуру}
end
else
begin
writeln('Это тупоугольный треугольник');
ygl(x,y,z);
end;
end.