Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги из ГПНТБ / Гемст В.К. Процедуры АЛГОЛ-60 в примерах [практикум]

.pdf
Скачиваний:
10
Добавлен:
23.10.2023
Размер:
4.88 Mб
Скачать

2,2.7.

Решение системы линейных алгебраический;

уравнений о комплексными коэффициентами и комп­

 

лексными неизвестными

 

Решить систему линейных алгебраических уравнений с комп­

лексными коэффициентами и комплексными неизвестными

i 3

5

6 +/7

7

3

4 +/2

I

3 -j5

 

2

3

 

6 +/

 

~T

________

z

 

J J

 

 

E

Решение. Исходная

программа:

 

 

- 01-

ТРАНСЛЯТОР МЭИ-3

’BEGIfj'

'PROCEDURE*ORC(Z,E,H,OR,PI2,II)»,

'VALUE*М,PIS.,

'PROCEDURE *o r .,

'INTEGER

‘BOOLEAn'Pie.,

a r r a y z .e .i i .,

'b e g i Г

'IUTEGEk ’I.J.,

'ARRAY *A(/i:2XN+l,ii2XH+i/).,- 'FOR'l:«*l'sTEP*l*U:rtlL*N‘DO"fOR’Jj»l'STEP‘i'UNTIL*Nt£IO *A(/I,J/)j-Z(/I,J,l/)»,

’EOR’It«U+l*STEP V U N m ‘2XN'D0' *FOR*J t“l*STEP ’i’BMTiL?

*fOR *X1*1 *STEPV u UTIL V D O * 'eOR’J i-H+1 'STEP V U H T I l 'sX U*DO'A(/I,J/)J— Z(/I,J-H,fi/),,

51

*rOS‘ l:-4+rSTEP,rOnm'2XN'00, *FOR’j l-H+i'STEP'lTUHTI L'2XN*00*A(/Itj/)j-Z(/bM,J-fM/).t

*POR '3TEP*i'UHTIi/N‘J)0 ’A(/I,2XU+1/)j»E(/I,1/)., *F0R'l:«N+rsTEP’rUM?lL'2XM?l>0‘A(/I,2XN+i/)2»E(/I-M,2/

‘FOR’jj-i'STEP'l'UNTIL *2XN'DO*A(/2XN+l,J/):»0.0., A(/2XN*i,2XR+l/):«i.0.f

'IF 'KEY(i) ’THEN*OUTPUT(3, ’ (E*) ,A ,2XN),, 0R(A,2X4,PI2).,

*if к е у (ч )'the n 'output (з,'(e *),а ,21м).,

'FOR’J :»1 'STEP *1

'UNTIL 'ft '1X5 'II(/J ,1/) A(/2XM+i,J/) ,,

*F0R’J :»N+1 'STEP

VUNTIl' 2IN*D0*II(/J-N,2/) :-A(/2XN*l,J

/)

'EMD'ORC.,

'PROCEDURE *OR(A ,N,PI6)., "VALUE* M,PI2.,

'ARRAY *A.,

'In t e g e k'n .,

'BOOLEAN *PI2.,

'begim'

'i n t e g e r 'i .j .k .,

 

'r e a l 'r ,,

 

"boolean' s. ,

 

'FOR*Ji-1 'STEP *i'UNTIL*4’D0'A(/’M ,J/):-0.,

 

A(/M+i,N+l/) :*i.,

 

*FOR *1:«1' STEP *1'UNTIL *4+1'DO'

\

’ BEGIN*

 

52

s:»PI2.,

P :*FOR*K:“i’STBP*i*OKTIL *1"DO*

’BESIK ’

Rs**0.,

‘POR'jl-i'fiTEP'l’OMTIb'N+i’ao'Rs-R+AC/I.J/JXAt/K,

J/).,

*IF *К»I'THEN *’SOTO *Qi,

*FOR\;:-rSTEP*i’ONTIL’N+i'DO*A(/I,J/)!-A(/I,J/)-

RJA(/K,J/).,

’EM*.,

Qs'lFVTHEN'

’BESIK *

S:»'FALSE*., ’GOTO’P

'EM*.,

R:« ’IF ’1*LE *N’THEM’SQRT(R) *ELSE*-A(/N+i,N+i/)i,

'FOR’J :* 1 *STEP"l '(J4TIL ’N+l *iX)'A(/I,J/) :*A(/I,J/)/B

’EM*

I

 

)

"EM'OR.,

;__

- 02-

1

TESTBLOCK:

 

'BEGIN*

 

’ Integer'k.,

.

IKPOTd.K).,

!

’ BEGIK* 'ARRAY’E,II(/ltK,ls2/),Z(/i:K,l:K,is2/)., *BOOLEA ГР12.,

53

INPUT(1,Z,E).,

Р Ш * *ТйОЕ \ ,

0RC(Z,E,N,08tPie,II).,

0UfPUT(3,’ (E ') ,Z ,E,n )

'END*

'EMO*T8STBLOCK

'end p r o g r a m m .

В программе переменной P I 2 приовоено значение

что указывает на "точноемрешение задачи. Массив исходных данных:

+ 3 .

+00000Р0 00.

+3000000 01.

+5000000 01*

+0000000 00.

+6000000 01.

+7000000 01.

+4000000 01.

,' +2000000 01.

+1000000 01.

+1000000 01.

+3000000 01. -5000000 01. +3000000 01.

+0000000 00.

+2ШОООО 01.

-1000000 CI. +6000000 CIb +1000000 01.

.

+>000000 01.

'

+0000000 00.

+2000000 01.

+0000000 00.

+0000000 00.

+1000000 00.

Результаты вычислений, полученные на узкой печати, -4385403 +00

'-2981205 +00

+998I8I5 +00 -1983280 +00

-1365633 -01 +4004759 +00

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

2.2.8, Уточнение решения системы нелинейных алгебраических и трансцендентных уравнений обобщенным

методой СтеМеисена Решить систему нелинейных алгебраических уравнений

4-х12 + х22 + 2-х1-х2 - у.2 = 2, 2-х12 + 3-х1-х2 + х22 - 3

методом Стеффейсена с точностью е р s г ю -^ при начальном

приближении х1° =0,4, х2° =0,9. Определить количество за­

траченных итераций

N ,

)

 

Точное решение системы х1 = 0,5 и х2 = I.

 

Решение. Исходная программа:

 

-

01-

 

 

ТРАНСЛЯТОР МЭЙ-3

 

'BEGIN*

 

i

 

'pHocEooKE*sTEFF(Nfe p s ,f ,Inversion)batare soot :(х,к)

 

'VAbOE *H,EPS,,

 

 

 

'REAL’EPS.,

 

\

 

'INTEGER'N.K.,'

 

(

 

 

 

 

 

i

___

i

55

'ARRAY'l.,

'PROCEUURB’P,INVERSION.,

'BEGIN'

'REAL'S.,

' integer' i .j .,

*ARRAY'S,H(/l:N/),A(/i:M:H/)., P(X,G).,

ITER J*FOR*J :»i*STEP’1'UNTIL *N'DO*

'BEGIN*

S:«X(/J/).,

I(/J/):»X(/j/)-G(/J/).,

*FOR*I«•!' STEP "i'UNTIL *N *DO ’A(/I,J/) :»(H(/I/)-G(/I/) )/0(/j/).,

u/i/) :-s

'END'J,,

1«VERSION(N,EPS,A) .,

'FOR ’l!“i'!)TEP’l'UNTIL *N'BO' 'BEGIN*

Ss-O., ’FOR'js-l*STEP'l'UNTlL'N'aO'Sj-S+A(/ItJ/)IG(/J/)., H(/I/):-S

'END'I., Sj-O.,

6 Kj-K-1.,

'FOR*I»-1'STEP’1 'uNTIL V 1)0’

'begin*

S;-S+H(/I/)m.,

 

 

X(/I/)t«X(/I/)+H(/I/)

 

 

’ENU’I ., '

.

.

’iF’s'GE’EPsXXa’THEN’’GOTO’ITER., Si-0,,

’POR'lt-i’STRP’raNTIu’H’l)0’:;i-3+G(/I/)X12., ’IP’s ’GE*EPSH2’THEn ’"g o t o ’iter

’ENO’STEFF.,

*PROCEDIME ’I(IVERSION(H,EP8,A),, 'VAbttE’K.EPS.,

’BEAu ’EPs., *ДОСОК* *H., ’ARRAY *A., ‘BEGIN*

’REAb’Y,VY,DET.,

’INTEGER’I,J,K,R,P,,

a r r a y s ,e(/iin/),,

’INTEGER* ’ARRAY’z(/l»N/).,

’If’KEY(i)’ThEN*

’BEGIN*

60ТГОТ(8,*(1*),Ю.,

OGTP»T<S,’(E’),A,EPS)

’END.’,,

BET

*POR ’j l-l *STEP*l’ONTIb ’H'DO ’Ъ ( Щ ) l-J.,

’FOR *11-1’STEP‘1’13NTlli’N‘00’

57

begin'

K2-I.,

-02-

'FOtt’j :-P"STEP’ i"OUTIL*N’DO’ "BEGIN*

Vi:-A(/I,J/).,

"IP "ABN^W) *GT 'ABS(Y) "then" ,

"begin"

Kj-J.,

Ys-W "END*

"END"j ., DET!-YIOET.,

’ IP’ABG(Y)’LT'EPS"THEN’ST0P(7)., Y:»i.O/Y.t "poK’jj-i'sTEP’i'u'mu'iroo"

’ BEGIN’ C(/J/):-A(/J,K/)., A(/J,K/):»A(/J,I/)., A(/J,I/):— C(/j/)XY.f

B(/J/):-A(/I,J/):=A(/I,J/)XY

"e.no*J.,

A(/I,I/)s»Y.f

Jj-Z(/I/).f

58

Z(/I/)s-2(/K/).,

Z(/K/):»J.,

'FOR *К:-1'STEP'i'UNTIL, *R,P’STEP’i 'UNTIb?N*DO'*FOR’3 :

■1 'STEP *1'UNTIl,’ft,P'sTEP*i'UNTIl, *N'00'а (/К,J/) S“A(/K

,J/)-b(/j/)k (/k/)

'ENO'I.,

'FOR 'Is«i 'STEP "i*UNTIL,*N*00 'REPEAT; 'BEGIN*

Ks-Z(/I/).,

'IF 'К»I'THEN "GOTO'NEXTI., 'FOH'J ;»1 'STEP *1 'UUTIb'N'DO*

' begin'

'К! ’KEY(4) 'THEN'OUTPUT(0, '(I*),I,J,K).,

'END'J.., P:-2(yii/)»,

Z(/.K/) :p B. , BPTjp-DET.,, 'вОТО'йЕРЕЛФ. „ NEXTI':.

" B t W ' l i

'ENU'liWPHSION.,

TEST!:

'BEGIN*

5-9'

' REAL*EPS *, *|MTBeE»'N,K;,

moT(ifM,Eps):,

*B E O I . l ’

*ARRAY*X(/llN/)'(

procedure 7(1,6)

*ARRAY’X,Qi,

begin

Q ( / 1 / ) j » 4 i O I X ( / i / ) I X 8 + X ( / 2 / ) X X S + S « O X X ( / l / ) X X ( / 2 / )

‘ X(/2/j-2i0i, ' .

C ( / 2 / ) l • 8 i O X X ( / i / ) X X ^ ! ♦ 0 . O I X ( / i / ) X I ( / S / ) ♦ X ( / e / ) X X i г

*3i0

end', ,

-00-

I M P t 3 T ( i , X ) i ,

* KJ«0.,

В*ЕГ?(N ,EPS, 1 ,Ш ERSION ,X,K). f

00»ОТ(в/(1*),К);,

0UTPUT(8/(E'),X)

•End*

end*test

tend*;,

Массив исходных данных:

+ 2 .

+100000044.

+4000000 00.

+9000000 GO.

60

Соседние файлы в папке книги из ГПНТБ