Table Of ContentВО ВЫСШ^ИТГ СРЕДНЕГО
0БРА301Ш*ЙЯ ЛАТВИЙСКОЙ ССР
'рижский ОРД ЕНА TBprfOBOго красного ЗНАМЕНИ 7 А
ПОЛИТЫтИЧЕСКИЙ ИНСТИТУТ О Ч Л
I В. К. Гемст, А. А. С ту к е н !
ж i----------------- -— JL---- |
' 4
ПРОЦЕДУРЫ АЛГОЛ-60 В ПРИМЕРАХ
МИНИСТЕРСТВО ВЫСШЕГО И СРЕДНЕГО СПЕЦИАЛЬНОГО
ОБРАЗОВАНИЯ ЛАТВИЙСКОЙ ССР
РИЖСКИЙ ОРДЕНА ТРУДОВОГО КРАСНОГО ЗНАМЕНИ
ПОЛИТЕХНИЧЕСКИЙ ИНСТИТУТ
Кафедра вычислительной техника
В.КД'ЕЫСТ, Д.А.С'ШЕН
ПРОЦЕДУРЫ АЛГОЛ-бО В ПРИМЕРАХ
*
А 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. Аргумент комплексного числа
Определить начения аргументов ф четырех комплексных
чисел
2 I = +3 + j I»
Z 2 = -3 + j 4}
Z 3 = -3 + )' 0}
24 = +3 - / 3. ,
Решение. В -дная программа транслятора __ __
‘ "
-С1-
ТРАНСЛЯТОР МЗЙ-&,
‘begin’
’PROCEUURB'ARei(X,Y) RESULT:( П).,
'VAlBE'XjY,,
*KEAl *X ,Y, П,,
FI«“ARC(X,Y).t
TESTBlOCKi
*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}
24 * +3 - j 3.
Решение. Входная программа транслятора:
-01-
ТРАНСЛЯТОР МЭИ-3
'BEGIN’ -
“REAL' “PROCEDURE’MODe(X,Y).,
“VALUE “X,Y.,
“REAL'!,?»,
MOD 2 :• SQRT (Ш8*YXX 2) 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 'MOL T (X Д , С) RE8ObТ: (А, В) .,
‘VAliOE*X,Y,C.,
‘rbal'x4y,c,a,b,,
'BEGIN*
Aj-CXK,,
В :»CJY
‘EMD’MUlT.,
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 + J17,44
-13,08 + j О
+13,08 - j 13,08.
2,1.4, Преобразование комплексного числа
из алгебраической в показательную Форму и наоборот
Определить значения модулей и аргументов четырех комплекс
ных чисел Z I * +3 + j I
Z2 = -3 + j 4
Z3 = -3 + j О
Z4 = +3 - j 3
и произвести обратное вычисление полученных результатов.
Решение. Исходная программа транслятора:
-01-
ТРАЛСЛЯТОР МЭИ-3
'BEGIN'
. ’PRCCEDURE'EXPC(X,Y)MOi)ULUS: (A) ARGUMENT: (В) . ,
*VALDE*X,Y,,
'real *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.,
'real'a.b.x.y.,
'begin'
X:-AXCOS(B).,
10