Добавил:
Yanus
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:
ЉЋЊЏ‹…Љ‘ “—…ЃЌЋ-‹ЂЃЋђЂ’ЋђЌ›• ЏЋ„ЏђЋѓђЂЊЊ
„‹џ –€”ђЋ‚ЋѓЋ ЊЋ„…‹€ђЋ‚ЂЌ€џ
‘€‘’…Њ› „€‘Љђ…’€‡Ђ–€€
Ќ…Џђ…ђ›‚Ќ›• ‘ЋЋЃ™…Ќ€‰ ЏЋ ‚ђ…Њ…Ќ€
‘ Ћ „ … ђ † Ђ Ќ € …
-------------------
1. ЋЎйЁҐ ᢥ¤ҐЁп
2. ”гЄжЁ® «м®Ґ § 票Ґ Є®¬Ї«ҐЄб
3. ЋЇЁб ЁҐ ЇаЁ¬ҐҐЁп Є®¬Ї«ҐЄб
4. ‚е®¤лҐ Ё ўле®¤лҐ ¤ лҐ
5. ‘ЇЁб®Є Ї®¤Їа®Ја ¬¬ Є®¬Ї«ҐЄб
1. Function GAUSS
2. Procedure GF
3. Procedure GKLF
4. Procedure FLF
5. Procedure DIS
6. Procedure IDF
7. Procedure GRA
1. ЋЎйЁҐ ᢥ¤ҐЁп.
‚ ¤ ®¬ ⥪б⥠ЇаЁў®¤Ёвбп ®ЇЁб ЁҐ Є®¬Ї«ҐЄб г祡®-« Ў®а в®але Ї®¤Їа®-
Ја ¬¬ "–Ёда®ў®Ґ ¬®¤Ґ«Ёа®ў ЁҐ бЁбвҐ¬л ¤ЁбЄаҐвЁ§ жЁЁ ҐЇаҐалўле б®®ЎйҐЁ© Ї®
ўаҐ¬ҐЁ".Љ®¬Ї«ҐЄб б®бв®Ёв Ё§ Ї®¤Їа®Ја ¬¬, ЇЁб ле «Ј®аЁ¬ЁзҐбЄ®¬ п§лЄҐ
"Turbo Pascal 7.0" Ё Ї®¬ҐйҐле ў ¬®¤г«м GNK.
2. ”гЄжЁ® «м®Ґ § 票Ґ Є®¬Ї«ҐЄб .
Љ®¬Ї«ҐЄб Ї®¤Їа®Ја ¬¬ ЇаҐ¤ § зҐ ¤«п ¬®¤Ґ«Ёа®ў Ёп бЁбвҐ¬л ¤ЁбЄаҐвЁ§ жЁЁ
ҐЇаҐалўле б®®ЎйҐЁ© Ї® ўаҐ¬ҐЁ Їг⥬ ЇаҐ¤бв ў«ҐЁп бд®а¬Ёа®ў ®© дгЄжЁЁ
"ҐЇаҐалў®Ј® аЈг¬Ґв " ў ўЁ¤Ґ аҐиҐвз в®© дгЄжЁЁ ¤ЁбЄаҐв®Ј® аЈг¬Ґв ў
ᮮ⢥вбвўЁЁ б ⥮६®© Љ®вҐ«мЁЄ®ў , Ё ҐҐ Ї®б«Ґ¤го饣® ў®ббв ®ў«ҐЁп
Ё¤Ґ «мл¬ дЁ«мв஬ Ё§ЄЁе з бв®в. ‚®§¬®¦® Ја дЁзҐбЄ®Ґ ЇаҐ¤бв ў«ҐЁҐ дгЄжЁ©
Є ¦¤®¬ нв ЇҐ ¬®¤Ґ«Ёа®ў Ёп.
3. ЋЇЁб ЁҐ ЇаЁ¬ҐҐЁп Є®¬Ї«ҐЄб .
„«п ЁбЇ®«м§®ў Ёп Є®¬Ї«ҐЄб ў ‚ 襩 Їа®Ја ¬¬Ґ Ґ®Ўе®¤Ё¬® б ¬л¬ ЇҐаўл¬
®ЇҐа в®а®¬ Їа®Ја ¬¬л Ї®бв ўЁвм USES gnk.ЏаЁ §в®¬ Ґ®Ўе®¤Ё¬® «ЁзЁҐ д ©«
gnk.tpu ў ⥪г饬 Є в «®ЈҐ Ё«Ё ў Є в «®ЈҐ,гЄ § ®¬ ў ¬Ґо
Options|Directories...|Unit directories.„«п ®а¬ «м®© а Ў®вл Їа®жҐ¤гал
Ї®бв஥Ёп Ја дЁЄ®ў GRA Ґ®Ўе®¤Ё¬® «ЁзЁҐ д ©« egavga.bgi ў
Є в «®ЈҐ D:/TP/BGI.
"ЌҐЇаҐалў п" дгЄжЁп Ё¬ЁвЁагҐвбп ¬®¦Ґбвў®¬ § 票© б«гз ©®© дгЄжЁЁ,
ЈҐҐаЁагҐ¬л¬ Їа®жҐ¤га®© GF Ё«Ё ¬®¦Ґбвў®¬ § 票© Єгб®з®-«ЁҐ©®© дгЄжЁЁ,
ЈҐҐаЁагҐ¬л¬ Їа®жҐ¤га®© GKLF.‘ЈҐҐаЁа㥬 п дгЄжЁп ¬®¦Ґв Ўлвм "бЈ« ¦Ґ "
Їа®жҐ¤га®© FLF.Џа®жҐ¤га DIS ®ЇаҐ¤Ґ«пҐв § 票п дгЄжЁЁ ў ®ЇвЁ¬ «мле
®вбзҐв е,в.Ґ. Ё¬ЁвЁагҐв Їа®жҐбб ¤ЁбЄаҐвЁ§ жЁЁ "ҐЇаҐалў®©" дгЄжЁЁ Ї®
ўаҐ¬ҐЁ Ё ЇаҐ¤бв ў«пҐв ҐҐ ў ўЁ¤Ґ ¬®¦Ґбвў § 票© аҐиҐвз в®© дгЄжЁЁ
¤ЁбЄаҐв®Ј® аЈг¬Ґв .‚®ббв ®ў«ҐЁҐ "ҐЇаҐалў®©" дгЄжЁЁ Ї® ¤ЁбЄаҐвл¬
®вбзҐв ¬ аҐиҐвз в®© дгЄжЁЁ Ё¤Ґ «мл¬ дЁ«мв஬ Ё§ЄЁе з бв®в Ё¬ЁвЁагҐвбп
Їа®жҐ¤га®© IDF,Є®в®а п Ї®§ў®«пҐв ЇаҐ¤бв ўЁвм ў Ја дЁзҐбЄ®¬ ўЁ¤Ґ Їа®жҐбб
б㬬Ёа®ў Ёп дгЄжЁ© ®вбзҐв .„«п Ј«п¤®бвЁ ¬®¦® Ї®бва®Ёвм Ја дЁЄЁ
Ёб室®©,бЈ« ¦Ґ®©,аҐиҐвз в®© Ё ў®ббв ®ў«Ґ®© дгЄжЁ© ў¬Ґб⥠б дгЄжЁп¬Ё
®иЁЎ®Є бЈ« ¦Ёў Ёп Ё ў®ббв ®ў«ҐЁп б Ї®¬®ймо Їа®жҐ¤гал GRA.
4. ‚е®¤лҐ Ё ўле®¤лҐ ¤ лҐ.
4.1 ‚е®¤лҐ ўҐ«ЁзЁл
‚ Є зҐб⢥ ўе®¤ле Ї а ¬Ґва®ў жЁда®ў®© ¬®¤Ґ«Ё бЁбвҐ¬л ¤ЁбЄаҐвЁ§ жЁЁ
ҐЇаҐалўле б®®ЎйҐЁ© Ї® ўаҐ¬ҐЁ ЁбЇ®«м§говбп б«Ґ¤гойЁҐ ўҐ«ЁзЁл:
T - ЇҐаЁ®¤ дгЄжЁЁ;
N - зЁб«® ўбҐе ®вбзҐв®ў аЈг¬Ґв ЁвҐаў «Ґ ®ЇаҐ¤Ґ«ҐЁп дгЄжЁЁ;
M - зЁб«® Їа®¬Ґ¦гв®зле ®вбзҐв®ў аЈг¬Ґв ¬Ґ¦¤г б®бҐ¤Ё¬Ё ¤ЁбЄаҐвл¬Ё
®вбзҐв ¬Ё;
W - з бв®в ўлб襩 Ј ମЁЄЁ бЇҐЄва дгЄжЁЁ (бЁЈ « );
K1,K2 - Є«озЁ Їа®жҐ¤гал GF,®ЇаҐ¤Ґ«пойЁҐ ०Ё¬ ЈҐҐа жЁЁ дгЄжЁЁ;
B1,B2 - Ї а ¬Ґвал ¤«п ЈҐҐа жЁЁ Є®нддЁжЁҐв®ў ”гамҐ;
Ma - ¬ ⥬ вЁзҐбЄ®Ґ ®¦Ё¤ ЁҐ ¬Ї«Ёвг¤ Ј ମЁЄ ап¤ ”гамҐ;
Sa - б।ҐҐ Єў ¤а вЁз®Ґ ®вЄ«®ҐЁҐ ¬Ї«Ёвг¤ Ј ମЁЄ ап¤ ”гамҐ;
Mp - ¬ ⥬ вЁзҐбЄ®Ґ ®¦Ё¤ ЁҐ д §®ўле б¤ўЁЈ®ў Ј ମЁЄ ап¤ ”гамҐ;
Sp - б।ҐҐ Єў ¤а вЁз®Ґ ®вЄ«®ҐЁҐ д §®ўле б¤ўЁЈ®ў Ј ମЁЄ ап¤ ”гамҐ;
K3 - Є«оз Їа®жҐ¤гал IDF,®ЇаҐ¤Ґ«пойЁ© ०Ё¬ ЈҐҐа жЁЁ дгЄжЁЁ;
K,E - Є«озЁ Їа®жҐ¤гал GRA,®ЇаҐ¤Ґ«пойЁҐ ०Ё¬л ўлў®¤ Ја дЁЄ®ў дгЄжЁ©.
4.2 ‚ле®¤лҐ ўҐ«ЁзЁл
X - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N, ᮤҐа¦ йЁ© § 票п
аЈг¬Ґв дгЄжЁЁ;
G - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N,ᮤҐа¦ йЁ© § 票п
®зҐаҐ¤®© б㬬Ёа㥬®© Ј ମЁЄЁ ап¤ ”гамҐ;
FO - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N,ᮤҐа¦ йЁ© § 票п
®зҐаҐ¤®© б㬬Ёа㥬®© дгЄжЁЁ ®вбзҐв ап¤ Љ®вҐ«мЁЄ®ў ;
Yo - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N, ᮤҐа¦ йЁ© § 票п
бЈҐҐаЁа®ў ®© "ҐЇаҐалў®©" дгЄжЁЁ;
Y - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N, ᮤҐа¦ йЁ© § 票п
бЈ« ¦Ґ®© "ҐЇаҐалў®©" дгЄжЁЁ;
Xdis - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© Ndis, ᮤҐа¦ йЁ© § 票п
аЈг¬Ґв®ў аҐиҐвз в®© дгЄжЁЁ;
Ydis - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© Ndis, ᮤҐа¦ йЁ© § 票п
аҐиҐвз в®© дгЄжЁЁ;
Yif - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N, ᮤҐа¦ йЁ© § 票п
ў®ббв ®ў«Ґ®© дгЄжЁЁ Ё¤Ґ «мл¬ дЁ«мв஬ Ё§ЄЁе з бв®в.
5. ‘ЇЁб®Є Їа®жҐ¤га Є®¬Ї«ҐЄб
1. FUNCTION GAUSS
Ќ § 票Ґ
ѓҐҐа жЁп ЇбҐў¤®б«гз ©ле зЁбҐ« б ®а¬ «мл¬ (Ј гбб®ўл¬) а бЇаҐ¤Ґ«ҐЁҐ¬.
Њ ⥬ вЁзҐбЄ®Ґ ®ЇЁб ЁҐ
”гЄжЁп ЈҐҐаЁагҐв ўҐйҐб⢥®Ґ ЇбҐў¤®б«гз ©®Ґ зЁб«® б ®а¬ «мл¬
а бЇаҐ¤Ґ«ҐЁҐ¬ б ¬ ⥬ вЁзҐбЄЁ¬ ®¦Ё¤ ЁҐ¬ M Ё б।ҐЄў ¤а вЁзҐбЄЁ¬
®вЄ«®ҐЁҐ¬ S.
ѓ«®Ў «млҐ ЇҐаҐ¬ҐлҐ
M - ¬ ⥬ вЁзҐбЄ®Ґ ®¦Ё¤ ЁҐ б«гз ©®© ўҐ«ЁзЁл;
S - б।ҐҐ Єў ¤а вЁз®Ґ ®вЄ«®ҐЁҐ б«гз ©®© ўҐ«ЁзЁл.
’ҐЄбв дгЄжЁЁ
FUNCTION GAUSS(M,S:real):real;
VAR
a,b,c,d:real;
BEGIN
repeat
a:=2*random-1;
b:=2*random-1;
c:=sqr(a)+sqr(b)
until c<1;
d:=sqrt((-2)*ln(c)/c);
GAUSS:=M+S*a*d
END;
2.PROCEDURE GF
Ќ § 票Ґ
ѓҐҐа жЁп ҐЇаҐалў®© дгЄжЁЁ.
Њ ⥬ вЁзҐбЄ®Ґ ®ЇЁб ЁҐ
Џа®жҐ¤га ЈҐҐаЁагҐв ЇҐаЁ®¤ЁзҐбЄго "ҐЇаҐалўго б«гз ©го" дгЄжЁо Y
Їг⥬ б㬬Ёа®ў Ёп Є®Ґз®Ј® зЁб« Ј ମЁЄ, ¬Ї«Ёвг¤л Ё д §®ўлҐ гЈ«л
¤«п Є ¦¤®© Ё§ Є®в®але § ¤ овбп ўв®¬ вЁзҐбЄЁ («ЁЎ® § Є®®¬Ґа®,«ЁЎ®
б«гз ©®).‚лзЁб«ҐЁҐ § 票© дгЄжЁЁ ®ЇаҐ¤Ґ«пҐвбп а冷¬ ”гамҐ.
ѓ«®Ў «млҐ ЇҐаҐ¬ҐлҐ
K1 - Є«оз,®ЇаҐ¤Ґ«пойЁ© бЇ®б®Ў ®ЇаҐ¤Ґ«ҐЁп ¬Ї«Ёвг¤ Ё д §®ўле гЈ«®ў
Ј ମЁЄ:
K1=0 - б Ї®¬®ймо Ї а ¬Ґва®ў B1 Ё B2;
K1<>0 - б Ї®¬®ймо ¤ взЁЄ ®а¬ «м®а бЇаҐ¤Ґ«Ґле зЁбҐ« Ё Ї а ¬Ґва®ў
Ma,Sa,Mp,Sp;
K2 - Є«оз,®ЇаҐ¤Ґ«пойЁ© Ґ®е®¤Ё¬®бвм Ја дЁЄ®Ј® ўлў®¤ Їа®жҐбб ЈҐҐа жЁЁ
дгЄжЁЁ:
K=0 - Ја дЁЄЁ дгЄжЁ© Ґ ўлў®¤пвбп;
K<>0 - Ја дЁЄЁ дгЄжЁ© ўлў®¤пвбп;
T - ЇҐаЁ®¤ дгЄжЁЁ;
W - з бв®в ўлб襩 Ј ମЁЄЁ бЇҐЄва дгЄжЁЁ (бЁЈ « );
B1,B2 - Ї а ¬Ґвал ¤«п ЈҐҐа жЁЁ Є®нддЁжЁҐв®ў ”гамҐ;
Ma - ¬ ⥬ вЁзҐбЄ®Ґ ®¦Ё¤ ЁҐ ¬Ї«Ёвг¤ Ј ମЁЄ ап¤ ”гамҐ;
Sa - б।ҐҐ Єў ¤а вЁз®Ґ ®вЄ«®ҐЁҐ ¬Ї«Ёвг¤ Ј ମЁЄ ап¤ ”гамҐ;
Mp - ¬ ⥬ вЁзҐбЄ®Ґ ®¦Ё¤ ЁҐ д §®ўле б¤ўЁЈ®ў Ј ମЁЄ ап¤ ”гамҐ;
Sp - б।ҐҐ Єў ¤а вЁз®Ґ ®вЄ«®ҐЁҐ д §®ўле б¤ўЁЈ®ў Ј ମЁЄ ап¤ ”гамҐ;
X - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N, ᮤҐа¦ йЁ© § 票п
аЈг¬Ґв дгЄжЁЁ;
G - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N,ᮤҐа¦ йЁ© § 票п
®зҐаҐ¤®© б㬬Ёа㥬®© Ј ମЁЄЁ ап¤ ”гамҐ;
Y - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N, ᮤҐа¦ йЁ© § 票п
бЈ« ¦Ґ®© "ҐЇаҐалў®©" дгЄжЁЁ;
’ҐЄбв Їа®жҐ¤гал
PROCEDURE GF(K1,K2:word;T,W,B1,B2,Ma,Sa,Mp,Sp:real;var X,Y,G:array of real);
CONST
S1='ђҐ§г«мвЁагой п дгЄжЁп.';
S2='‘㬬Ёа㥬 п Ј ମЁЄ .';
VAR
Gd,Gm:integer;
i,j,Xo,Yo:word;
a,p,wj,dx,dT,dF:real;
BEGIN
if K2<>0 then begin Gd:=0;InitGraph(Gd,Gm,F_bgi) end;
dx:=T/High(X);
X[0]:=0;for i:=1 to High(X) do X[i]:=X[i-1]+dx;
for i:=0 to High(X) do Y[i]:=0;
j:=1;wj:=2*Pi*j/T;
while wj<=W do
begin
if K1=0
then begin a:=B1/j;p:=B2/j end
else begin a:=Gauss(Ma,Sa);p:=Gauss(Mp,Sp) end;
for i:=0 to High(X) do
begin
G[i]:=a*cos(wj*X[i]-p);
Y[i]:=Y[i]+G[i]
end;
if K2<>0 then ShowGra(1,0,X,Y,X,G,S1,S2,'');
inc(j);wj:=2*Pi*j/T
end;
if K2<>0 then CloseGraph
END;
3.PROCEDURE GKLF
Ќ § 票Ґ
ѓҐҐа жЁп Єгб®з®-«ЁҐ©®© дгЄжЁЁ.
Њ ⥬ вЁзҐбЄ®Ґ ®ЇЁб ЁҐ
Џа®жҐ¤га ЈҐҐаЁагҐв ЇҐаЁ®¤ЁзҐбЄго Єгб®з®-«ЁҐ©го дгЄжЁо Yo.„«п нв®Ј®
Ї® д®а¬г«Ґ y=k*x+b ўлзЁб«пҐвбп § зҐЁп «ЁҐ©ле гз бвЄ®ў дгЄжЁЁ
ЁвҐаў «Ґ ®в Ax[1] ¤® Ax[1]+T б и Ј®¬ T/(N-1).„«п ®ЇаҐ¤Ґ«ҐЁп Є®нддЁжЁҐв®ў
k Ё b «ЁҐ©ле гз бвЄ®ў ЁбЇ®«м§говбп Є®®а¤Ё вл Na в®зЄҐЄ ЇҐаҐЈЁЎ
(ў ¬ ббЁўҐ Ax) Ё § 票п дгЄжЁЁ ў нвЁе в®зЄ е (ў ¬ ббЁўҐ Ay).
ѓ«®Ў «млҐ ЇҐаҐ¬ҐлҐ
T - ЇҐаЁ®¤ дгЄжЁЁ;
Ax - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© Na,ᮤҐа¦ йЁ© Є®®а¤Ё вл
в®зЄҐЄ ЇҐаҐЈЁЎ ;
Ay - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© Na,ᮤҐа¦ йЁ© § 票п
дгЄжЁЁ ў в®зЄ е ЇҐаҐЈЁЎ ;
X - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N, ᮤҐа¦ йЁ© § 票п
аЈг¬Ґв дгЄжЁЁ;
Yo - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N, ᮤҐа¦ йЁ© § 票п
бЈҐҐаЁа®ў ®© Єгб®з®-«ЁҐ©®© дгЄжЁЁ.
‹®Є «млҐ ЇҐаҐ¬ҐлҐ
i - ®¬Ґа ®зҐаҐ¤®Ј® ®вбзҐв ;
j - ®¬Ґа ®зҐаҐ¤®© в®зЄЁ ЇҐаҐЈЁЎ Єгб®з®-«ЁҐ©®© дгЄжЁЁ;
k - Є®нддЁжЁҐв Є«® ®зҐаҐ¤®Ј® гз бвЄ Єгб®з®-«ЁҐ©®© дгЄжЁЁ;
b - Ї®бв®пл© Є®нддЁжЁҐв ®зҐаҐ¤®Ј® гз бвЄ Єгб®з®-«ЁҐ©®© дгЄжЁЁ;
dx - ЁвҐаў « ¬Ґ¦¤г б®бҐ¤Ё¬Ё ®вбзҐв ¬Ё аЈг¬Ґв .
’ҐЄбв Їа®жҐ¤гал
PROCEDURE GKLF(T:real;var Ax,Ay,X,Yo:array of real);
VAR
i,j:word;
k,b,dx:real;
BEGIN
dx:=T/High(X);
X[0]:=Ax[0];
Yo[0]:=Ay[0];
j:=0;
for i:=1 to High(X) do
begin
X[i]:=X[i-1]+dx;
if (j<High(Ax)) and (X[i]>=Ax[j+1]) then inc(j);
if j<High(Ax)
then k:=(Ay[j+1]-Ay[j])/(Ax[j+1]-Ax[j])
else k:=(Ay[0]-Ay[j])/(Ax[0]+T-Ax[j]);
b:=Ay[j]-k*Ax[j];
Yo[i]:=k*X[i]+b
end
END;
4.PROCEDURE FLF
Ќ § 票Ґ
"‘Ј« ¦Ёў ЁҐ" ҐЇаҐалў®© ЇҐаЁ®¤ЁзҐбЄ®© дгЄжЁЁ.
Њ ⥬ вЁзҐбЄ®Ґ ®ЇЁб ЁҐ
‘ Ї®¬®ймо ЇаאַЈ® ЇаҐ®Ўа §®ў Ёп ”гамҐ Ї® Ёд®а¬ жЁЁ ®Ў Ёб室®©
ЇҐаЁ®¤ЁзҐбЄ®© дгЄжЁЁ ®ЇаҐ¤Ґ«повбп ”гамҐ-Є®нддЁжЁҐвл ¤«п ¬®¦Ґбвў
Ј ମЁЄ,®Ја ЁзҐ®Ј® з бв®в®© ҐЄ®в®а®© "ўлб襩" Ј ମЁЄЁ.
„ «ҐҐ б Ї®¬®ймо ап¤ ”гамҐ (®Ўа в®Ј® ЇаҐ®Ўа §®ў Ёп) ®ЇаҐ¤Ґ«повбп
§ 票п бЈ« ¦Ґ®© ҐЇаҐалў®© дгЄжЁЁ Їг⥬ б㬬Ёа®ў Ёп § 票©
ўбҐе Ј ମЁЄ "®Ја ЁзҐ®Ј®" бЇҐЄва бЈ« ¦Ґ®© дгЄжЁЁ.
ѓ«®Ў «млҐ ЇҐаҐ¬ҐлҐ
W - з бв®в б१ дгЄжЁЁ (з бв®в "ўлб襩" Ј ମЁЄЁ);
T - ЇҐаЁ®¤ дгЄжЁЁ;
X - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N, ᮤҐа¦ йЁ© § 票п
аЈг¬Ґв дгЄжЁЁ;
Yo - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N, ᮤҐа¦ йЁ© § 票п
бЈҐҐаЁа®ў ®© "ҐЇаҐалў®©" дгЄжЁЁ;
Y - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N, ᮤҐа¦ йЁ© § 票п
бЈ« ¦Ґ®© "ҐЇаҐалў®©" дгЄжЁЁ;
’ҐЄбв Їа®жҐ¤гал
PROCEDURE FLF(W,T:real;var X,Yo,Y:array of real);
VAR
i,j:word;
a0,a,b,wj,dx:real;
BEGIN
dx:=T/High(X);
a0:=0;for i:=0 to High(X) do a0:=a0+Yo[i]*dx;a0:=a0/T;
for i:=0 to High(X) do Y[i]:=a0;
j:=1;wj:=2*Pi*j/T;
while wj<=W do
begin
a:=0;b:=0;
for i:=0 to High(X) do
begin
a:=a+Yo[i]*cos(wj*X[i])*dx;
b:=b+Yo[i]*sin(wj*X[i])*dx
end;
a:=2*a/T;b:=2*b/T;
for i:=0 to High(X) do
Y[i]:=Y[i]+a*cos(wj*X[i])+b*sin(wj*X[i]);
inc(j);wj:=2*Pi*j/T
end
END;
5.PROCEDURE DIS
Ќ § 票Ґ
„ЁбЄаҐвЁ§ жЁп ҐЇаҐалў®© дгЄжЁЁ.
Њ ⥬ вЁзҐбЄ®Ґ ®ЇЁб ЁҐ
Џ®¤Їа®Ја ¬¬ ®бгйҐбвў«пҐв а ў®¬Ґаго (ўаҐ¬Ґго) ¤ЁбЄаҐвЁ§ жЁо ҐЇаҐалў®©
дгЄжЁЁ Їг⥬ ўлЎ®а Ё§ ¬ ббЁў аЈг¬Ґв®ў Ё § 票© нв®© дгЄжЁЁ
аЈг¬Ґв®ў Ё § 票© ¤«п аҐиҐвз в®© дгЄжЁЁ.„«п нв®Ј® ўлзЁб«повбп ®¬Ґа
¤ЁбЄаҐвле ®вбзҐв®ў Ї® д®а¬г«Ґ :
j:=i+(M+1) ,Ј¤Ґ
j - ®¬Ґа ®зҐаҐ¤®Ј® ¤ЁбЄаҐв®Ј® ®вбзҐв ;
i - ®¬Ґа ЇаҐ¤л¤г饣® ¤ЁбЄаҐв®Ј® ®вбзҐв ;
M - зЁб«® Їа®¬Ґ¦гв®зле ®вбзҐв®ў аЈг¬Ґв ¬Ґ¦¤г б®бҐ¤Ё¬Ё
¤ЁбЄаҐвл¬Ё ®вбзҐв ¬Ё.
ѓ«®Ў «млҐ ЇҐаҐ¬ҐлҐ
M - зЁб«® Їа®¬Ґ¦гв®зле ®вбзҐв®ў аЈг¬Ґв ¬Ґ¦¤г б®бҐ¤Ё¬Ё ¤ЁбЄаҐвл¬Ё
®вбзҐв ¬Ё;
N - зЁб«® ўбҐе ®вбзҐв®ў аЈг¬Ґв ЁвҐаў «Ґ ®ЇаҐ¤Ґ«ҐЁп дгЄжЁЁ;
Ndis - зЁб«® ¤ЁбЄаҐвле ®вбзҐв®ў аЈг¬Ґв ЁвҐаў «Ґ ®ЇаҐ¤Ґ«ҐЁп дгЄжЁЁ;
X - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N, ᮤҐа¦ йЁ© § 票п
аЈг¬Ґв дгЄжЁЁ;
Y - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N, ᮤҐа¦ йЁ© § 票п
бЈ« ¦Ґ®© "ҐЇаҐалў®©" дгЄжЁЁ;
Xdis - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© Ndis, ᮤҐа¦ йЁ© § 票п
аЈг¬Ґв ў ¤ЁбЄаҐвле ®вбзҐв е дгЄжЁЁ;
Ydis - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© Ndis, ᮤҐа¦ йЁ© § 票п
дгЄжЁЁ ў ¤ЁбЄаҐвле ®вбзҐв е;
’ҐЄбв Їа®жҐ¤гал
PROCEDURE DIS(M,N,Ndis:word;var X,Y,Xdis,Ydis:array of real);
VAR
i,j:word;
BEGIN
j:=0;
for i:=0 to Ndis-1 do
begin
Xdis[i]:=X[j];
Ydis[i]:=Y[j];
j:=j+M+1;if j>N-1 then j:=N-1
end
END;
6.PROCEDURE IDF
Ќ § 票Ґ
‚®ббв ®ў«ҐЁҐ дгЄжЁЁ Ё¤Ґ «мл¬ дЁ«мв஬ Ё§ЄЁе з бв®в.
Њ ⥬ вЁзҐбЄ®Ґ ®ЇЁб ЁҐ
Џ®¤Їа®Ја ¬¬ ®бгйҐбвў«пҐв ў®ббв ®ў«ҐЁҐ Ёб室®© "ҐЇаҐалў®©" дгЄжЁЁ
Ї® § зҐЁп¬ аҐиҐвз в®© дгЄжЁЁ Ё¤Ґ «мл¬ дЁ«мв஬ Ё§ЄЁе з бв®в.
ЋзҐаҐ¤лҐ § зҐЁп ў®ббв ў«Ёў Ґ¬®© дгЄжЁЁ ўлзЁб«повбп а冷¬
Љ®вҐ«мЁЄ®ў :
Yif[i] = Yif[i]+Ydis[j]*sin(alfa)/alfa, Ј¤Ґ alfa:=Wif*(X[i]-Xdis[j]).
ЏаЁ § 票пе гЈ« alfa ¬ҐмиҐ Ї®а®Ј®ў®Ј®:
Yif[i] = Yif[i]+Ydis[j]
ѓ«®Ў «млҐ ЇҐаҐ¬ҐлҐ
K3 - Є«оз,®ЇаҐ¤Ґ«пойЁ© Ґ®е®¤Ё¬®бвм ўлў®¤ Ја дЁЄ®ў дгЄжЁ©:
K3=0 - Ја дЁЄЁ дгЄжЁ© Ґ ўлў®¤пвбп;
K3<>0 - Ја дЁЄЁ дгЄжЁ© ўлў®¤пвбп;
N - зЁб«® ўбҐе ®вбзҐв®ў аЈг¬Ґв ЁвҐаў «Ґ ®ЇаҐ¤Ґ«ҐЁп дгЄжЁЁ;
Ndis - зЁб«® ¤ЁбЄаҐвле ®вбзҐв®ў аЈг¬Ґв ЁвҐаў «Ґ ®ЇаҐ¤Ґ«ҐЁп дгЄжЁЁ;
Wif - "з бв®в б१ " Ё¤Ґ «м®Ј® дЁ«мва Ё§ЄЁе з бв®в;
Xdis - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© Ndis, ᮤҐа¦ йЁ© § 票п
аЈг¬Ґв ў ¤ЁбЄаҐвле ®вбзҐв е дгЄжЁЁ;
Ydis - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© Ndis, ᮤҐа¦ йЁ© § 票п
дгЄжЁЁ ў ¤ЁбЄаҐвле ®вбзҐв е;
X - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N, ᮤҐа¦ йЁ© § 票п
аЈг¬Ґв дгЄжЁЁ;
Yif - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N, ᮤҐа¦ йЁ© § 票п
ў®ббв ®ў«Ґ®© дгЄжЁЁ Ё¤Ґ «мл¬ дЁ«мв஬ Ё§ЄЁе з бв®в;
FO - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N,ᮤҐа¦ йЁ© § 票п
®зҐаҐ¤®© б㬬Ёа㥬®© дгЄжЁЁ ®вбзҐв ап¤ Љ®вҐ«мЁЄ®ў ;
’ҐЄбв Їа®жҐ¤гал
PROCEDURE IDF(K3,N,Ndis,:word;Wif:real;var Xdis,Ydis,X,Yif,FO:array of real);
VAR
i,j,Xo,Yo:word;
alfa,dT,dF:real;
Gd,Gm:integer;
CONST
S1='ђҐ§г«мвЁагой п дгЄжЁп.';
S2='‘㬬Ёа㥬 п дгЄжЁп ®вбзҐв .';
por=1e-10;
BEGIN
if K3<>0 then begin Gd:=0;InitGraph(Gd,Gm,F_bgi) end;
for i:=0 to N-1 do Yif[i]:=0;
for j:=0 to Ndis-1 do
begin
for i:=0 to N-1 do
begin
alfa:=Wif*(X[i]-Xdis[j]);
if abs(alfa)<por
then FO[i]:=Ydis[j]
else FO[i]:=Ydis[j]*sin(alfa)/alfa;
Yif[i]:=Yif[i]+FO[i]
end;
if K3<>0 then ShowGra(1,0,X,Yif,X,FO,S1,S2,'');
end;
if K3<>0 then CloseGraph
END;
7.PROCEDURE GRA
Ќ § 票Ґ
ѓа дЁзҐбЄ®Ґ ®в®Ўа ¦ҐЁп Ја дЁЄ®ў дгЄжЁ©.
Њ ⥬ вЁзҐбЄ®Ґ ®ЇЁб ЁҐ
Џа®жҐ¤га гбв ў«Ёў Ґв Ја дЁзҐбЄЁ© ०Ё¬ а Ў®вл Ё б Ї®¬®ймо
Їа®жҐ¤гал ShowGra ўлў®¤Ёв ¤ЁбЇ«Ґ© Ја дЁЄЁ дгЄжЁ©.ЏҐаҐ¤
§ ўҐа襨Ґ¬ бў®Ґ© а Ў®вл Їа®жҐ¤га § Єалў Ґв Ја дЁзҐбЄЁ© ०Ё¬.
ѓ«®Ў «млҐ ЇҐаҐ¬ҐлҐ
K - Є«оз,®ЇаҐ¤Ґ«пойЁ© ०Ё¬ ўлў®¤ Ја дЁЄ®ў дгЄжЁ©:
K=1 - F1 Ё F2 ўлў®¤пвбп Є Є "ҐЇаҐалўлҐ" дгЄжЁЁ;
K=2 - дгЄжЁЁ ўлў®¤пвбп ў ўЁ¤Ґ F1-"ҐЇаҐалў п",F2-"аҐиҐвз в п";
K=3 - дгЄжЁЁ ўлў®¤пвбп ў ўЁ¤Ґ F1-"ҐЇаҐалў п",F2-"Єў в®ў п";
K=4 - F1 Ё F2 ўлў®¤пвбп Є Є "аҐиҐвз влҐ" дгЄжЁЁ;
K=5 - дгЄжЁЁ ўлў®¤пвбп ў ўЁ¤Ґ F1-"ҐЇаҐалў п",F2-"Єў в®ў п";
K=6 - F1 Ё F2 ўлў®¤пвбп Є Є "Єў в®ў лҐ" дгЄжЁЁ;
E - Є«оз,®ЇаҐ¤Ґ«пойЁ© Ґ®Ў¤Ё¬®бвм ўлў®¤ Ја дЁЄ а §®бвЁ дгЄжЁ© F2-F1
(в®«мЄ® ў ०Ё¬ е K=1,K=3,K=6):
E=0 - Ја дЁЄ а §®бвЁ дгЄжЁ© F2-F1 Ґ ўлў®¤Ёвбп;
E<>0 - Ја дЁЄ а §®бвЁ дгЄжЁ© F2-F1 ўлў®¤Ёвбп;
T1 - ¬ ббЁў аЈг¬Ґв®ў дгЄжЁЁ F1;
F1 - ¬ ббЁў § 票© ЇҐаў®© дгЄжЁЁ;
S1 - §ў ЁҐ ЇҐаў®© дгЄжЁЁ;
T2 - ¬ ббЁў аЈг¬Ґв®ў дгЄжЁЁ F2;
F2 - ¬ ббЁў § 票© ўв®а®© дгЄжЁЁ;
S2 - §ў ЁҐ ўв®а®© дгЄжЁЁ;
S3 - §ў ЁҐ а §®бвЁ дгЄжЁ© F2-F1;
’ҐЄбв Їа®жҐ¤гал
TYPE S_60 =string[60];
PROCEDURE GRA(K,E:byte;var T1,F1,T2,F2:array of real;S1,S2,S3:S_60);
VAR
Xo,Yo:word;
dT,dF:real;
Gd,Gm:integer;
BEGIN
Gd:=0;InitGraph(Gd,Gm,F_bgi);
ShowGra(K,E,T1,F1,T2,F2,S1,S2,S3);
CloseGraph
END.
„‹џ –€”ђЋ‚ЋѓЋ ЊЋ„…‹€ђЋ‚ЂЌ€џ
‘€‘’…Њ› „€‘Љђ…’€‡Ђ–€€
Ќ…Џђ…ђ›‚Ќ›• ‘ЋЋЃ™…Ќ€‰ ЏЋ ‚ђ…Њ…Ќ€
‘ Ћ „ … ђ † Ђ Ќ € …
-------------------
1. ЋЎйЁҐ ᢥ¤ҐЁп
2. ”гЄжЁ® «м®Ґ § 票Ґ Є®¬Ї«ҐЄб
3. ЋЇЁб ЁҐ ЇаЁ¬ҐҐЁп Є®¬Ї«ҐЄб
4. ‚е®¤лҐ Ё ўле®¤лҐ ¤ лҐ
5. ‘ЇЁб®Є Ї®¤Їа®Ја ¬¬ Є®¬Ї«ҐЄб
1. Function GAUSS
2. Procedure GF
3. Procedure GKLF
4. Procedure FLF
5. Procedure DIS
6. Procedure IDF
7. Procedure GRA
1. ЋЎйЁҐ ᢥ¤ҐЁп.
‚ ¤ ®¬ ⥪б⥠ЇаЁў®¤Ёвбп ®ЇЁб ЁҐ Є®¬Ї«ҐЄб г祡®-« Ў®а в®але Ї®¤Їа®-
Ја ¬¬ "–Ёда®ў®Ґ ¬®¤Ґ«Ёа®ў ЁҐ бЁбвҐ¬л ¤ЁбЄаҐвЁ§ жЁЁ ҐЇаҐалўле б®®ЎйҐЁ© Ї®
ўаҐ¬ҐЁ".Љ®¬Ї«ҐЄб б®бв®Ёв Ё§ Ї®¤Їа®Ја ¬¬, ЇЁб ле «Ј®аЁ¬ЁзҐбЄ®¬ п§лЄҐ
"Turbo Pascal 7.0" Ё Ї®¬ҐйҐле ў ¬®¤г«м GNK.
2. ”гЄжЁ® «м®Ґ § 票Ґ Є®¬Ї«ҐЄб .
Љ®¬Ї«ҐЄб Ї®¤Їа®Ја ¬¬ ЇаҐ¤ § зҐ ¤«п ¬®¤Ґ«Ёа®ў Ёп бЁбвҐ¬л ¤ЁбЄаҐвЁ§ жЁЁ
ҐЇаҐалўле б®®ЎйҐЁ© Ї® ўаҐ¬ҐЁ Їг⥬ ЇаҐ¤бв ў«ҐЁп бд®а¬Ёа®ў ®© дгЄжЁЁ
"ҐЇаҐалў®Ј® аЈг¬Ґв " ў ўЁ¤Ґ аҐиҐвз в®© дгЄжЁЁ ¤ЁбЄаҐв®Ј® аЈг¬Ґв ў
ᮮ⢥вбвўЁЁ б ⥮६®© Љ®вҐ«мЁЄ®ў , Ё ҐҐ Ї®б«Ґ¤го饣® ў®ббв ®ў«ҐЁп
Ё¤Ґ «мл¬ дЁ«мв஬ Ё§ЄЁе з бв®в. ‚®§¬®¦® Ја дЁзҐбЄ®Ґ ЇаҐ¤бв ў«ҐЁҐ дгЄжЁ©
Є ¦¤®¬ нв ЇҐ ¬®¤Ґ«Ёа®ў Ёп.
3. ЋЇЁб ЁҐ ЇаЁ¬ҐҐЁп Є®¬Ї«ҐЄб .
„«п ЁбЇ®«м§®ў Ёп Є®¬Ї«ҐЄб ў ‚ 襩 Їа®Ја ¬¬Ґ Ґ®Ўе®¤Ё¬® б ¬л¬ ЇҐаўл¬
®ЇҐа в®а®¬ Їа®Ја ¬¬л Ї®бв ўЁвм USES gnk.ЏаЁ §в®¬ Ґ®Ўе®¤Ё¬® «ЁзЁҐ д ©«
gnk.tpu ў ⥪г饬 Є в «®ЈҐ Ё«Ё ў Є в «®ЈҐ,гЄ § ®¬ ў ¬Ґо
Options|Directories...|Unit directories.„«п ®а¬ «м®© а Ў®вл Їа®жҐ¤гал
Ї®бв஥Ёп Ја дЁЄ®ў GRA Ґ®Ўе®¤Ё¬® «ЁзЁҐ д ©« egavga.bgi ў
Є в «®ЈҐ D:/TP/BGI.
"ЌҐЇаҐалў п" дгЄжЁп Ё¬ЁвЁагҐвбп ¬®¦Ґбвў®¬ § 票© б«гз ©®© дгЄжЁЁ,
ЈҐҐаЁагҐ¬л¬ Їа®жҐ¤га®© GF Ё«Ё ¬®¦Ґбвў®¬ § 票© Єгб®з®-«ЁҐ©®© дгЄжЁЁ,
ЈҐҐаЁагҐ¬л¬ Їа®жҐ¤га®© GKLF.‘ЈҐҐаЁа㥬 п дгЄжЁп ¬®¦Ґв Ўлвм "бЈ« ¦Ґ "
Їа®жҐ¤га®© FLF.Џа®жҐ¤га DIS ®ЇаҐ¤Ґ«пҐв § 票п дгЄжЁЁ ў ®ЇвЁ¬ «мле
®вбзҐв е,в.Ґ. Ё¬ЁвЁагҐв Їа®жҐбб ¤ЁбЄаҐвЁ§ жЁЁ "ҐЇаҐалў®©" дгЄжЁЁ Ї®
ўаҐ¬ҐЁ Ё ЇаҐ¤бв ў«пҐв ҐҐ ў ўЁ¤Ґ ¬®¦Ґбвў § 票© аҐиҐвз в®© дгЄжЁЁ
¤ЁбЄаҐв®Ј® аЈг¬Ґв .‚®ббв ®ў«ҐЁҐ "ҐЇаҐалў®©" дгЄжЁЁ Ї® ¤ЁбЄаҐвл¬
®вбзҐв ¬ аҐиҐвз в®© дгЄжЁЁ Ё¤Ґ «мл¬ дЁ«мв஬ Ё§ЄЁе з бв®в Ё¬ЁвЁагҐвбп
Їа®жҐ¤га®© IDF,Є®в®а п Ї®§ў®«пҐв ЇаҐ¤бв ўЁвм ў Ја дЁзҐбЄ®¬ ўЁ¤Ґ Їа®жҐбб
б㬬Ёа®ў Ёп дгЄжЁ© ®вбзҐв .„«п Ј«п¤®бвЁ ¬®¦® Ї®бва®Ёвм Ја дЁЄЁ
Ёб室®©,бЈ« ¦Ґ®©,аҐиҐвз в®© Ё ў®ббв ®ў«Ґ®© дгЄжЁ© ў¬Ґб⥠б дгЄжЁп¬Ё
®иЁЎ®Є бЈ« ¦Ёў Ёп Ё ў®ббв ®ў«ҐЁп б Ї®¬®ймо Їа®жҐ¤гал GRA.
4. ‚е®¤лҐ Ё ўле®¤лҐ ¤ лҐ.
4.1 ‚е®¤лҐ ўҐ«ЁзЁл
‚ Є зҐб⢥ ўе®¤ле Ї а ¬Ґва®ў жЁда®ў®© ¬®¤Ґ«Ё бЁбвҐ¬л ¤ЁбЄаҐвЁ§ жЁЁ
ҐЇаҐалўле б®®ЎйҐЁ© Ї® ўаҐ¬ҐЁ ЁбЇ®«м§говбп б«Ґ¤гойЁҐ ўҐ«ЁзЁл:
T - ЇҐаЁ®¤ дгЄжЁЁ;
N - зЁб«® ўбҐе ®вбзҐв®ў аЈг¬Ґв ЁвҐаў «Ґ ®ЇаҐ¤Ґ«ҐЁп дгЄжЁЁ;
M - зЁб«® Їа®¬Ґ¦гв®зле ®вбзҐв®ў аЈг¬Ґв ¬Ґ¦¤г б®бҐ¤Ё¬Ё ¤ЁбЄаҐвл¬Ё
®вбзҐв ¬Ё;
W - з бв®в ўлб襩 Ј ମЁЄЁ бЇҐЄва дгЄжЁЁ (бЁЈ « );
K1,K2 - Є«озЁ Їа®жҐ¤гал GF,®ЇаҐ¤Ґ«пойЁҐ ०Ё¬ ЈҐҐа жЁЁ дгЄжЁЁ;
B1,B2 - Ї а ¬Ґвал ¤«п ЈҐҐа жЁЁ Є®нддЁжЁҐв®ў ”гамҐ;
Ma - ¬ ⥬ вЁзҐбЄ®Ґ ®¦Ё¤ ЁҐ ¬Ї«Ёвг¤ Ј ମЁЄ ап¤ ”гамҐ;
Sa - б।ҐҐ Єў ¤а вЁз®Ґ ®вЄ«®ҐЁҐ ¬Ї«Ёвг¤ Ј ମЁЄ ап¤ ”гамҐ;
Mp - ¬ ⥬ вЁзҐбЄ®Ґ ®¦Ё¤ ЁҐ д §®ўле б¤ўЁЈ®ў Ј ମЁЄ ап¤ ”гамҐ;
Sp - б।ҐҐ Єў ¤а вЁз®Ґ ®вЄ«®ҐЁҐ д §®ўле б¤ўЁЈ®ў Ј ମЁЄ ап¤ ”гамҐ;
K3 - Є«оз Їа®жҐ¤гал IDF,®ЇаҐ¤Ґ«пойЁ© ०Ё¬ ЈҐҐа жЁЁ дгЄжЁЁ;
K,E - Є«озЁ Їа®жҐ¤гал GRA,®ЇаҐ¤Ґ«пойЁҐ ०Ё¬л ўлў®¤ Ја дЁЄ®ў дгЄжЁ©.
4.2 ‚ле®¤лҐ ўҐ«ЁзЁл
X - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N, ᮤҐа¦ йЁ© § 票п
аЈг¬Ґв дгЄжЁЁ;
G - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N,ᮤҐа¦ йЁ© § 票п
®зҐаҐ¤®© б㬬Ёа㥬®© Ј ମЁЄЁ ап¤ ”гамҐ;
FO - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N,ᮤҐа¦ йЁ© § 票п
®зҐаҐ¤®© б㬬Ёа㥬®© дгЄжЁЁ ®вбзҐв ап¤ Љ®вҐ«мЁЄ®ў ;
Yo - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N, ᮤҐа¦ йЁ© § 票п
бЈҐҐаЁа®ў ®© "ҐЇаҐалў®©" дгЄжЁЁ;
Y - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N, ᮤҐа¦ йЁ© § 票п
бЈ« ¦Ґ®© "ҐЇаҐалў®©" дгЄжЁЁ;
Xdis - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© Ndis, ᮤҐа¦ йЁ© § 票п
аЈг¬Ґв®ў аҐиҐвз в®© дгЄжЁЁ;
Ydis - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© Ndis, ᮤҐа¦ йЁ© § 票п
аҐиҐвз в®© дгЄжЁЁ;
Yif - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N, ᮤҐа¦ йЁ© § 票п
ў®ббв ®ў«Ґ®© дгЄжЁЁ Ё¤Ґ «мл¬ дЁ«мв஬ Ё§ЄЁе з бв®в.
5. ‘ЇЁб®Є Їа®жҐ¤га Є®¬Ї«ҐЄб
1. FUNCTION GAUSS
Ќ § 票Ґ
ѓҐҐа жЁп ЇбҐў¤®б«гз ©ле зЁбҐ« б ®а¬ «мл¬ (Ј гбб®ўл¬) а бЇаҐ¤Ґ«ҐЁҐ¬.
Њ ⥬ вЁзҐбЄ®Ґ ®ЇЁб ЁҐ
”гЄжЁп ЈҐҐаЁагҐв ўҐйҐб⢥®Ґ ЇбҐў¤®б«гз ©®Ґ зЁб«® б ®а¬ «мл¬
а бЇаҐ¤Ґ«ҐЁҐ¬ б ¬ ⥬ вЁзҐбЄЁ¬ ®¦Ё¤ ЁҐ¬ M Ё б।ҐЄў ¤а вЁзҐбЄЁ¬
®вЄ«®ҐЁҐ¬ S.
ѓ«®Ў «млҐ ЇҐаҐ¬ҐлҐ
M - ¬ ⥬ вЁзҐбЄ®Ґ ®¦Ё¤ ЁҐ б«гз ©®© ўҐ«ЁзЁл;
S - б।ҐҐ Єў ¤а вЁз®Ґ ®вЄ«®ҐЁҐ б«гз ©®© ўҐ«ЁзЁл.
’ҐЄбв дгЄжЁЁ
FUNCTION GAUSS(M,S:real):real;
VAR
a,b,c,d:real;
BEGIN
repeat
a:=2*random-1;
b:=2*random-1;
c:=sqr(a)+sqr(b)
until c<1;
d:=sqrt((-2)*ln(c)/c);
GAUSS:=M+S*a*d
END;
2.PROCEDURE GF
Ќ § 票Ґ
ѓҐҐа жЁп ҐЇаҐалў®© дгЄжЁЁ.
Њ ⥬ вЁзҐбЄ®Ґ ®ЇЁб ЁҐ
Џа®жҐ¤га ЈҐҐаЁагҐв ЇҐаЁ®¤ЁзҐбЄго "ҐЇаҐалўго б«гз ©го" дгЄжЁо Y
Їг⥬ б㬬Ёа®ў Ёп Є®Ґз®Ј® зЁб« Ј ମЁЄ, ¬Ї«Ёвг¤л Ё д §®ўлҐ гЈ«л
¤«п Є ¦¤®© Ё§ Є®в®але § ¤ овбп ўв®¬ вЁзҐбЄЁ («ЁЎ® § Є®®¬Ґа®,«ЁЎ®
б«гз ©®).‚лзЁб«ҐЁҐ § 票© дгЄжЁЁ ®ЇаҐ¤Ґ«пҐвбп а冷¬ ”гамҐ.
ѓ«®Ў «млҐ ЇҐаҐ¬ҐлҐ
K1 - Є«оз,®ЇаҐ¤Ґ«пойЁ© бЇ®б®Ў ®ЇаҐ¤Ґ«ҐЁп ¬Ї«Ёвг¤ Ё д §®ўле гЈ«®ў
Ј ମЁЄ:
K1=0 - б Ї®¬®ймо Ї а ¬Ґва®ў B1 Ё B2;
K1<>0 - б Ї®¬®ймо ¤ взЁЄ ®а¬ «м®а бЇаҐ¤Ґ«Ґле зЁбҐ« Ё Ї а ¬Ґва®ў
Ma,Sa,Mp,Sp;
K2 - Є«оз,®ЇаҐ¤Ґ«пойЁ© Ґ®е®¤Ё¬®бвм Ја дЁЄ®Ј® ўлў®¤ Їа®жҐбб ЈҐҐа жЁЁ
дгЄжЁЁ:
K=0 - Ја дЁЄЁ дгЄжЁ© Ґ ўлў®¤пвбп;
K<>0 - Ја дЁЄЁ дгЄжЁ© ўлў®¤пвбп;
T - ЇҐаЁ®¤ дгЄжЁЁ;
W - з бв®в ўлб襩 Ј ମЁЄЁ бЇҐЄва дгЄжЁЁ (бЁЈ « );
B1,B2 - Ї а ¬Ґвал ¤«п ЈҐҐа жЁЁ Є®нддЁжЁҐв®ў ”гамҐ;
Ma - ¬ ⥬ вЁзҐбЄ®Ґ ®¦Ё¤ ЁҐ ¬Ї«Ёвг¤ Ј ମЁЄ ап¤ ”гамҐ;
Sa - б।ҐҐ Єў ¤а вЁз®Ґ ®вЄ«®ҐЁҐ ¬Ї«Ёвг¤ Ј ମЁЄ ап¤ ”гамҐ;
Mp - ¬ ⥬ вЁзҐбЄ®Ґ ®¦Ё¤ ЁҐ д §®ўле б¤ўЁЈ®ў Ј ମЁЄ ап¤ ”гамҐ;
Sp - б।ҐҐ Єў ¤а вЁз®Ґ ®вЄ«®ҐЁҐ д §®ўле б¤ўЁЈ®ў Ј ମЁЄ ап¤ ”гамҐ;
X - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N, ᮤҐа¦ йЁ© § 票п
аЈг¬Ґв дгЄжЁЁ;
G - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N,ᮤҐа¦ йЁ© § 票п
®зҐаҐ¤®© б㬬Ёа㥬®© Ј ମЁЄЁ ап¤ ”гамҐ;
Y - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N, ᮤҐа¦ йЁ© § 票п
бЈ« ¦Ґ®© "ҐЇаҐалў®©" дгЄжЁЁ;
’ҐЄбв Їа®жҐ¤гал
PROCEDURE GF(K1,K2:word;T,W,B1,B2,Ma,Sa,Mp,Sp:real;var X,Y,G:array of real);
CONST
S1='ђҐ§г«мвЁагой п дгЄжЁп.';
S2='‘㬬Ёа㥬 п Ј ମЁЄ .';
VAR
Gd,Gm:integer;
i,j,Xo,Yo:word;
a,p,wj,dx,dT,dF:real;
BEGIN
if K2<>0 then begin Gd:=0;InitGraph(Gd,Gm,F_bgi) end;
dx:=T/High(X);
X[0]:=0;for i:=1 to High(X) do X[i]:=X[i-1]+dx;
for i:=0 to High(X) do Y[i]:=0;
j:=1;wj:=2*Pi*j/T;
while wj<=W do
begin
if K1=0
then begin a:=B1/j;p:=B2/j end
else begin a:=Gauss(Ma,Sa);p:=Gauss(Mp,Sp) end;
for i:=0 to High(X) do
begin
G[i]:=a*cos(wj*X[i]-p);
Y[i]:=Y[i]+G[i]
end;
if K2<>0 then ShowGra(1,0,X,Y,X,G,S1,S2,'');
inc(j);wj:=2*Pi*j/T
end;
if K2<>0 then CloseGraph
END;
3.PROCEDURE GKLF
Ќ § 票Ґ
ѓҐҐа жЁп Єгб®з®-«ЁҐ©®© дгЄжЁЁ.
Њ ⥬ вЁзҐбЄ®Ґ ®ЇЁб ЁҐ
Џа®жҐ¤га ЈҐҐаЁагҐв ЇҐаЁ®¤ЁзҐбЄго Єгб®з®-«ЁҐ©го дгЄжЁо Yo.„«п нв®Ј®
Ї® д®а¬г«Ґ y=k*x+b ўлзЁб«пҐвбп § зҐЁп «ЁҐ©ле гз бвЄ®ў дгЄжЁЁ
ЁвҐаў «Ґ ®в Ax[1] ¤® Ax[1]+T б и Ј®¬ T/(N-1).„«п ®ЇаҐ¤Ґ«ҐЁп Є®нддЁжЁҐв®ў
k Ё b «ЁҐ©ле гз бвЄ®ў ЁбЇ®«м§говбп Є®®а¤Ё вл Na в®зЄҐЄ ЇҐаҐЈЁЎ
(ў ¬ ббЁўҐ Ax) Ё § 票п дгЄжЁЁ ў нвЁе в®зЄ е (ў ¬ ббЁўҐ Ay).
ѓ«®Ў «млҐ ЇҐаҐ¬ҐлҐ
T - ЇҐаЁ®¤ дгЄжЁЁ;
Ax - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© Na,ᮤҐа¦ йЁ© Є®®а¤Ё вл
в®зЄҐЄ ЇҐаҐЈЁЎ ;
Ay - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© Na,ᮤҐа¦ йЁ© § 票п
дгЄжЁЁ ў в®зЄ е ЇҐаҐЈЁЎ ;
X - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N, ᮤҐа¦ йЁ© § 票п
аЈг¬Ґв дгЄжЁЁ;
Yo - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N, ᮤҐа¦ йЁ© § 票п
бЈҐҐаЁа®ў ®© Єгб®з®-«ЁҐ©®© дгЄжЁЁ.
‹®Є «млҐ ЇҐаҐ¬ҐлҐ
i - ®¬Ґа ®зҐаҐ¤®Ј® ®вбзҐв ;
j - ®¬Ґа ®зҐаҐ¤®© в®зЄЁ ЇҐаҐЈЁЎ Єгб®з®-«ЁҐ©®© дгЄжЁЁ;
k - Є®нддЁжЁҐв Є«® ®зҐаҐ¤®Ј® гз бвЄ Єгб®з®-«ЁҐ©®© дгЄжЁЁ;
b - Ї®бв®пл© Є®нддЁжЁҐв ®зҐаҐ¤®Ј® гз бвЄ Єгб®з®-«ЁҐ©®© дгЄжЁЁ;
dx - ЁвҐаў « ¬Ґ¦¤г б®бҐ¤Ё¬Ё ®вбзҐв ¬Ё аЈг¬Ґв .
’ҐЄбв Їа®жҐ¤гал
PROCEDURE GKLF(T:real;var Ax,Ay,X,Yo:array of real);
VAR
i,j:word;
k,b,dx:real;
BEGIN
dx:=T/High(X);
X[0]:=Ax[0];
Yo[0]:=Ay[0];
j:=0;
for i:=1 to High(X) do
begin
X[i]:=X[i-1]+dx;
if (j<High(Ax)) and (X[i]>=Ax[j+1]) then inc(j);
if j<High(Ax)
then k:=(Ay[j+1]-Ay[j])/(Ax[j+1]-Ax[j])
else k:=(Ay[0]-Ay[j])/(Ax[0]+T-Ax[j]);
b:=Ay[j]-k*Ax[j];
Yo[i]:=k*X[i]+b
end
END;
4.PROCEDURE FLF
Ќ § 票Ґ
"‘Ј« ¦Ёў ЁҐ" ҐЇаҐалў®© ЇҐаЁ®¤ЁзҐбЄ®© дгЄжЁЁ.
Њ ⥬ вЁзҐбЄ®Ґ ®ЇЁб ЁҐ
‘ Ї®¬®ймо ЇаאַЈ® ЇаҐ®Ўа §®ў Ёп ”гамҐ Ї® Ёд®а¬ жЁЁ ®Ў Ёб室®©
ЇҐаЁ®¤ЁзҐбЄ®© дгЄжЁЁ ®ЇаҐ¤Ґ«повбп ”гамҐ-Є®нддЁжЁҐвл ¤«п ¬®¦Ґбвў
Ј ମЁЄ,®Ја ЁзҐ®Ј® з бв®в®© ҐЄ®в®а®© "ўлб襩" Ј ମЁЄЁ.
„ «ҐҐ б Ї®¬®ймо ап¤ ”гамҐ (®Ўа в®Ј® ЇаҐ®Ўа §®ў Ёп) ®ЇаҐ¤Ґ«повбп
§ 票п бЈ« ¦Ґ®© ҐЇаҐалў®© дгЄжЁЁ Їг⥬ б㬬Ёа®ў Ёп § 票©
ўбҐе Ј ମЁЄ "®Ја ЁзҐ®Ј®" бЇҐЄва бЈ« ¦Ґ®© дгЄжЁЁ.
ѓ«®Ў «млҐ ЇҐаҐ¬ҐлҐ
W - з бв®в б१ дгЄжЁЁ (з бв®в "ўлб襩" Ј ମЁЄЁ);
T - ЇҐаЁ®¤ дгЄжЁЁ;
X - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N, ᮤҐа¦ йЁ© § 票п
аЈг¬Ґв дгЄжЁЁ;
Yo - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N, ᮤҐа¦ йЁ© § 票п
бЈҐҐаЁа®ў ®© "ҐЇаҐалў®©" дгЄжЁЁ;
Y - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N, ᮤҐа¦ йЁ© § 票п
бЈ« ¦Ґ®© "ҐЇаҐалў®©" дгЄжЁЁ;
’ҐЄбв Їа®жҐ¤гал
PROCEDURE FLF(W,T:real;var X,Yo,Y:array of real);
VAR
i,j:word;
a0,a,b,wj,dx:real;
BEGIN
dx:=T/High(X);
a0:=0;for i:=0 to High(X) do a0:=a0+Yo[i]*dx;a0:=a0/T;
for i:=0 to High(X) do Y[i]:=a0;
j:=1;wj:=2*Pi*j/T;
while wj<=W do
begin
a:=0;b:=0;
for i:=0 to High(X) do
begin
a:=a+Yo[i]*cos(wj*X[i])*dx;
b:=b+Yo[i]*sin(wj*X[i])*dx
end;
a:=2*a/T;b:=2*b/T;
for i:=0 to High(X) do
Y[i]:=Y[i]+a*cos(wj*X[i])+b*sin(wj*X[i]);
inc(j);wj:=2*Pi*j/T
end
END;
5.PROCEDURE DIS
Ќ § 票Ґ
„ЁбЄаҐвЁ§ жЁп ҐЇаҐалў®© дгЄжЁЁ.
Њ ⥬ вЁзҐбЄ®Ґ ®ЇЁб ЁҐ
Џ®¤Їа®Ја ¬¬ ®бгйҐбвў«пҐв а ў®¬Ґаго (ўаҐ¬Ґго) ¤ЁбЄаҐвЁ§ жЁо ҐЇаҐалў®©
дгЄжЁЁ Їг⥬ ўлЎ®а Ё§ ¬ ббЁў аЈг¬Ґв®ў Ё § 票© нв®© дгЄжЁЁ
аЈг¬Ґв®ў Ё § 票© ¤«п аҐиҐвз в®© дгЄжЁЁ.„«п нв®Ј® ўлзЁб«повбп ®¬Ґа
¤ЁбЄаҐвле ®вбзҐв®ў Ї® д®а¬г«Ґ :
j:=i+(M+1) ,Ј¤Ґ
j - ®¬Ґа ®зҐаҐ¤®Ј® ¤ЁбЄаҐв®Ј® ®вбзҐв ;
i - ®¬Ґа ЇаҐ¤л¤г饣® ¤ЁбЄаҐв®Ј® ®вбзҐв ;
M - зЁб«® Їа®¬Ґ¦гв®зле ®вбзҐв®ў аЈг¬Ґв ¬Ґ¦¤г б®бҐ¤Ё¬Ё
¤ЁбЄаҐвл¬Ё ®вбзҐв ¬Ё.
ѓ«®Ў «млҐ ЇҐаҐ¬ҐлҐ
M - зЁб«® Їа®¬Ґ¦гв®зле ®вбзҐв®ў аЈг¬Ґв ¬Ґ¦¤г б®бҐ¤Ё¬Ё ¤ЁбЄаҐвл¬Ё
®вбзҐв ¬Ё;
N - зЁб«® ўбҐе ®вбзҐв®ў аЈг¬Ґв ЁвҐаў «Ґ ®ЇаҐ¤Ґ«ҐЁп дгЄжЁЁ;
Ndis - зЁб«® ¤ЁбЄаҐвле ®вбзҐв®ў аЈг¬Ґв ЁвҐаў «Ґ ®ЇаҐ¤Ґ«ҐЁп дгЄжЁЁ;
X - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N, ᮤҐа¦ йЁ© § 票п
аЈг¬Ґв дгЄжЁЁ;
Y - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N, ᮤҐа¦ йЁ© § 票п
бЈ« ¦Ґ®© "ҐЇаҐалў®©" дгЄжЁЁ;
Xdis - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© Ndis, ᮤҐа¦ йЁ© § 票п
аЈг¬Ґв ў ¤ЁбЄаҐвле ®вбзҐв е дгЄжЁЁ;
Ydis - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© Ndis, ᮤҐа¦ йЁ© § 票п
дгЄжЁЁ ў ¤ЁбЄаҐвле ®вбзҐв е;
’ҐЄбв Їа®жҐ¤гал
PROCEDURE DIS(M,N,Ndis:word;var X,Y,Xdis,Ydis:array of real);
VAR
i,j:word;
BEGIN
j:=0;
for i:=0 to Ndis-1 do
begin
Xdis[i]:=X[j];
Ydis[i]:=Y[j];
j:=j+M+1;if j>N-1 then j:=N-1
end
END;
6.PROCEDURE IDF
Ќ § 票Ґ
‚®ббв ®ў«ҐЁҐ дгЄжЁЁ Ё¤Ґ «мл¬ дЁ«мв஬ Ё§ЄЁе з бв®в.
Њ ⥬ вЁзҐбЄ®Ґ ®ЇЁб ЁҐ
Џ®¤Їа®Ја ¬¬ ®бгйҐбвў«пҐв ў®ббв ®ў«ҐЁҐ Ёб室®© "ҐЇаҐалў®©" дгЄжЁЁ
Ї® § зҐЁп¬ аҐиҐвз в®© дгЄжЁЁ Ё¤Ґ «мл¬ дЁ«мв஬ Ё§ЄЁе з бв®в.
ЋзҐаҐ¤лҐ § зҐЁп ў®ббв ў«Ёў Ґ¬®© дгЄжЁЁ ўлзЁб«повбп а冷¬
Љ®вҐ«мЁЄ®ў :
Yif[i] = Yif[i]+Ydis[j]*sin(alfa)/alfa, Ј¤Ґ alfa:=Wif*(X[i]-Xdis[j]).
ЏаЁ § 票пе гЈ« alfa ¬ҐмиҐ Ї®а®Ј®ў®Ј®:
Yif[i] = Yif[i]+Ydis[j]
ѓ«®Ў «млҐ ЇҐаҐ¬ҐлҐ
K3 - Є«оз,®ЇаҐ¤Ґ«пойЁ© Ґ®е®¤Ё¬®бвм ўлў®¤ Ја дЁЄ®ў дгЄжЁ©:
K3=0 - Ја дЁЄЁ дгЄжЁ© Ґ ўлў®¤пвбп;
K3<>0 - Ја дЁЄЁ дгЄжЁ© ўлў®¤пвбп;
N - зЁб«® ўбҐе ®вбзҐв®ў аЈг¬Ґв ЁвҐаў «Ґ ®ЇаҐ¤Ґ«ҐЁп дгЄжЁЁ;
Ndis - зЁб«® ¤ЁбЄаҐвле ®вбзҐв®ў аЈг¬Ґв ЁвҐаў «Ґ ®ЇаҐ¤Ґ«ҐЁп дгЄжЁЁ;
Wif - "з бв®в б१ " Ё¤Ґ «м®Ј® дЁ«мва Ё§ЄЁе з бв®в;
Xdis - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© Ndis, ᮤҐа¦ йЁ© § 票п
аЈг¬Ґв ў ¤ЁбЄаҐвле ®вбзҐв е дгЄжЁЁ;
Ydis - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© Ndis, ᮤҐа¦ йЁ© § 票п
дгЄжЁЁ ў ¤ЁбЄаҐвле ®вбзҐв е;
X - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N, ᮤҐа¦ йЁ© § 票п
аЈг¬Ґв дгЄжЁЁ;
Yif - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N, ᮤҐа¦ йЁ© § 票п
ў®ббв ®ў«Ґ®© дгЄжЁЁ Ё¤Ґ «мл¬ дЁ«мв஬ Ё§ЄЁе з бв®в;
FO - ўҐйҐбвўҐл© ®¤®¬Ґал© ¬ ббЁў ¤«Ё®© N,ᮤҐа¦ йЁ© § 票п
®зҐаҐ¤®© б㬬Ёа㥬®© дгЄжЁЁ ®вбзҐв ап¤ Љ®вҐ«мЁЄ®ў ;
’ҐЄбв Їа®жҐ¤гал
PROCEDURE IDF(K3,N,Ndis,:word;Wif:real;var Xdis,Ydis,X,Yif,FO:array of real);
VAR
i,j,Xo,Yo:word;
alfa,dT,dF:real;
Gd,Gm:integer;
CONST
S1='ђҐ§г«мвЁагой п дгЄжЁп.';
S2='‘㬬Ёа㥬 п дгЄжЁп ®вбзҐв .';
por=1e-10;
BEGIN
if K3<>0 then begin Gd:=0;InitGraph(Gd,Gm,F_bgi) end;
for i:=0 to N-1 do Yif[i]:=0;
for j:=0 to Ndis-1 do
begin
for i:=0 to N-1 do
begin
alfa:=Wif*(X[i]-Xdis[j]);
if abs(alfa)<por
then FO[i]:=Ydis[j]
else FO[i]:=Ydis[j]*sin(alfa)/alfa;
Yif[i]:=Yif[i]+FO[i]
end;
if K3<>0 then ShowGra(1,0,X,Yif,X,FO,S1,S2,'');
end;
if K3<>0 then CloseGraph
END;
7.PROCEDURE GRA
Ќ § 票Ґ
ѓа дЁзҐбЄ®Ґ ®в®Ўа ¦ҐЁп Ја дЁЄ®ў дгЄжЁ©.
Њ ⥬ вЁзҐбЄ®Ґ ®ЇЁб ЁҐ
Џа®жҐ¤га гбв ў«Ёў Ґв Ја дЁзҐбЄЁ© ०Ё¬ а Ў®вл Ё б Ї®¬®ймо
Їа®жҐ¤гал ShowGra ўлў®¤Ёв ¤ЁбЇ«Ґ© Ја дЁЄЁ дгЄжЁ©.ЏҐаҐ¤
§ ўҐа襨Ґ¬ бў®Ґ© а Ў®вл Їа®жҐ¤га § Єалў Ґв Ја дЁзҐбЄЁ© ०Ё¬.
ѓ«®Ў «млҐ ЇҐаҐ¬ҐлҐ
K - Є«оз,®ЇаҐ¤Ґ«пойЁ© ०Ё¬ ўлў®¤ Ја дЁЄ®ў дгЄжЁ©:
K=1 - F1 Ё F2 ўлў®¤пвбп Є Є "ҐЇаҐалўлҐ" дгЄжЁЁ;
K=2 - дгЄжЁЁ ўлў®¤пвбп ў ўЁ¤Ґ F1-"ҐЇаҐалў п",F2-"аҐиҐвз в п";
K=3 - дгЄжЁЁ ўлў®¤пвбп ў ўЁ¤Ґ F1-"ҐЇаҐалў п",F2-"Єў в®ў п";
K=4 - F1 Ё F2 ўлў®¤пвбп Є Є "аҐиҐвз влҐ" дгЄжЁЁ;
K=5 - дгЄжЁЁ ўлў®¤пвбп ў ўЁ¤Ґ F1-"ҐЇаҐалў п",F2-"Єў в®ў п";
K=6 - F1 Ё F2 ўлў®¤пвбп Є Є "Єў в®ў лҐ" дгЄжЁЁ;
E - Є«оз,®ЇаҐ¤Ґ«пойЁ© Ґ®Ў¤Ё¬®бвм ўлў®¤ Ја дЁЄ а §®бвЁ дгЄжЁ© F2-F1
(в®«мЄ® ў ०Ё¬ е K=1,K=3,K=6):
E=0 - Ја дЁЄ а §®бвЁ дгЄжЁ© F2-F1 Ґ ўлў®¤Ёвбп;
E<>0 - Ја дЁЄ а §®бвЁ дгЄжЁ© F2-F1 ўлў®¤Ёвбп;
T1 - ¬ ббЁў аЈг¬Ґв®ў дгЄжЁЁ F1;
F1 - ¬ ббЁў § 票© ЇҐаў®© дгЄжЁЁ;
S1 - §ў ЁҐ ЇҐаў®© дгЄжЁЁ;
T2 - ¬ ббЁў аЈг¬Ґв®ў дгЄжЁЁ F2;
F2 - ¬ ббЁў § 票© ўв®а®© дгЄжЁЁ;
S2 - §ў ЁҐ ўв®а®© дгЄжЁЁ;
S3 - §ў ЁҐ а §®бвЁ дгЄжЁ© F2-F1;
’ҐЄбв Їа®жҐ¤гал
TYPE S_60 =string[60];
PROCEDURE GRA(K,E:byte;var T1,F1,T2,F2:array of real;S1,S2,S3:S_60);
VAR
Xo,Yo:word;
dT,dF:real;
Gd,Gm:integer;
BEGIN
Gd:=0;InitGraph(Gd,Gm,F_bgi);
ShowGra(K,E,T1,F1,T2,F2,S1,S2,S3);
CloseGraph
END.
Соседние файлы в папке doc