Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Составление программ на Turbo Pascal




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. Она выполняет процедуру очистки текущего окна на экране.

СОДЕРЖАНИЕ ЗАНЯТИЯ.

Самостоятельная работа.

Задание

1. Вызвать Turbo Pascal, набрать вышеуказанные программы и провести анализ

2. Наберите программу, задайте разные значения переменной, например, 1,5 и т.д. Обратите внимание на результат. Измените в программе знак < на знак > и задайте те же значения. Сравните полученные результаты.

program aba;

var x: real;

t: boolean;
begin
read (x);t:=x<round(x); { арифметическая функция round(x) - округление числа}
writeln(t);
end

 

3. Наберите программу, дайте для а и в разные значения,обратите внимание на результат.

Program a1;

Var x,y:Boolean;

A,b:integer;

Begin

Writeln(‘a,b ввести’);

Read(a,b);

X:=true;

Y:=false;

If a>b then writeln (‘a>b-‘,x) else writeln (‘a>b-‘,y);

Readln;

End.

4. Вычислить значения логических выражений:

а) К mod 7=K div 5-1 при К=15; в) not odd(n)при n=0; д) (x*y<>0) and (y>x) при х=2, y=l;

б) odd(trunc(10*P)) при Р=0.182; г) t and (P mod 3=0) при t=true, P=10101; e) a or not b при a=false, b=true.

5. Если a=true и х=1, то какое значение получит логическая переменная d после выполнения оператора присваивания: a) d:=x<2; б) d:=not a or odd(x);

6. При подключении модуля CRT исключаются медленная функция MS DOS и повышается скорость вывода информации на дисплей. Понятно, что чем «медленнее» работает компьютер, тем заметнее будет эффект от подключения модуля CRT. Эту разницу можно увидеть: для чего просмотрите пример двух программ (без запуска)

Пример:

{Программа использует стандартный вывод}

PROGRAM Standart Output;

VAR i: Byte; {счетчик цикла }

for i: = 1 to 100 do Write (‘* Турбо Паскаль*’);

WriteLn

END.

{Программа использует средства модуля CRT}

PROGRAM CRT_Output;

USES CRT;

VAR i: Byte;

BEGIN

for i: = 1 to 100 do Write (‘* Турбо Паскаль*’);

WriteLn

END.

11.2. Работа с преподавателем:

При появлении затруднений или при ошибочных действиях обратиться к преподавателю для исправления ошибок.

К концу занятия показать преподавателю отчет о выполненной работе и получить зачет по данной работе.

11.3. Контроль исходного и заключительного уровня знаний:

Тестирование на компьютере.

Беседа преподавателя со студентом по вопросам самоподготовки.

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...