Ëåêöèéí
çîðèëãî:
Íýã
ôóíêöýýñ
íºãºº ôóíêö
óðóó
ïàðàìåòð äàìæóóëàõ
àðãóóä
(õàÿãààð,óòãààð,
òºëººëñºí
íýðýýð)
áîëîí
òýäãýýðèéí
òóñ òóñûí
îíöëîãóóä, ÿìàð
¿åä õýðõýí
õýðýãëýõ
õýðýãëýý,
õóâüñàã÷èéí
óòãà
àëäàãäàõ ýñ
àëäàãäàõ
÷àíàðóóä, ¿ð
ä¿í íü ÿìàð
áàéõ, C++-èéí
íýã îíöëîã
áîëîõ õýä
õýäýí èæèë íýð
á¿õèé äàõèí
òîäîðõîéëîãäñîí
ôóíêö-èéí
õýðýãëýý
ò¿¿íä
òàâèãäàõ
øààðäëàãóóä
çýðãèéã
ñóäàëæ
ìýäýõ áîëíî.
1.
Ôóíêöûí
åðºíõèé
ä¿ðñëýë
Ôóíêö
áîë Ñ áîëîí
C++-ûí
ïðîãðàìûí
ãîë á¿ðä¿¿ëýã÷
õýñýã þì.
Ôóíêöûã
á¿ðýí
ä¿ðñëýë íü
äîîðõ
õýëáýðòýé
áàéíà.
Áóöààõ_óòãûí_òºðºë
ôóíêöûí_
íýð(ïàðàìåòð¿¿ä)
{
Ôóíêöûí
áèå
}
Æèøýý
íü:
Áóöààõ
óòãûí Ôóíêöûí
òºðºë íýð
Ýíý ôóíêö
íü
ïàðàìåòðã¿é
void greeting()
{
printf("Hello");
}
Ôóíêöûí
áèå
Ôóíöûí
ä¿ðñëýëä
áóöààõ
óòãûí òºðºë,
ôóíêöûí íýð,
ïàðàìåòð¿¿ä,
ôóíêöûí áèå
ãýñýí 4 ýëåìåíò
îðîëöñîí
áàéíà.
1. Áóöààõ
óòãûí òºðºë:
Ôóíêö
àæèëëàæ
äóóñàõàä
ÿìàð íýã
óòãà
áóöààãäàæ
áîëíî. Ýíý
áóöààãäàæ áóé
óòãûí
òºðëèéã
ôóíêöûí
íýðèéí ºìíº
òóñãàéëàí
çààæ ºãºõ
¸ñòîé.
2. Ôóíêöûí
íýð: Íýð íü
çºâõºí
¿ñãýýð
ýõëýñýí
áàéõ ¸ñòîé
áà ìºí òîî
áîëîí
äîîãóóð çóðààñ
àãóóëæ
áîëíî.
3. Ïàðàìåòð¿¿ä
: Ïàðàìåòð¿¿ä
íü õîñ
õààëòàí äîòîð
áè÷èãäýíý.
Õààëò íü
ïàðàìåòð¿¿ä
àãóóëààã¿é
áàéñàí ÷
çààâàë
áè÷èãäýõ
¸ñòîé.
Ïàðàìåòðèéã
áè÷èõäýý
õóâüñàã÷èéí
íýð áîëîí
òºðëèéã
òîäîðõîéëæ
ºãíº. Ýíý íü
äóóäàæ áóé
ôóíêöýýñ
óòãà õ¿ëýýí
àâ÷
ò¿¿íèéãýý
ôóíêö ð¿¿
äàìæóóëíà.
4. Ôóíêöûí
áèå: Ôóíêöûí
ýõ áèåèéã
ìºí õààëòàí
äîòîð áè÷èæ
ºãíº.
2.
Ôóíêöûí
ïàðàìåòð¿¿ä
Ôóíêöûí
ïàðàìåòð¿¿ä
íü äóóäàæ
áóé ôóíêöýýñ
óòãà õ¿ëýýí
àâ÷ ôóíêö
ð¿¿ãýý
äàìæóóëäàã.
Ýõëýýä actual ïàðàìàåòð
áà formal ïàðàìåòð
ãýñýí
îéëãîëòûã
àâ÷ ¿çüå.
¯íäñýí ïðîãðàìä
áàéãàà
ïàðàìåòðèéã
actual, ôóíêöýä
õýðýãëýãäýõ
ïàðàìåòðèéã
formal ïàðàìåòð
ãýäýã.
actual
ïàðàìåòð¿¿ä
Ôóíêöûã
äóóäúÿ: number(var1, var2);
Ôóíêöûí
çàðëàëò: void
number(int x, float y)
formal
ïàðàìåòð¿¿ä
Ñ-ä
íýã
ôóíêöýýñ
íºãºº ð¿¿
àðãóìåíòèéã
óòãààð áîëîí
õàÿãààð
äàìæóóëäàã.
Ñ++- íü
ýíý õî¸ð
áîëîìæèéã
àãóóëñàí áà
íýã íýìýëò
øèíý
áîëîìæîîð
õàíãàãäñàí
áàéäàã. Ýíý
íü çààëò
áóþó
õóâüñàã÷èéí
òºëººëñºí
íýðýýð óòãà
äàìæóóëíà.
Ôóíêö
ð¿¿ óòãààð
àðãóìåíò
äàìæóóëàõ
¿åä óòãûã
õ¿ëýýí
àâñàí ôóíêö
ò¿¿íèéã
ººð÷èëñºí ÷
ôóíêöûí ýõ
óòãà
ººð÷ëºãäºõã¿é.
Õàðèí õàÿã
àâàõ &
îïåðàòîðûã
àøèãëàí
õóâüñàã÷èéí
õàÿãèéã
äàìæóóëàõ,
ìºí çààã÷ûí
îíöãîé òºðºë
áîëîõ
çààëòûã
àøèãëàñíààð
ôóíêöûí ýõ
óòãàä
ººð÷ëºëò
õèéæ ÷àäíà.
Áèä
äàðààãèéí
ñýäâ¿¿äýýð
ÿàãààä èéì
áàéíà âý
ãýäãèéã íýã
á¿ð÷ëýí äýëãýð¿¿ëýí
àâ÷ ¿çýõ
áîëíî.
3.
Ôóíêöýä
ïàðàìåòðèéã
õóâüñàã÷ààð
äàìæóóëàõ
Ñêàëÿð
òºðºëòýé
õóâüñàã÷äèéã ôóíêöýä
äàìæóóëàõàä,
ôóíêöýä
ò¿¿íèé
õóóëáàð
õóâüñàã÷èä
äàìæèãääàã.
Ôóíêö òýð
õóóëáàð äýýð
íü ¿éëäëèéã
õèéíý.
Æèøýýí äýýð
õàðóóëüÿ:
void
check( float f, int i=10, char p[]="char”) // formal
ïàðàìåòð
{
cout<<f;
cout<<i;
cout<<p;}
ôóíêö
1:
void check ( float f,
int i=10, char p [ ] = "char”)
óòãà àíõíû àíõíû
áóöààõã¿é
óòãàã¿é
óòãàòàé
à)
check ôóíêöèéã
(1.5, 7) ãýæ
äóóäàõàä f = 1.5,
i =7 áîëîõ áà ð íü
øóóä àíõíû
óòãàà àâíà.
á) check ôóíêöèéã (4.5, 20, "ÐÎД)
ãýæ
äóóäàõàä f = 4.5,
i =20 ð="POP” áîëíî.
â) check ôóíêöèéã (1) ãýæ
äóóäàõàä f = 1 áîëîõ
áà íºãºº 2
ïàðàìåòð íü
àíõíû
óòãàà øóóä
àâíà. Õàðèí
ÿìàð ÷
àðãóìåíò
äàìæóóëàõã¿éãýýð
ôóíêöèéã äóóäâàë
àëäàà ºãíº.
ã) float f =9.5; int i = 5; check ( f, i )
ãýæ
ôóíêöèéí formal
ïàðàìåòðèéí
íýðòýé èæèë äóóäàæ
áîëîõ
áîëîâ÷
ïàðàìåòðûí
çºâõºí
õóóëáàð íü
äàìæèãäàõ
ó÷èð actual
ïàðàìåòð
ººð÷ëºãäºõã¿é.
̺í actual áîëîí formal
ïàðàìåòð¿¿ä
èæèë íýðòýé
áàéæ áîëíî.
ä)
Ôóíêö
äóóäàõäàà
õóâüñàã÷èéí
òºðëèéã
õóâèðãàí
äóóäàæ
áîëíî.
check( (char) f, (char) I, "”)
ãýæ äóóäâàë f = 9, i =5
ð=" ”
áîëíî.
Äîîðõ
æèøýýã
ñîíèðõîæ
¿çüå.
VaraP1.cpp
#include<iostream.h>
void number(int too);
void main()
{
int i=10;
cout<<"Value of
i is"<<i<<endl;
number(i);
cout<<"Value of
i is"<<i<<endl;
}
void number(int too)
{ cout<<"Value of too is"<<too<<endl;
too*=3;
cout<<"Value of too is"<<too<<endl;
}
Ïðîãðàìûí
¿ð ä¿í:
Value of i is 10 //
(1)
Value of too is 10 //
(2)
Value of too is 30 //(3)
Value of i is 10 //(4)
(1)-ð
ìºðºíä i ûí ýõ
ôóíêö äýõ óòãûã
10 ãýæ
õýâëýñýí
áàéíà. number
ôóíêöýä i ûí óòãûã
äàìæóóëæ
óòãûã íü
ººð÷èëñºí áîëîâ÷ ( (3)-ð ìºð ) main()
ôóíêöýýñ
äàõèí õýâëýõýä
ýõ óòãàä
ÿìàð íýãýí
ººð÷ëºëò
îðîîã¿é áàéíà.
Ó÷èð
íü ôóíêö ð¿¿
àðãóìåíòûã
óòãààð äàìæóóëàõàä
óã ôóíêöýä
çºâõºí
óòãûí õóóëáàðûã
äàìæóóëäàã.
ªºðººð õýëáýë
ôóíêö íü ºãºãäëèéí
õóóëáàðûã
ñàíàõ îéí
ººð õýñýãò
áàéðëóóëæ
òýð
õóâèëáàð
äýýðýý
àæèëëàíà.
Ôóíêö äîòîð
óã
àðãóìåíòûí
õóóëáà𠺺ð÷ëºãäºíº
¿¿ ãýõýýñ àctual
ïàðàìåòðò
ÿìàð íýã ººð÷ëºëò¿¿ä
íºëººëºõã¿é.
VaraP2.cpp
#include<iostream.h>
void
fun (int val);
void
main()
{
int val=10;
cout<<”ôóíêö
äóóäàõààñ
ºìíºõ val-èéí
óòãà:”<<val<<endl;
fun(val);
//val-èéí óòãûã
äàìæóóëàõ
cout<<”ôóíêöýýñ
áóöàæ èðñíèé
äàðààõ val-èéí
óòãà:”<<val<<endl;
}
void
fun(int val)
//val-èéí óòãûã
õ¿ëýýæ àâàõ
{ val+=7;
//óòãàí äýýð
7-ã íýìýõ
cout<<”ôóíêö äîòîðõ
val-èéí
óòãà:”<<val<<endl;
}
Ïðîãðàìûí
¿ð ä¿í:
ôóíêö
äóóäàõààñ
ºìíºõ val-èéí
óòãà: 10
ôóíêö
äîòîðõ val-èéí
óòãà:17
ôóíêöýýñ
áóöàæ
èðñíèé
äàðààõ val-èéí
óòãà:10
val 10
val(õóóëáàð) 10+7
4.
Ôóíêöýä
ïàðàìåòðèéã
çààã÷ààð
áóþó õàÿãààð
äàìæóóëàõ
Áóñàä
õóâüñàã÷äûí
àäèë çààã÷
íü ôóíêöûí
àðãóìåíò
áîëæ ÷àäíà.
Çààã÷ûã
ôóíêöûí àðãóìåíò
áîëæ
àøèãëàõ íü
îíöãîé à÷
õîëáîãäîëòîé.
Ó÷èð íü õàÿã
àâàõ &
îïåðàòîðûã àøèãëàí
óòãà äàìæóóëàõàä
ôóíêöûí êîä
äîòîð
àðãóìåíòûí
óòãûã
ººð÷èëñºí
ººð÷ëºëò íü main()
ôóíêö äýõ ýõ
óòãàíä
ººð÷ëºëò
îðóóëíà.
ßàãààä
ãýâýë
ýíý
¿åä
õî¸ð
ôóíêö
íü íýã
õóâüñàã÷òàé
àæèëëàæ
áàéãàà þì.
Ôóíêöýä
ïàðàìåòðèéã
õàÿãààð
äàìæóóëàõàä
formal ïàðàìåòð íü
actual
ïàðàìåòðèéí
õàÿãèéã àâíà.
Ñêàëÿð
õóâüñàã÷èéí
õàÿãèéã
äàìæóóëàõäàà
( int, long, float ã.ì
ìàññèâ áèø
ºãºãäëèéí
òºðë¿¿äèéã
ñêàëÿð
õóâüñàã÷èä
ãýäýã. ) &
îïåðàòîðûã
àøèãëàõ íü
ç¿éòýé.
Õàðèí
ìàññèâûí
íýð íü óã
ìàññèâûí
ñàíàõ îéä
áàéðëàõ
ýõëýëèéí
õàÿã áàéäàã
ó÷èð ìàññèâûí
õàÿã
äàìæóóëàõ
¿åä &
îïåðàòîðûã
àøèãëàõ
õýðýãã¿é.
Õ¿ëýýí
àâñàí ôóíêö
íü ìàññèâò
ººð÷ëºëò
õèéõýä ýõ
ôóíêö äýõ
óòãà íü ìºí
ººð÷ëºãäºíº.
|