Файл: Гемст В.К. Процедуры АЛГОЛ-60 в примерах [практикум].pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 27.07.2024
Просмотров: 104
Скачиваний: 2
-4921872 -Cl -2404080 -06
+10
+3983570--Cl
+2074689 -06
соответствуют искомым,
2,7,4. Наложение.корней Фу н к ц ий |
методом явлении |
|||
|
|
интервала |
пополам |
|
Определить корень функции |
f(x) = (х |
- 16)3 в интервале |
||
U. 20] |
с точностью |
eps - ops I = IG~5. |
|
|
Точное |
решение х * +16,000. |
|
|
|
Решение. Исходная |
программа: |
|
|
|
|
-01- |
|
х |
|
|
ТРАНСЛЯТОР МЭИ”? |
|
||
'BEGIN' |
|
|
|
|
'PR0CEDUftP'BlSFC(A,B,EPS,EPEl,l\SIG:4AL,,X)., |
||||
"VAbUE*А,В.. |
|
|
|
|
'iiF.Ai/A.B.F.Pii.EPBl.X., |
|
|
||
*REAL.’'PROCEDURE*F,, |
|
|
||
'иАВГ.ь SIGNAL., |
|
|
|
|
'BEGIN* |
|
|
|
|
'REA.,"У ,2., |
|
|
|
|
'PROCEDURE *FUii(Y)., |
|
|
||
'REAb’Y., |
|
|
|
|
'BEGIN' |
|
|
. ■ |
|
|
Y:«P(X).t |
|
|
\ |
’IP'ABE(Y) 'he 'EPS'TJ-iEil'’GCTO’FIH
180
Х:»А.,
FtM(Y).,
X:-B.f
PO'H(Z).,
*lF,SiGH(Y)-SI(3NCZ)*THEM,’GOTO’SlGt<Ali:,
ITER:X:»A/2+B/2i,
FDM(1r);.
•IF*SIGH(Y)-SIGN(Z)*THE«*В:-X*ELSE*A t*Xi t
’IP'ABS(A-B)’GE'EPai* THEN'TGOtO*IT!»!,
FIN:
’END*BISEC;,
’BEGIN*
‘REAi/SIGMA.EPS.EPSl.AA.BBT,
lNPUT(itEPS,EPSl,AA,BB);,
‘BEGIN*
’REAO* *PROCEDURE*?(SIGMA)'!, ‘REAL*SIGMA;, F:-(SIGMA-ie.O)XIB.;
8ISEC(AA,BB,EPS ,EPSi,F.,8I6KAL,SI!®liA$',i,,
0(/TPUT(3,‘(E‘),SIGMA) ’END*
‘END’.,
SIGNAL.:
‘EMU’;,
Исходные данные: +IOOO ООО 44. +1000 000 44. +1000 000 01.
хат
+2000 000 02.
• Результат вычислений +1599 218 +02 соответствует искокому
16,0000 с погрешностью 16,00000 - 15,99218 = 00,00782.
2.7.5.Нахождение корней функции методом
Ньютона-РаФсона
Определить корень функции f(x) = (х - 16)3 , если дано:
хо =I; tol » ю“^; птак = 1000.
Точное решение х = +16,000. Решение. Первая производная функции
f(х) = 3-(* - I°У
Исходная программа:
- 01-
ТРАНСЛЯТОР МЭИ-0
'b e s i m '
’PliOCЕU0НЕ *ИЕНТОIJКАРИСОа(F,РРАЗИ ,Х,Х0,Т0 ..UMAX,NK)., ’VAUUE'XO,TOb,;(MAX.,
*ftEAu'F ,FUABH ,Х,ХО,ТОи., ’irtTEGEft*UMAX., ’ВООЬЕАН’НЯ.,
’BEG1M *
’iht e g e k'h :. *йЕАь*1,ЧС.,
Х:-ХО.,
’FOft*Н -1, П+1\Н Ь Е‘АВ!..(IЧС)*GT’TOL,’DO' 'BEGII)'*
IHCW/EDASH.,
X :»X-I,IC.,
'j.?' l’GT*NMAX*THEn' 'b e g i n '
NR:-'FALSE* i, 'g o t o ’p
'e n d ' 'e n d ’h .,
NR:-'TRUE*.,
P:
'enu’nev/ton raphso n,,
TESTBLOCK:
'BEGIN*
•r e a l 'x .,
'b o o l e a n'n r .,
NEWTONRAPH;;ON((X-ie.O)US,5(.OX(X-ie.O)XX2,X, 1.0,Ю -6,100
0,NR).f OUTPUT^,'(L'),!№)., OUTPUTS,'(E*),X)
'end 'teltblocic |
! |
|
'ENU'PKOGRAMM., |
|
|
Результат вычислений, |
полученный на узкой печати, |
|
|
+ |
I |
|
+15999°8 |
+02 |
соответствует искомому |
+16,0000 с погрешностью 16,00000 - |
|
15,99998 = 0,00002. |
|
|
183
2 Т7.6, Решение уравнения методом Беротоу - Хичкова
Определить корни уравнения
х6 - 2-х5 + 2-х^ + х5 t 6-х2 - 6-х + 8 = 0 ,
при epS 0 = eps I = eps 2 = eps 3 = 10“^ и nrш х = 1000.
Решение. Исходная программа:
- 01-
ТРАИСЛЯТОР МЭИ-8
’BEGIN*
'PROCEDURE ’BAIRSTOR(N,A,EPSG,EPS1,EPb2,EPS3,MAX)RESULT:(N0 M,X,Y,NAT,EX).,
'REAL’EPS0,EP8i,E!’S2,EPS3.,
'INTEGER'S,MAX,NUM., 'ARRAY ’A,X,Y., ’INTEGER*’ARRAY’NAT,EX., ’BEGIN’
’REAP’P,ti,CORP,caRQ,UO,UlfVO,Vl,WO,S?l,OET,S,T., ’INTEGER'I, 3 ,K,M,N2,R.,
’ARRAY’S,C(/0:N+1/).,
’FOR’lj»0'STEP *l’UNTIL ’h ’DO ’В(/1/) :»A(/I/)., B(/N+l/):-0.0.,
N2:»E!ITIER((N+l)/2).,
RJ-22N2.,
’EOR'Mi-I ’STEP’l’UNTIL’N2’DO’ ’BEGIN’
P;»Q:»0.0.,
'FOR *K:«i *STEP'i’UNTIL'MAX *00’LABI: ’b e g i n ’
184
'F0R*I:*’0’STEP’l’U N m V D 0 ’C(/I/) V*B(/I/).,
’FOR’lV-R-2fR-4’0O’’FOR*;:-O’,STEP*!’UNTIL TlJflO.’
’begin’
C(/J+i/)l«C(/J+i/)-PXC(/j/).,
C(/J+2/j !“C(/J+2/)-QXC(/j/} *EN0’., " ■ ■ UO:-C(/S/).,
U1:»C(/R-1/).,
VO:"C(/R-2/).,
Vi:-C(/R-3/).,
V,0:“-QIV1.,
V;i:»VG-PXVi.,
0ET:-VO2„i-ViOrVl.,
’lF’ABi;(0ET) ’LT'EPSO ’THEN* ■ 'BEGIN*
P:“P+1.,
Qs»Q+l.,
'GOTO 'labi
*Eil0*., (VO2Ul-UOXVi)/0ET.,
CORQ:«(UOm-V;OXUi)/DET.,
P:«P+GORP.,
Q :°Q+CORQ,,
’lF’(ABS(UO) ’LT’EPSl)’AN0’(ABS(Ui) ’lt ’EPSi) ’THENT
’b e g i n ’
EX(/M/):-i.,
185
GOTO"LABS
’END*.,
*IF '(ABS(CORP) *LT’EPS2) ’AMD’(a BS(C01<Q) ’LT ’EPSg) 'T
HEN’
’b e g i n ’
’GOTO’UBS ’EMU*.,
’If ’(AR.‘>(CORP/P) ’bT *EPS3) ’AND*(ABS(COkG/O) *ЬТ ’EP.S 3) ’THEN*
'b e g i n *
EX(/M/):-S.,
’GOTO*UBS
’END’
-ОЯ-
EX(/M/):-4.,
LABPiS !”-P/2,0,,
T:»sfe-Q.,
’i f 't ’ge 'o ’t h e n ’
'begin ’
NAT(/M/):-i.,
T:-SQRT(f)-.,
X(/K/):»S+T.t
Y(/M/j:»S-T
’BEGIN*
nat( / m/ ) г**” 1 . ,
Y(/M/):-SQRT(-f)
’END’.,
'IF *EX(/H/)»4*THEN” GOTO*OUT.,
R:»R-2.,
'FOIi’j r O ’STEP’i’ U N m V» 0 '
’be g i n’
B(/J+l/):-B(/J+l/bPXB(/J/).,
B(/J+2/):»B(/J+2/)-QXB(/J/)
'END*.,
’IF ’r ’LT ’i’THEN ’OUT:
’b e g i n *
’GOTO’FIN
’END’.,
'IF 'R’LT’S'THEH'
’b e g i n '
EX(/M/):-i.,
P!-B(/l/)/B(/0/).,
Qs-B(/2/)/B(/0/);,
’G0T0*WB2
’END’
’END’M.,
f i n :
’e n d ’bairstow..
187
ТЕДБЬОСК! 'BEGIN'
'IHTEG'-R’K.NUM., 'ARRAY'X,Y,A(/Ose/).f
'INTEGER "ARRAY’NA,r,r.(/l:6/)!., A(/0/) ,
A(/i/);-~e.0.t
A(/2/):»2.0.,
A(/S/)s-i.O.,
A(/4/):-6.0., a (/b/)s— e.o;,
A(/6/):-8.0.f
BAIRtTOW(6,A,fC~4,E-4,E-4,E“4,iOOO,MUM,XFY,NAT,EX).,
OUTPUT(5,' (I*),HUM).*
'FOR'K:“i'STEP'l'UNTl L'NUM 'DO'
'BEGIN1
OUTPUT^, '(I*),It,HAT(/K/)fEX(/K/)).,
OUTPUT(3,*(E*),X(/K/),Y(/K/))
'END*
’END'TEitRbOCK
■'ENO'FROGRAMK.,
. Результат вычислений, полученный на узкой печати,
+3
+I I
+2
(5000000 +0С
+8660254 +00'
188
+ |
2 |
|
I |
+ |
I |
-1000000 +01 |
|
+9999999 |
+00 |
' + |
3 |
|
I |
+ |
I |
+1500000 +CI |
|
+1322875 |
+01 |
xl |
= 0,5 |
+ j |
0,8660254; |
x2 |
= 0,5 - j |
0,8660254; |
хЗ * -I + |
j 0,9999999; x4 * -I - |
j |
0,9999999; |
x.5 * 1,5 + j |
0,1322875; |
|||
хб |
e 1,5 |
- |
j 0,1322825 |
соответствуют |
искомыми. |
|
2.7.7.Решение уравнения методом Ньютоиа-
Миели Определить корни уравнения
х3 - 9,8-х2 - 186-х = О
при ер 5 = 0,0001.
Решение. Исходная программа:
- 01- !
ТРАНСЛЯТОР МЭИ-3
’begin’
’PROCЕ00НЕ'НЕWTOШ Н1ЛГ(А,Ч,EPS)RESULT:(2)i,
’VAuUE’M,EPS,,
’REAi/EPS.,
’INTEGER*?»., |
' |
’a r r a y ’a .z .,
’beg in’
’REAu'AA.PP.QQ.XO.Xl.,
189