1. Пример простейшей программы на Turbo Pascal (программы с линейным
алгоритмом) - вычисление площади треугольника по формуле Герона:
S= , где a, b, с – стороны треугольника, полупериметр р = ;
Программа
Пояснения к данной программе
Program Geron;
var a,b,c,p,S,Y:real;
begin
writeln('Вычисление площади треугольника по формуле Герона.');
writeln('Введите стороны треугольника a, b, c:');
readln(a,b,c);
p:=(a+b+c)/2;
S:=sqrt(p*(p-a)*(p-b)*(p-c));
writeln('Площадь треугольника равна: S=', S);
writeln('Для выхода из программы введите число 1.');
readln(y);
end.
Оператор присваивания имеет вид := , например: x:=a+b; b:=1;
Присваивание-это вычислительная операция вида: c:=a+b, заключаю-
щаяся в вычислении выражения, указанного справа, и записи полу-
ченного результата в переменную, указанную слева.
Операторы ввода данных: read(x,y,z), readln(a,b,c).
Второй из операторов (readln) осуществляет построчный ввод данных.
Операторы вывода данных: write(s), writeln(u,v).
Второй из операторов (writeln) осуществляет построчный вывод данных.
Все математические формулы записываются в одну строку. Пример:
S:=sqrt(p*(p-a)*(p-b)*(p-c));
2. Теперь, рассмотрим пример программы с алгоритмической структурой ветвления с использованием логических операций.
Для этого дополним программу вычисления площади треугольника по формуле Герона исследованием существования треугольника, если заданы его три стороны. (Исходные данные должны удовлетворять основному соотношению для сторон треугольника: длина каждой стороны должна быть меньше длин двух других сторон).
Имея возможность в одном условном операторе записывать достаточно сложные логические выражения, мы можем сразу «отфильтровать» все варианты неверных исходных данных. Тогда данную программу можно составить так:
program tangle;
var a,b,c,p,S,Y:real;
begin
writeln('Вычислите площадь треугольника по трем сторонам');
writeln('и проведите его анализ.');
writeln('Введите стороны треугольника a,b,c:');
read(a,b,c);
p:=(a+b+c)/2;
S:=sqrt(abs(p*(p-a)*(p-b)*(p-c)));
if (a>=(b+c)) or (b>=(a+c)) or (c>=(a+b))
then writeln('Треугольник не существует.')
else if (a=b) and (b=c)
then writeln('Треугольник равносторонний, его площадь S=',s)
else if (a=b) or (b=c) or (a=c)
then writeln('Треугольник равнобедренный, его площадь S=',s)
else writeln('Треугольник разносторонний, его площадь S=',s);
if (a*a=(b*b+c*c)) or (b*b=(a*a+c*c)) or (c*c=(a*a+b*b))
then writeln('Треугольник прямоугольный.');
writeln('Для выхода из программы введите число 1.');
readln(Y);
end.
Program Geron ;
var a,b,c,p,S,:real;
begin
writeln('Введите длины сторон треугольника:'); write('а='); readLn(a) ;
write('b='); readLn(b);
write ('c='); readLn(c);
if (a>0) and (b>0) and (c>0) and (a+b>c)
and (b+c>a) and (a+c>b)
then begin
p:=(a+b+c)/2;
S:=Sqrt(p*(p-a)*(p-b)*(p-c));
writeln('Площадь=',S)
end
else writeln('Неверные исходные данные')
End.
3.Пример программы на использование в Turbo Pascal типа данных Boolean
Программа
Пояснения к данной программе
uses crt;
Var a, b : boolean; Begin clrscr; writeln('Логический тип данных Boolean'); writeln; a:=true; b:=false; writeln('a=',a,' b=',b); writeln; writeln('a=',ord(a),' b=',ord(b)); writeln; readln end.
1. Аббревиатура CRT будет расшифровываться по-русски как «электронно-лучевая трубка». И действительно, в модуле CRT реализованы специальные процедуры и функции для работы с текстовой информацией на дисплее, позволяющие:
управлять текстовыми режимами, организовывать окна вывода на экран, настраивать цвета символов на экране, управлять курсором.
Его стандартное местонахождение – системная библиотека TURBO.TPL.
Для подключения модуля достаточно включить его в директиву USES (использовать) в самом начале программы:
USES CRT; {означает: модуль CRT подключен }
При подключении модуля CRT исключаются медленная функция MS DOS и повышается скорость вывода информации на дисплей.
2. ClrScr-сокращенная запись функции реализованной в модуле CRT. Она выполняет процедуру очистки текущего окна на экране.