книги из ГПНТБ / Гемст В.К. Процедуры АЛГОЛ-60 в примерах [практикум]
.pdf
МИНИСТЕРСТВО ВЫСШЕГО И СРЕДНЕГО СПЕЦИАЛЬНОГО ОБРАЗОВАНИЯ ЛАТВИЙСКОЙ ССР
РИЖСКИЙ ОРДЕНА ТРУДОВОГО КРАСНОГО ЗНАМЕНИ ПОЛИТЕХНИЧЕСКИЙ ИНСТИТУТ
Кафедра вычислительной техника
В.КД'ЕЫСТ, Д.А.С'ШЕН
ПРОЦЕДУРЫ АЛГОЛ-бО В ПРИМЕРАХ
*
А 1>
А Т Е М А Т . /
> А Т У Р Ы
Редакционно-  | 
	й отдел РПИ  | 
Рига - I97A
Ш681. 142. 2
Настоящая работа является частью второй "Процедур АЛГОЛ-60" тех же авторов и содержит примеры использования процедур как типовых программ для ЭЦВМ "Минск-22".
Работа предназначена в качестве практимума для студентов и аспирантов Рижского ордена Трудового Красного Знамени поли
технического института при прохождении курсов по "Основам вы числительной техники", "Алгоритмическим языкам и программиро ванию", "Применению вычислительной техники в инженерных и экономических расчетах" и других дисциплин, связанных с прак тическим использованием электронноцифровых вычислительных машин.
sayуЧьО 1  | 
	
  | 
	\  | 
	Г  | 
  | 
	$  | 
||
библиотек*  | 
	
  | 
	
  | 
	
  | 
З К З Е М Г Ш г и  | 
	(  | 
	
  | 
	
  | 
Ч И Т А Л Ь Н О Г О ЗАЛ,  | 
	Печатается do решению кафедры  | 
||
-/&/И  | 
	
  | 
||
  | 
	вычислительной/техники от 29 сен  | 
||
  | 
	тября 1972  | 
	года. Протокол К? 13.  | 
|
9
Редакционно - издательский отдел РПИ, 1974 г.
3 - 3 - 1 4
-------------- С-174— 74 M 812 (II) - 74
Предисловие
В первой части работы, которая напечатана отдельным изданием "Процедуры АЛГОЛ-60", приведены описания алгод-про' цедур на уровне языка публикаций АЛГОЛ-60 о пояснениями фор мальных параметров процедур,
В настоящей - второй части пособия приведены те же алголпроцедуры о контрольными примерами их использования на вход ном языке транслятора ИЭИ-3.
Проверка и отладка ниже приведенных алгол-процедур прове дена в Вычислительном центре Рижского ордена Трудового Крас ного Знамени политехнического института в 1970/71 годах на ЭЦВМ "Минск-22".
3
Часть вторая ПРИМЕРЫ ИСПОЛЬЗОВАНИИ ПРОЦЕДУР
В настоящей работе примеры расположены в таком же порядке
как описания процедур в первой части*  | 
	
  | 
|||
Все примеры  | 
	построены  | 
	следующим образом:  | 
	а) математичес  | 
|
кая постановка  | 
	задачи,  | 
	б) алгоритм на входном языке трансля  | 
||
тора МЭИ-3,  | 
	в) массив  | 
	исходных данных и г)  | 
	результаты вычис  | 
|
лений.  | 
	
  | 
	
  | 
	
  | 
	
  | 
Примеры использования  | 
	процедур  | 
	решены  | 
	на машине "Минск-  | 
|
22" о транслятором МЭИ-3.  | 
	
  | 
	
  | 
||
Студентам,  | 
	недостаточно знакомым с транслятором МЭИ-3, ре  | 
|||
комендуется пе зд изучением наотоящих примеров освоить вход ной язык транс ятора [ll|.
2.  | 
	, Операции о комплексными чиолами  | 
|||||
i £.1. Аргумент комплексного числа  | 
||||||
Определить  | 
	начения аргументов  | 
	ф  | 
	четырех комплексных  | 
|||
чисел  | 
	
  | 
	+ j I»  | 
	
  | 
	
  | 
||
  | 
	2 I = +3  | 
	
  | 
	
  | 
|||
  | 
	Z 2 = -3 + j 4}  | 
	
  | 
	
  | 
|||
  | 
	Z 3 = -3  | 
	+  | 
	)' 0}  | 
	
  | 
	
  | 
|
  | 
	2 4 = +3  | 
	-  | 
	/ 3.  | 
	
  | 
	,  | 
|
Решение. В  | 
	-дная программа  | 
	транслятора  | 
	__ __  | 
|||
  | 
	
  | 
	
  | 
	‘  | 
	"  | 
	
  | 
	
  | 
  | 
	-С1-  | 
	
  | 
	
  | 
	
  | 
	
  | 
	
  | 
  | 
	ТРАНСЛЯТОР МЗЙ-&,  | 
	
  | 
	
  | 
	
  | 
||
‘ b e g i n ’
’PROCEUURB'ARei(X,Y) RESULT:( П).,
'VAl BE'XjY,,
*KEAl *X,Y, П , ,
FI«“ARC(X,Y).t
TESTBl OCKi
*BEGln'
*REAL, 'Ха.УМВ^Е.ХЗ.Уг.ХЧ.УЧ, EU,PI2,P13,M4.,
INPUT(l,Xi,Yl,Xfi,YB,X3,Y8,X4,Y4) .,
ARSi(Xi,Yl, fit) t,
ARGi(XE,Y*,FlE).,
Анедхв.Уй.пг).,
ARGi(x4,Y4*rt4).,
OOtPOT(8/(E*) ,Л1,Р1й,П8,Р1Ч)
*ltC 'TBSTBLOCK
•вда’
Массив исходных данных:
+3,0.
+1, 0.
-3,0. +4,0. -3,0.
+0 ,0.
+3,0. -3,0.
Результаты вычислений, полученные на узкой печати,
+3217505 +00
+2214297 +01
1-3141592 + Щ
+5497787 +01
практически совпадают о теоретическими.
6
2.1,2. Модуль комплексного числа Определить значения модулей четырех комплексных чисел
Z I - +3  | 
	+  | 
	j I }  | 
||
Z 2  | 
	=  | 
	-3  | 
	+  | 
	j 4}  | 
Z 3  | 
	=  | 
	-3  | 
	+  | 
	j| 0}  | 
2 4  | 
	* +3  | 
	-  | 
	j 3.  | 
|
Решение. Входная программа транслятора:
-01-
ТРАНСЛЯТОР МЭИ-3
'BEGIN’ -
“REAL'“PROCEDURE’MODe(X,Y).,
“VALUE “X,Y.,
“REAL'!,?»,
MOD 2:•SQRT( Ш 8 * YXX2) i,
TESTfebOCK:
“BEGIN'
*REAL“Xl,YifX2,YSfI3,Y3,X4,Y4i,
lNPUT(l,Xi,Yi,XBtY8,X3.Y3fI4,Y4)i,
OUTPUT(8#“(E“),MODE{Xi;,Yi) ,M0D8(X2,YB) ,M0D8(XB,Y8) .MODS
(X4.Y4))  | 
	|  | 
“EMD’TEBTBLOCK  | 
	
  | 
“END’  | 
	j  | 
Массив исходных данных:
+3,0. +1,0. -3,0. +4,0. -3,0.,
+0,0. '■
+3,0. -3,0.
7
Результаты вычислений, полученные на узкой печати, +3162277 +01 +5000000 +01 +3000000 +01 +4242640 +01
практически совпадают с теоретическими.
2Л|,3. Умножение комплексного числа на константу
Умножить комплексные числа
ZI * +3 + j I; Z2 = -3 + j 4} 23 » -3 + j 0} Z4 = +3 - j 3
на константу С = +4,36.
Решение, Входная программа транслятора:
- 01-
ТРАЙСШОР МЭИ-5
'BEGIN*
‘PROCED ORE 'MOLT(XД ,С)RE8ObТ :(А,В) .,
‘VAliOE*X,Y,C.,
‘r b a l 'x 4y ,c ,a ,b ,,
'BEGIN*
Aj-CXK,,
В:»CJY ‘EMD’MUl T.,
TESTBbOCK:
'BEGIN* "
‘REAb’c*,
'lNTEGER'l.,
8
•АШГй(/1:2/),2(/1:2/}., 1й>иТ(1,с).,
‘FOR*I:•l’STEP "l‘UNTIL “h 'DO* "BEGIN*,
INPUT(1,Z).,
MffijT(Z{/i/) ,2(/2/) ,C,ft(/i/) ,R(/2/)) ,,
OUTPUT(3,"(E’),R) "END ’
"end "тевтвьоск
"END *
Массив исходных данных:
+4,36.
+3,0.
+1 ,0.
-3,0. +4,0.
-3,0.
+0, 0.
+3,0. -3,0.
Результаты вычислений, полученные на узкой печати, +1308000 +02 +4360000 +01
-1308000 +G2 +1744000 +02
-I308000 +02
+0000000 +00
+1308000 +02 -1308000 +02
9
1
практически совпадают с теоретичеркиыи:
+13,08  | 
	+ j  | 
	4,36  | 
-13,08  | 
	+ J  | 
	17,44  | 
-13,08  | 
	+ j  | 
	О  | 
+13,08  | 
	- j  | 
	13,08.  | 
2,1.4, Преобразование комплексного числа из алгебраической в показательную Форму и наоборот
Определить значения модулей и аргументов четырех комплекс
ных чисел  | 
	Z I * +3 +  | 
	j I  | 
||
  | 
	Z 2  | 
	= -3  | 
	+  | 
	j 4  | 
  | 
	Z 3  | 
	= -3  | 
	+  | 
	j О  | 
  | 
	Z 4  | 
	= +3  | 
	-  | 
	j 3  | 
ипроизвести обратное вычисление полученных результатов. Решение. Исходная программа транслятора:
- 01-
ТРАЛСЛЯТОР МЭИ-3
'BEGIN'
. ’PRCCEDURE'EXPC(X,Y)MOi)ULUS: (A) ARGUMENT: (В) . ,
*VALDE*X,Y,,
' r e a l *x ,y ,a , в . ,
'BUG1N*
A :»8QRT(XXl2*YXI2) ,,
Bt»ARC(X,Y)
'END'EXPC.,
’PROCE0URE’ALGC(A,B)RE:(X) IM :(Y) .,
'VALUE'A.B.,
'r e a l ' a .b .x .y . ,
'b e g i n '
X:-AXCOS(B).,
10
