Recommended
PPS
Sw203 Lecture10 Polymorphism
PPS
Sw203 Lecture6 Inheritance
PDF
PDF
PPTX
U.cs101 алгоритм программчлал-12
PPT
PDF
PPTX
Cs203 lecture13 composition
PPT
PPTX
U.cs101 алгоритм программчлал-2
PPTX
U.cs101 алгоритм программчлал-3
PPTX
PPT
PPTX
PPTX
PPTX
C++ vndsen oilgolt хичээл 1
PDF
DOCX
зурган мэдээлэл боловсруулах 6-р анги нэгж хичээл
PPS
Sw203 Lecture5 Class Acess Modifiers
PPTX
PDF
u.cs101 "Алгоритм ба програмчлал" Лекц №7
PDF
PPS
PDF
PDF
u.cs101 "Алгоритм ба програмчлал" Лекц №1
PDF
Ogogdliin sangiin zohion baiguulalt lekts
PPS
Шугаман алгоритмын бодлогууд
PPTX
PDF
PPTX
More Related Content
PPS
Sw203 Lecture10 Polymorphism
PPS
Sw203 Lecture6 Inheritance
PDF
PDF
PPTX
U.cs101 алгоритм программчлал-12
PPT
PDF
PPTX
Cs203 lecture13 composition
What's hot
PPT
PPTX
U.cs101 алгоритм программчлал-2
PPTX
U.cs101 алгоритм программчлал-3
PPTX
PPT
PPTX
PPTX
PPTX
C++ vndsen oilgolt хичээл 1
PDF
DOCX
зурган мэдээлэл боловсруулах 6-р анги нэгж хичээл
PPS
Sw203 Lecture5 Class Acess Modifiers
PPTX
PDF
u.cs101 "Алгоритм ба програмчлал" Лекц №7
PDF
PPS
PDF
PDF
u.cs101 "Алгоритм ба програмчлал" Лекц №1
PDF
Ogogdliin sangiin zohion baiguulalt lekts
PPS
Шугаман алгоритмын бодлогууд
PPTX
Similar to Lec4 хereglegchiinpunkts
PDF
PPTX
PDF
u.cs101 "Алгоритм ба програмчлал" Лекц №4
PPTX
PDF
PDF
PPTX
DOC
PPTX
Ci prog tolgoi file хичээл 2
PDF
u.cs101 "Алгоритм ба програмчлал" Лекц №6
PPTX
PPT
001cclass 120926194905-phpapp02
PPTX
C++ vndsen oilgolt хичээл 1
PDF
PPTX
PDF
DOCX
PPT
PPTX
PPT
More from Turuu Tsogt
PPTX
PPTX
PPTX
PPTX
PPTX
PPTX
PPTX
PPTX
PPTX
PPTX
PPTX
Lec4 хereglegchiinpunkts 1. 2. Агуулга
• Функц
• Хэрэглэчгийн функц
• Локаль хувьсагч.
• Глобал хувьсагч
• Формал ба бодит параметрууд .
• Рекрусив функц
Сэдэв: С++ хэрэглэгчийн функц Ц.Төртогтох / Магистрант /
3. Функц
• Си хэлэнд зөвхөн функц төрлийн дэд програм байдаг. Си хэлний
функцыг гарал үүслийн хувьд:
• дотоод (intrinsic) буюу бэлэн (predefined) функц
• гадаад (external) буюу хэрэглэгчийн зохиосон (user-defined) функц гэж ангилна.
• Predefined функцын жишээ бол стандарт функц юм: printf(), scanf(),
getchar() г.м. Ийм функц нь өрхвүүлэгч тэй хамт ирдэг. Хэрэглэгч ийм
функцыг, ямар кодтой, ямар бүтэцтэй гэдгийг нь нэг их
анзааралгүйгээр зөвхөн юу хийдэг вэ гэдгийг нь мэдэж байгаад л шууд
нэрээр нь дуудаж ашигладаг. Тэгвэл хэрэглэгчийн функцыг бол бид
өөрсдөө зохионо.
Сэдэв: С++ хэрэглэгчийн функц Ц.Төртогтох / Магистрант /
4. Функц
Өөрөөр хэлбэл кодыг нь бичнэ, бас дуудаж ашиглана.
Програмыг функцуудэд хуваах нь олон ач холбогдолтой.
Ингэснээр ж.нь програмыг оператор, өгөгдлүүдийн харилцан
үйлчлэл мэтээр авч үзэх төвшнөөс нэг шат ахиж функцуудын
харилцан үйлчлэл мэтээр авч үзэж болно. Үүний дүнд
програмын бүтэц энгийн, ойлгомжтой болж ирдэг. Түүнээс гадна
програмын бүрдэл хэсгүүдийн давхарлал арилж, хэмжээ нь
цомхон болно. Учир нь нэг функцыг ганц удаа зохиогоод л
дараа түүнийгээ програмын аль хэрэгтэй газарт зөвхөн нэрээр
нь дуудаж ашиглана. Яг стандарт функцын адилаар.
Сэдэв: С++ хэрэглэгчийн функц Ц.Төртогтох / Магистрант /
5. 6. Програмын бие даасан шинжтэй , тодорхой үр дүн өгөх юмуу
эсвэл тодорхой үйлдэл гүйцэтгэдэгэ хэсгийг тусад нь бичиж , олон
дахин ашиглах боломжийг хангаад хэрэглэгчийн функц гэж
нэрлэнэ.
Хэрэглэгчийн функцыг бичих хэлбэр:
<буцах_утгын_төрөл><функцийн_нэр>(<параметрүүд>){
[<зарлах_хэсэг>]
<үйлдлүүд>;
return[<буцах утга>];
}
Сэдэв: С++ хэрэглэгчийн функц Ц.Төртогтох / Магистрант /
7. Хэрэглэгчийн функц
<Буцах утгын төрөл>: гэдэг нь функц ажилласны дараа
функцийг дуудсан газарт функцийн утга болгон буцаах
утгын төрөл байна. Функцийн буцах утгын төрөлд
өгөгдлийн үндсэн төрлүүд байхаас гадна заагч , бүтэц ,
тэмдэгт мөр төрөл байж болно. Мөн утга буцаадаггүй
функц байж болох ба энэ үед буцах утгын төрөл void байна.
<Функцийн нэр>: Латин үсэг цифр оролцосон үг байж
болно
8. <Параметрүүд>: гэдэгт функцэд дамжих хувьсагчийг эсвэл
утгыг төлөөлөх хувьсагчууд төрлийн хамтаар зарлагдсан байх
ба түүнийг хийсвэр параметр гэж нэрлэнэ.
<Зарлах хэсэг>: зөвхөн тухайн функц дотор ашиглах төрөл ,
хувьсагч , тогтмолыг зарлах ба энэ хэсэгт зарласан хувьсагчийг
локаль хувьсагч гэнэ.
Сэдэв: С++ хэрэглэгчийн функц Ц.Төртогтох / Магистрант /
9. <Үйлдлүүд>: функц нь биеэ даасан үйлдлүүдийн багц учраас
түүн дотор биелэгдэх үйлдлүүд байна.
<Буцах утга>: функцийн буцах утгын төрөлд тохирох хувьсагч
эсвэл тогтмол утга байна. Си хэлэнд буцах утгыг return нөөц
үгийн тусламжтайгаар буцаана. Буцах утга байхгүй бол return;
байх буюу эсвэл энэ оператор байхгүй байх ба түүний төрөл нь
void байна.
10. С++ хэлэнд хувьсагчийн тодорхойлохдоо програмын
эхэнд (толгой файлуудыг хавсаргасны дараа) эсвэл
функцийн эхэнд тодорхойлж өгдөг. Програмын эхэнд
тодорхойлсон хувьсагчуудыг нь main() функц ажиллаж
эхлэх үед үүсэх ба програмын аль ч хэсэгт дуудан
ашиглаж болохоос гадна хамгийн сүүлд олгосон утга
хадгалагдаж байдаг. Ийм хувьсагчийг глобал хувьсагч
гэнэ.
Сэдэв: С++ хэрэглэгчийн функц Ц.Төртогтох / Магистрант /
11. Харин функц дотор тодорхойлсон хувьсагчийг дотоод
буюу локал хувьсагч гэдэг. Ийм хувьсагч нь тухайн
функцийн дотор ажиллах үед санах ойд үүсэх
бөгөөд зөвхөн тухайн функц дотор ажиглагдаж ,
функц үйл ажиллагаагаа дуусах үед санах ойгоос
устдаг.
12. Формал ба бодит параметрууд Хэрэглэгчийн функцыг
зарлахдаа өмнө нь тодорхойлохдоо нэрийнх нь ард хаалтанд
дотор бичиж буй аргументуудыг формал (хуурмаг)
параметрууд гэнэ. Харин тухайн функцыг дуудахдаа хуурмаг
параметруудын оронд орлуулж буй аргументуудыг бодит
параметрууд (actual argument) гэнэ.
13. Функц өөрийгөө эргэн дуудаж байх юм бол үүнийг
рекурсив гэж нэрлэдэг. Рекурсивийг хэрэглэх нь зарим
бодлогыг бодох ажлыг асар их хөнгөвчилдөг. Рекурсив
функцийг зохион байгуулахдаа түүнийг төгсгөх нөхцөлийг
нарийн тодорхойлж өгөх хэрэгтэй.
Сэдэв: С++ хэрэглэгчийн функц Ц.Төртогтох / Магистрант /
14. Жишээ: 2 тооны нийлбэр олдог sum нэртэй
функц зохиож ашиглая.
#include<stdlib.h>
#include<iostream>
using namespace std;
int sum(int a, int b)
{ int r;
r=a+b;
return r;
}
int main (){
int n,m,z;
cout<<"n toog oruul:";
cin>>n;
cout<<"m toog oruul:";
cin>>m;
z = sum(n,m);
cout<<"Niilber:"<<z<<endl;
system("pause");
}
15. Эх сурвалжууд
• Д.Цэдэвсүрэн “C++ програмчлал”
• http://prezi.com/csngdcpogxka/presentation/
• spe.num.edu.mn/altankhuu/lesson/comp201/8C-Function.pdf