Тема: Разветвляющиеся программы

Лекция №11

Тема: Операторы языка Pascal . Линейные программы.

Цель: Сформировать и развить умения и навыки составления и записи на языке Раskal линейных программ.

Количество часов – 4часа

Для ввода используются операторы:

Read (b1, b2, ,b n);

Readln (b,b,..,b);

Readln;

Где B1,b2,…, bn-имена переменных, значения которых вводятся.

Оператор read(b1,b2,…,bn); осуществляет ввод данных из стандартного файла INPUT. Типы вводимых данных должны соответствовать типам переменных в списке оператора ввода.

Оператор readln (b1,b2,…,bn); осуществляет ввод данных из стандартного файла INPUT и после выбора значения последней переменной обеспечивает переход к началу новой строки файла. При вводе значений целого и действительного типов операторы READ и READLN игнорируют пробелы между значениями.

Оператор READLN; обеспечивает пропуск одной строки в стандартном файле INPUT и переход к началу новой строки. Ввод переменных логического типа недопустим.

Для вывода информации используются операторы:

WRITE (b1, b2, ,b n);

WRITELN (b1, b2, ,b n);

WRITELN;

Где b1,b2,…, bn-имена переменных, значения которых выводятся.

Оператор WRITE(b1, b2, ,b n); выполняет вывод значений, соответствующих перечисленным именам в стандартный файл OUTPUT, размещая выводимые значения в одной строке.

Оператор WRITELN(b1, b2, ,b n); выполняет вывод значений, соответствующих перечисленным именам в стандартный файл OUTPUT и после вывода последнего значения осуществляется переход к новой строке файла

Оператор WRITELN; обеспечивает пропуск одной строки в стандартном файле и переход к началу новой строки. Имена переменных в списке операторов вывода могут принадлежать к целому, действительному, символьному или логическому типам.

Вещественные данные выводятся в формате с плавающей точкой. Ширина поля вывода в этом случае составляет 18 символов: #.###########E+###, где # - любая десятичная цифра от 0 до 9, например :

0.34430000000Е-01        0,03443

Общий вид записи операторов для вывода значений целого типа:

WRITE (b:m); WRITELN (b:m);

А для вывода действительного типа:

WRITE (b:m:n); WRITELN (b:m:n);

Где B - имя выводимой переменной; m- ширина поле, отводимое под значение и задаваемое константой или выражением целого типа; n- часть поля, отводимого под дробную часть числа.

Операторы программы линейной структуры записываются друг за другом в соответствии с порядком, определяемым алгоритмом. Для записи программы такой структуры необходимы операторы присваивания, ввода исходных данных и вывода результатов вычислений.

 Программа на языке ПАСКАЛЬ оформляется в виде заголовка программы и блока, заканчивающегося точкой.

Заголовок программы имеет вид Program имя (input, output);

Имя программы выбирается пользователем.

Блок программы включает в себя разделы:

описания меток (LABEL);

 определение констант (CONST);

 определение типов (TYPE);

 описание переменных (VAR);

 описание функций и процедур (FUNCTION и PROCEDURE).

Раздел операторов включает в себя операторы, которые записываются в соответствии с

 алгоритмом решения и заключаются, в операторные скобки BEGIN и END.

Описания и определения в разделах заканчиваются символом “;” .

При отсутствии описаний или определений, принадлежащих какому-либо разделу, данный

раздел опускается.

Операторы присваивания .В результате присваивания переменная получает конкретное

значение.

Общий вид оператора:

V : = a ;

Где v- имя переменной (результата); a- выражение.

Выполнение инструкции присваивания заключается в следующем:

·  вычисляется результат выражения, находящегося справа от символа «:=»

·  вычисленное значение записывается в переменную, имя которой стоит слева от

символа «:=»

Например:

Im: = 0;

P: = 1;

Im: = im + 2;

P: = p * im;

Имя переменной и результат выражения должны принадлежать одному типу. Исключение

может составить случай, когда выражение имеет значение целого типа, а имя результата-

действительного типа. Например, для описаний и определений вида

Counts n=100;

Var. Tyrell;

Справедлив оператор присваивания T: = N;

Пример1.

Составить программу для вычисления высот треугольника со сторонами a,b,c, используя

формулы:

где p=(a + b + c)/2;

Исходными данными для решения являются значения длин сторон треугольника- a, b, c. Для

ввода этих значений следует использовать оператор READ. При этом значения а, b, c

должны быть расположены

на одной строке экрана дисплея. В программе используются переменная р для вычисления

 полупериметра и вспомогательная переменная t для исключения повторений.

Вычислительные значения высот ha, hb, hc необходимо вывести со своими именами, каждую

 на одной строке.

Программа имеет вид:

Program hrt ( input, output);

Var a, b, c, p, t, ha, hb, hc : real;

Begin

Read (a, b, c);

P: =(a+b+c)/2;

T: =2*SQRT (p*(p-a)*(p-b)*(p-c));

Ha:= t/a;

Hb:= t/b;

Hc:= t/c;

Writeln(‘Ha=’, Ha);

Writeln(‘Hb=’, Hb);

Writeln(‘Hc=’, Hc);

End.

Пример2.

Составить программу для вычисления значений y и p,

используя расчетные формулы:

             

program prim2;

var a, x, z, y, p, c: real;

Begin

writeln(' введите a, x, z');

read(a, x, z);

y: = a*exp(3* Ln(sin(x*x)/cos(x*x)))+SQRT(z*z/(a*a+x*x));

p:=Ln(a+x*x)+SQR(sin(z/a));

writeln('y=',y:3:2);

write('p=',p:3:2);

End.

Пример3.

Составьте программу вычисления общей поверхности и объема круглого конуса , имеющего

радиус основания R=12,54см и длину образующей L=24,54см. При вычислении используем

равенства:

     

где H-высота конуса, определяемая по формуле

program prim3;

const pi=3.14;

var R,L,H,S,V:real;

Begin

read(L,R);

s:=pi*R*R+pi*R*L;

H:=SQRT(L*L-R*R);

V:=PI*(R*R+r*r+R*r)*H/3;

Writeln(‘ параметры конуса ’);

Writeln(‘R=’,R,’L=’,L,’H=’,H);

Writeln(‘ поверхность конуса ’);

Writeln(‘S=’,S);

Writeln(‘ объем конуса ’);

Writeln(‘V=’,V);

END .

В программе отсутствуют метки, константы, типы, функции и процедуры. Поэтому разделы

определения и описания указанных структур.

Одним из способов, улучшающих восприятие программы, являются применение

комментариев. Комментарий представляет собой текст, вставляемый в программу для

дополнительных пояснений. Комментарии не воспринимаются и не обрабатываются Э.В.М.,

 поэтому они могут быть записаны на русском языке. Текст комментария заключается между

 символами "{" и "}" или "(*" и "*)" и может содержать цифры, буквы, ключевые слова и

специальные символы. Например:(* ПРОГРАММА УПОРЯДОЧЕВАНИЯ ЭЛЕМЕНТОВ

МАССИВА *). Комментарии могут использоваться для пояснения назначения программы,

констант, переменных, разделов программы или для пояснения используемых методов в

алгоритме.

В языке ПАСКАЛЬ символьные переменные и массивы описываются в разделе описания

типов. Описание типов имеет вид:

TYPE <имя> OF CHAR ;

Где <имя>- имя символьной переменной или символьного массива. При этом размеры

массива описываются обычным образом.

ЗАДАЧИ ДЛЯ РЕШЕНИЯ

ЗАДАЧА № 1.

Вычислить для усеченного конуса площадь поверхности

 и объем

ЗАДАЧА № 2.

Составить программу для нахождения значения функции y по формуле.

;

ЗАДАЧА № 3.Составить программу для нахождения значений A и B по формулам:  ; x=1,426  y=-1,22 z=3,5

 

Лекция №12

Тема: Разветвляющиеся программы

Цель: Сформировать и развить умения и навыки составления и записи на языке Раskal разветвляющийся программ.

Количество часов – 4часа

Разветвления в программах возникают при необходимости выбора одного из нескольких возможных путей в решении задачи , который может зависеть от исходных данных или промежуточных результатов. Для организации разветвлений в программах используются операторы перехода, условий и выбора.

Оператор перехода имеет общий вид записи:

GOTO n ;

Где n-метка оператора.

Метка назначается пользователем и представляет собой число без знака, содержащее не более четырех цифр. Используемые в программе метки должны быть описаны в разделе описания меток. Например:

GOTO 120;

GOTO 250;

Эти операторы осуществляют передачу управления оператором, имеющим соответственно метки 120 и250.

Использовать оператор GOTO следует только в редких случаях, например, для выхода к концу программы или процедуры в случае неправильного задания данных или выхода из тела цикла. Неправильное использование оператора GOTO усложняет программу за счёт многократных переходов вперёд или назад по программе, затрудняя её чтение, отладку и проверку на правильность.

Условный оператор имеет два вида записи:

IF b THEN a;

IF b THEN a1 ELSE a2;

Где b – логическое выражение; а, а1, а2 – операторы простые или составные.

Составной оператор представляет собой последовательность операторов, заключённых в ключевые слова BEGIN и END.

Первый вид записи оператора позволяет организовать выполнение оператора а при условии, что логическое выражение имеет значение TRUE, а в противном случае оператор а не выполняется, а выполняется оператор стоящий за условным.

Второй вид записи оператора позволяет производить выполнение оператора а1 в случае, если логическое выражение имеет значение TRUE, и оператора а2 – в противном случае.

Примеры записи операторов:

IF N DIV 2*2=N THEN NI: = N ELSE N2: =N*N;

IF X<0,1 THEN V: = EXP(X);

Условный оператор можно расширить за счёт вложенности новых условий в операторе. Это приводит к сокращению числа операторов, но одновременно снижает наглядность программы. Новое условие может записываться за ключевыми словами THEN и ELSE. По принятому соглашению в языке ПАСКАЛЬ ключевое слово ELSE всегда относиться к ближайшему ему слову IF. Например:

IF b1 THEN a1 ELSE IF b2 THEN a2 ELSE a3.

Пример 1: Составить программу для вычисления значения функции

Z=x3/y, где y= sin nx+0,5.

Для записи программы используются два варианта записи условного оператора.

Вариант 1

PROGRAM USL1(INPUT, OUTPUT);

LABEL 20,30;

VAR N:INTEGER;

X, Y, Z: REAL;

BEGIN

READ (N, X);

Y:=SIN (N*X)+0,5;

IF Y=0 THEN GOTO 20;

Z:=SQR(X)*X/Y;

WRITE (‘Z=’,Z);

GOTO 30;

20: WRITE(‘Y=0’);

30:

END.

 

Вариант 2

PROGRAM USL2(INPUT, OUTPUT);

VAR N:INTEGER;

X, Y, Z: REAL;

BEGIN

READ (N, X);

Y:=SIN (N*X)+0,5;

IF Y=0 THEN WRITE(‘Y=0’)

ELSE BEGIN

Z:=X*X*X/Y;

WRITE (‘Z=’,Z);

END

END.

Пример 2 Составить программу для вычисления функции

ìsinx, если х ;

Z=ícosx, если а<x<b;

îtgx, если x b.

Получить разветвление на три ветви можно различными сочетаниями операторов перехода и условного. Однако в языке ПАСКАЛЬ условный оператор можно наращивать за счёт использования вложенности условий. С использованием одного условного оператора программа имеет вид

PROGRAM UCL3 (INPUT, OUTPUT);

VAR X,A,B,Z:REAL;

BEGIN

READ (X, A,B);

IF X<=A THEN Z:=SIN(X)

ELSE IF X>B THEN Z:=SIN(X)/COS(X)

ELSE Z:=COS(X);

WRITELN(Z)

END.

Пример 3 Составить программу для упорядочивания трёх чисел a, b, c по возрастанию таким образом, чтобы имени а соответствовало наименьшее число, имени b – среднее, а имени с – наибольшее. Программа имеет вид

PROGRAM SORT (INPUT, OUTPUT);

LABEL 10, 20, 30;

VAR A, B, C, H: REAL;

BEGIN

READ (A,B,C);

IF A<=B THEN GOTO 10

ELSE BEGIN

H: =A;

A:=B;

B:=H;

END;

10:IF A<=C THEN GOTO 20

ELSE BEGIN

H:=A;

A:=C;

C:=H;

END;

20:IF B<=C THEN GOTO 30

ELSE BEGIN

H:=B;

B:=C;

C:=H;

END;

30: WRITELN (A, B, C)

END.

Оператор выбора (CASE) обеспечивает выполнение одного оператора (простого или составного) из нескольких возможных. Выбор оператора (последовательности операторов) определяется значением выражения (селектора), которое располагается между ключевыми словами CASE и OF. Значение выражения должно совпадать с константами, любому типу, кроме REAL. Выбор оператора определяется совпадением значения селектора и константы, стоящей перед оператором.

Пример 4 Написать программу для ввода на недели. Программа имеет вид:

PROGRAM DAYWEEK (INPUT, OUTPUT);

VAR NUMBER: INTEGER;

BEGIN

READ (NUMBER);

CASE NUMBER OF

1: WRITELN (‘ПОНЕДЕЛЬНИК’);

2: WRITELN (‘ВТОРНИК’);

3: WRITELN (‘СРЕДА’);

4: WRITELN (‘ЧЕТВЕРГ’);

5: WRITELN (‘ПЯТНИЦА’);

6: WRITELN (‘СУББОТА’);

7: WRITELN (‘ВОСКРЕСЕНЬЕ’); END; END.

 

Задание А. Вычислить на ЭВМ значение функции

          

                 если at < 1;

               

s =                    если at = 1;

 


                  если at > 1,

для a = 1,3, b = 1,29, t = 0,38.

Схема алгоритма решения представлена на блок – схеме (а). Блоки 3, 5, 7 осуществляют проверку условия — at меньше, равно или больше единицы — ив зависимости от результата сравнения направляют вычисления по одной из ветвей — 4, 6 или 8. Блок 9 выводит на печать полученное значение функ­ции s совместно с введенными исходными данными.

Представленная схема алгоритма не является единствен­ной. Число проверок можно сократить до двух блок - схема (б).

Программы, реализующие схему алгоритма, представ­ленную на блок – схеме (б), имеют вид

 

 
Рис 5.2

 


Программа на языке ПАСКАЛЬ:

PROGRAM PRIM3A ( INPUT, OUTPUT) ;

{ЛАБОРАТОРНАЯ РАБОТА ПЗА}

{1 СТУДЕНТ ГРУППЫ РЛ-21 ИВАНОВ Я.}

VAR

А, В, Т, Б: REAL:

BEGIN

WR ITELN (‘ ВВЕДИТЕ А, В, Т');

READ (А, В, Т);

S: =А*Т+В;

IF А*Т=1 ТНЕN S:=COS(A*T);

IF А*Т>1 ТНЕN S:=EXP(-A*T)*COS(A*T);

WRITELN('A=',A:8:3,’ В=',В:8:3,' Т=',Т:8:3);

WRITELN('РЕЗУЛЬТАТ=',S:8:3);

END.

В качестве тестовых наборов исходных данных примем следующие тесты:             

1) a = 1, b = 1, t = 0,5, s = 1 * 0,5 + 1 = 1,5;                    

2) а=1, b==1, t = 1,s= cos (1)= 0,5403;                     

3) a=2, b=1, t=1, s= e –2 cos (2) = 0,0563.               

Задание Б . Вычислить на ЭВМ значение функции, указанной в задании А при изменении аргумента t в диапазоне t Î [0,1; 2,1] с шагом 0,1. Вывод значений t и s выполнить в виде таблицы.    

Схема алгоритма решения приведена на блок - схеме (а). Блоки 5, 6 выполняют собственно расчет значений функции с выдачей их на печать. Это рабочая часть цикла. Блоки 4, 7, 8 являются вспомогательными и служат для организации циклического повторения рабочей части цикла. Блок 4 задает начальное значение параметра цикла t, т. е. осуществляет подготовку цикла. Блок 7 вычисляет текущее значение пара­метра цикла, увеличивая значение аргумента (параметра цикла) на величину заданного шага. Блок 8 проверяет условие окончания цикла. Для печати заголовка таблицы служит блок 3.

Для цикла с известным числом повторений программа получается более компактной и наглядной, если для его организации использовать оператор цикла, который выпол­няет функции блоков 4, 7, 8.

Схема алгоритма решения с использованием блока моди­фикации (цикла) представлена в блок - схеме (б).

Программы, реализованные в соответствии со схемой алгоритма (а, б) имеют вид:

 

 

 


Программа на языке ПАСКАЛЬ

PROGRAM PRIH3B(INPUT, OUTPUT);

{ЛАБОРАТОРНАЯ РАБОТА ПЗБ}

{СТУДЕНТ ГРУППЫ РЛ-21 ИВАНОВ И. И}

VAR А, В, Т, S:REAL;

ТО,TK,DT:REAL;

BEGIN

WRITELN ('ВВЕДИТЕ А, В, ТО, TK, DT');

READ (А, В, ТО, TK, DT);

WRITELN ('ТАБЛИЦА ФУНКЦИИ S (Т) ‘);

WRITELN (‘ Т            S(T) ‘);

Т:=ТО;

REPEAT

S: =А*Т+В;

IF А*Т=1 ТНЕN S:=COS(A*T);

IF А*Т>1 ТНЕН S:=EXP(-A*T)*COS(A*T);

WRITELN(Т: 10: 3 ' ',S:10;3);

Т: =T+DT

UNTIL T>TK;

END.

Контрольные вопросы

1. Перечислить действия, реализуемые при выполнении условного оператора.

2. Какие действия выполняются оператором перехода?

3. Что такое вычислительный процесс разветвляющейся структуры? Как организовать разветвление вычислений: а) на две ветви; б) на три ветви?

4. Составить последовательность операторов для вычис­ления величины z = 0, если х < -2; z=l, если -2 £ x £ 2; z = -1, если х > 2.

5. Зачем необходимо при отладке программы тестиро­вать все ветви алгоритма?

6. Указать последовательность действий, выполняемых при организации циклических участков программы с задан­ным числом повторений.

7. Указать назначение и правила организации цикла.

8. Перечислить возможные способы организации цикла с заданным числом повторений в изучаемом языке програм­мирования.

Лекция №13

Тема: Циклические программы.

Цель: Сформировать и развить умения и навыки составления и записи на языке Раskal циклических программ.

Количество часов – 4часа

Циклическая структура программы позволяет производить многократные вычисления группы операторов при изменении одного или нескольких параметров одновременно. В языке ПАСКАЛЬ имеются операторы цикла FOR, WHILE, REPEAT.

Оператор цикла FOR используется для организации цикла с известным числом повторений.

Общий вид записи:

 - при увеличении значения параметра

FOR i:=m1 TO m2 DO s;

 - при уменьшении значения параметра

FOR i:=m1 DOWNTO m2 DO s;

Где i – параметр цикла (не может быть величиной действительного типа); m1 и m2 могут быть записаны константами или выражениями, совпадающими по типу с параметром цикла. Шаг изменения параметра цикла равен 1.

Оператор цикла с предусловием WHILE используется для организации цикла с неизвестным числом повторений, переводится как «пока ..делать». Общий вид записи оператора:

WHILE b DO s;

где b – логическое выражение; s – тело цикла.

Значение переменных, входящих в условие, должны изменяться в теле цикла, иначе цикл не будет завершён.

Оператор цикла с постусловием Repeat используется для организации цикла с неизвестным числом повторений.

Общий вид записи оператора:

REPEAT s UNTIL b;

где s – тело цикла; b – логическое выражение.

В отличие от оператора WHILE оператор REPEAT выполняет проверку условий в конце оператора, поэтому он обеспечивает хотя бы одно вычисление при значении логического выражения TRUE т.е. цикл выполняется пока условие не станет истинным (пока оно ложно).

Пример 1 Вычислить и вывести на печать значения функции

 при значениях х, изменяющихся от 0 до 3 с шагом 0,1.

Программа, реализующая этот алгоритм с оператором IF, имеет вид

PROGRAM TABULFUN (INPUT, OUTPUT);

LABEL 50;

VAR A, X, Y: REAL;

BEGIN

READ (A);

X:=0;

50:Y:=(A*A*A)/(SQR(A)+X*X);

WRITELN(X,Y);

X:=X+0,1;

IF X<=3,01 THEN GOTO 50;

END.

Эту же программу можно определить число повторений и использовать оператор цикла FOR.

PROGRAM TABULFUN (INPUT, OUTPUT);

VAR A, X, Y: REAL;

I: INTEGER;

BEGIN

READ (A);

X:=0;

FOR I:=1 TO 31 DO

BEGIN

Y:=(A*A*A)/(A*A+X*X);

WRITELN(X,Y);

X:=X+0.1

END

END.

Фрагмент программы с оператором цикла имеет вид:

WHILE X<=3.01 DO

<тело цикла>

Фрагмент программы с оператором цикла REPEAT, аналогичный программе с оператором WHILE, имеет вид

REPEAT

<тело цикла>

UNTIL X>3.01

 

Пример 2.

Вычислите сумму.

…+ .

Способ 1.

Program prim 3a (input, output);

Var s: real;

N: integer;

Begin

S:=0; N:=1;

Where N<=50 DO

Begin

S:=s+1/N;

N:=N+1;

END;

Writeln (‘s=’,s); end.

Способ 2.

Program prim 3б(input, output);

Var s: real;

N: integer;

Begin

S:=0; N:=1;

Repeat

S:=s+1/N;

N:=N+1;

Untel N>50;

 Writeln (‘s=’, s);

END.

Вычислить на ЭВМ значение интеграла  приведенного в табл. 5.6, на заданном отрезке интегрирования [a, b] (в соответствии с вариантом задания). Считать заданное число разбиений отрезка интегрирования n и численный метод решения. Включить в программу вычисления точного значения интеграла и относительную погрешность вычисления в процентах.

Таблица 5.6

 

Вариант задания Подынтегральная функция f(x) Метод численного решения Число отрезков n Интервал интегрирования [a, b] Требуемая точность e
1 Трапеций 60 [1; 4] 10-4
2 Прямоугольников 50 [1; 2,5] 0,5·10-3
3 Трапеций 40 [1; 3] 10-4
4 » 60 10-4
5 » 60 0,5·10-3
6 » 100 [0; 1] 10-4
7 Прямоугольников 50 [1; 2,5] 10-4
8 Трапеций 50 [0; 3] 0,5·10-3
9 Прямоугольников 100 [0; 2] 10-5
10 Трапеций 60 [0; p] 10-4
11 Прямоугольников 80 [1; 2] 0,5·10-4
12 Трапеций 50 [1; 2] 10-4
13 Прямоугольников 50 [0; 2] 10-4
14 Трапеций 100 [1; 2] 10-5
15 » 50 [1; 2] 0,5·10-3

Таблица 5.7
В табл. 5.7 приведены выражения для первообразных функций .

 

Вариант задания Первообразные функции Вариант задания Первообразные функции
1 9
2 10
3 11
4 12
5 13
6 14
7 15
8    

 

Пример выполнения работы

Вычислить на ЭВМ методом трапеции значение интеграла

для a = 0; b = p;

k = 0,5, разбивая отрезок интегрирования на 60 частей. Для контроля вычислить точное значение интеграла и оценить на ЭВМ относительную погрешность метода.

Вычислить точное значение интеграла. Для |k| £ 0,9

.

Схема алгоритма решения задачи представлена на рис. 5.6. Блок 3 задает начальное значение суммы z, равное (fa + fb)/2; накопление суммы организованно циклически. Перед циклом значению x присваивается значение левого конца интервала интегрирования a. При каждом прохождении цикла в блоке 7 значение x увеличивается на шаг x, в блоке 8 вычисляется текущее значение ординаты функции f(x) и прибавляется к сумме z. После выполнения цикла (n-1) раз осуществляется переход к блоку 9, где вычисляется окончательное значение интеграла. Блоки 10, 11 вычисляют точное значение интеграла и относительную погрешность z в процентах.

Программа, реализующая схему алгоритма (рис. 5.6), имеет вид:

 

     
 

 

 


Программа на языке ПАСКАЛЬ:

PROGRAM PRIM5(INPUT, OUTPUT);

{ЛАБОРАТОРНАЯ РАБОТА п5}

{СТУДЕНТ ГРУППЫ РЛ – 21 ИВАНОВ И.И}

VAR A, B, K, X, Z, ZT, DZ, DX: REAL;

     N, I:INTEGER;

BEGIN

WRITELN(‘ВВЕДИТЕ A, B, N’);

READ(A, B, N);

K: = 0.5;

Z: = (SQR(SIN(A))/(1+2*K*COS(A)+K*K)+

   SQR(SIN(B))/(1+2*K*COS(B)+K*K))/2;

DX: = (B-A)/N; X: = A;

FOR I: =1 TO N-1 DO

BEGIN

X: = X+DX;

Z: = Z+SQR(SIN(X))/(1+2*K*COS(X)+K*K);

END;

Z: =Z*DX; ZT: = PI/2;

DZ: = ABS(ZT-Z)*100;

WRITELN(‘ПРИБЛИЖЕННОЕ ЗНАЧЕНИЕ Z=’, Z:9:5);

WRITELN(‘ТОЧНОЕ ЗНАЧЕНИЕ ZT=’, ZT:9:5);

WRITELN(‘ОТНОСИТЕЛЬНАЯ ПОГРЕШНОСТЬ ’,DZ:9:5);

END.

Контрольные вопросы

1. Указать, какие операторы составляют тело цикла.

2. В чем состоят преимущества использования операторов цикла в программах?

 


Дата добавления: 2020-12-12; просмотров: 259; Мы поможем в написании вашей работы!

Поделиться с друзьями:




Мы поможем в написании ваших работ!