Turbo Pascal для начинающих

         

Функция Getlnt предназначена для ввода


{ Решение квадратного уравнения }
function KvadrUr(a,b,c: real; var xl,x2: real): integer; { a,b,c - коэффициенты уравнения } { xl,x2 - корни уравнения } ( значение функции - количество корней
или -1, если неверные исходные данные } var
d: real; ( дискриминант } begin
if a = 0 then KvadrUr := -1 else begin
d:=b*b-4*a*c; if d < 0 then
KvadrUr:=0 { уравнение не имеет решения } else begin if d > О
then KvadrUr:=2 { два разных корня } else KvadrUr:=1; { корни одинаковые } xl:=(-b+Sqrt(d))/(2*a); x2:=(-b-Sqrt(d))/(2*a); end; end; end;
сновная программа } var
a,b,c: real; { коэффициенты уравнения } xl,x2: real; ( корни уравнения } begin
writeln('Решение квадратного уравнения');
writeln('Введите в одной строке коэффициенты и нажмите
'<Enter>'); write('->'); readln(a,b,с); case KvadrUr(a,b,c,xl,x2) of
-1: writeln('Ошибка исходных данных.'); 0: writeln('Уравнение не имеет решения.'); 1: writeln('x=',xl:6:2,' Корни одинаковые.'); 2: writelnГxl=',xl:6:2,' х2=',х2:6:2);
end; readln; end.
uses Crt; var




a:integer; { число, введенное пользователем }
{ Функция Getlnt предназначена для ввода целого
положительного числа, состоящего из одной или двух цифр.
Во время ввода для редактирования может использоваться
<Backspace>.
При нажатии <Enter> функция возвращает введенное число. }
function Getlnt:integer; const
K_BACK=8; { код клавиши <Backspace> }
K_ENTER=13; { код клавиши <Enter> } var
ch:char; { символ }
dec:byte; { код символа }
buf:array[l..2] of char; { введенные цифры }
n:integer; { кол-во введенных цифр }
x,у:integer; { положение курсора } begin
buf[1]:=' '; buf[2]:=' ';
then
n:=0; repeat
ch:=Readkey; dec:=ord(ch);
if (ch>='0') and (ch<='9') and (n<2) begin
write(ch); n:=n+l; buf[n]:=ch; end else
if (dec=K_BACK) and (n>0) then begin
n:=n-l; x:=WhereX; y:=WhereY; GotoXY(x-l,y); write(' '); GotoXY(x-l,y); end;
until (n>0) and (dec=K_ENTER); { преобразуем введенную строку в число } if n=2
then Getlnt:=(ord(buf[1])-48)*10+ord(buf[2])-48 else Getlnt:=ord(buf[1])-48; end;
begin
ClrScr;
writeln('*** Демонстрация работы функции Getlnt. ***');
writeln;
writeln('Функция Getlnt предназначена для ввода целого
'положительного числа,');
writeln('состоящего из одной или двух цифр.'); writeln('Во время ввода для редактирования может ',
'использоваться <Backspace>.'); writeln('При нажатии <Enter> функция возвращает ',
'введенное число.'); writeln;
writeln('Введите число и нажмите <Enter>'); write('->');
teln('ftnH завершения работы программы нажмите ',
1<Enter>'); readln; Halt(l); end;
{ полотнище флага }
SetFillStyle(SolidFill,LightGray); { сплошная заливка
серым цветом } Ваг(80,80,200,135);
{ кольца }
SetColor(Green); ( зеленое }
Circle(100,100,15);
SetColor(Black); { черное }
Circle (140,100,15);
SetColor(Red); { красное }
Circle(180,100,15);
SetColor(Yellow); { желтое }
Circle(120,115,15);
SetColor(Blue); { синее }
Circle(160,115,15);
readln; CloseGraph; end.

Содержание раздела