Ìýäýýëëèéí ñèñòåì, àëãîðèòìèéí ¿íäýñ   Ëåêö ¹06
Àãóóëãà Àëãîðèòìûí õýë   Àëãîðèòì õýëíèé áè÷ãëýõ õýëáýð
Àëãîðèòìûí õýë  Àëãîðèòì çîõèîæ áè÷èõýä çîðèóëñàí õýëèéã àëãîðèòì õýë ãýõ áºãººä àëãîðèòì çîõèîæ áè÷èõýä èë¿¿ òîõèðîìæòîé áàéäàã.
Алгоритмын хэлийг ашиглах нь блок схемийг ашиглахаас илүү хялбар, тохиромжтой   юм. Програмчлалын ямар нэг хэлийг алгоритмын хэлээр сонгож болохгүй.  Ó÷ ир нь:
1.Àëãîðèòì çîõèîæ ñóðãàõ ãýæ áàéãàà ñóðãàëòûí ¿åä àëãîðèòìûí ¿éëäë¿¿ä, òýäãýýðèéã àøèãëàõ, àëãîðèòì çîõèîõîä õýðýãëýãääýã àðãà òåõíèê, çàðèì ñòàíäàðò àëãîðèòìûã ñóäëàõàä ãîë àíõààðëûã ÷èãë¿¿ëýõ ¸ñòîé. Èéìä àëãîðèòìûí õýë íü õýðýãëýõýä õÿëáàð, ýíãèéí áàéõ øààðäëàãàòàé.
2.Åð íü çîõèîñîí àëãîðèòìûã ïðîãðàì÷ëàëûí ÿìàð íýã õýë ð¿¿ õºðâ¿¿ëæ áè÷èõ áîëîìæòîé òèéì åðºíõèé õýëáýðòýé áàéõààð àëãîðèòìûã ä¿ðñýëäýã áàéõ õýðýãòýé.
Îäîî ò¿ãýýìýë õýðýãëýãääýã ïðîãðàì÷ëàëûí õýë¿¿äèéí ò¿ëõ¿¿ð ¿ã (ïðîãðàì áè÷èõýä õýðýãëýãääýã òîãòñîí ¿ã õýëëýãèéã ïðîãðàì÷ëàëûí õýëíèé ò¿ëõ¿¿ð ¿ã ãýíý).
1 . Ìýäýýëýë îðóóëàõ ¿éëäýë Îðóóë(õóâüñàã÷_1,õóâüñàã÷_2,….,õóâüñàã÷_n); ãýæ áè÷íý. Ýíä îðóóë ãýäýã íü êîìüïþòåðèéí ãàðààñ ìýäýýëýë îðóóë¿àõ ¿éïäëèéã áèåë¿¿ëäýã ôóíêöèéí íýð, õàðèí õóâüñàã÷ ãýäýã íü  õóâüñàã÷èéí íýð áàéíà. Æ:îðóóë(n);îðóóë(r); ã.ì .
1.Óòãà îëãîõ ¿éëäýë õóâüñàã÷:=èëýðõèéëýë õýëáýðòýé áè÷íý.Èéìä èëýðõèéëýë áèäíèé ºìíº ¿çñýí ä¿ðìýýð áè÷ýí èëýðõèéëýë áàéõ áºãººä ò¿¿íèé óòãûã áîäîæ, ãàðñàí óòãûã çààñàí õóâüñàã÷èéí óòãà áîëãîí ñàíàõ îéä õàäãàëíà. Æ: x:=0;x:=y; t:=-t; ã.ì.
3.Ìýäýýëýë ãàðãàõ ¿éëäýë ãàðãà(õóâüñàã÷_1,õóâüñàã÷_2,õóâüñàã÷_n);õýëáýðòýé áè÷íý.Ýíä ãàðãà ãýäýã íü äèñïëåéí äýëãýö äýýð ìýäýýëýë ãàðãàõ ¿éëäëèéã áèåë¿¿ëäýã ôóíêöèéí íýð, õàðèí õóâüñàã÷óóä õóâüñàã÷èéí íýð áàéíà.Æ:ãàðãà(L,S,V) ãàðãà(“òýãøèòãýë øèéäã¿é”)
4. Àëãîðèòìûí ýõëýë, òºãñãºëèéã òýìäýãëýæ çààõûí òóëä àëã(àëãîðèòì ãýñýí ¿ãèéã òîâ÷èëñîí ¿ã) áà òºãñ ãýñýí õî¸ð ò¿ëõ¿¿ð ¿ãèéã õýðýãëýíý.Òýãýõäýý àëãîðèòìóóäûã ººð õîîðîíä íü ÿëãàõûí òóëä àëãîðèòì á¿ðä íýð ºãíº.
Æ:àëã êâàäðàò_òýãøèòãýë ã.ì. 5 .¯ й ëäýë   á¿ðèéí   òºãñãºëä öýã òàñëàë (;) áè÷íý.Ýíý ºã¿¿ëáýðèéí òºãñãºëä öýã òàâüäàãòàé èæèë áîëîâ÷ ¿íýíäýý ¿éëäë¿¿äèéã ººð õîîðîíä òóñãààðëàõ ¿¿ðýãòýé þì. Æ: õ:=0;x:=y; I:=I+1; t:=-t ãýõ ìýò.
6 .Çàðèìäàà õýä õýäýí ¿éëäëèéã á¿ëýãëýí íýã ¿éëäýë ìýò ¿çýæ íýã ¿éëäýëä áè÷èõ ¸ñòîé áàéðàíä óã á¿ëãèéã áè÷èõ øààðäëàãà ãàðäàã.Èíãýæ á¿ëýãëýæ áàéãàà ¿éëäë¿¿äèéã { } õààëòàí äîòîð áè÷èæ (ìàòåìàòèêò á¿ëýãëýñýí ãèø¿¿äèéã õààëòàí äîòîð áè÷äýãòýé òºñòýé)  íèéëìýë ¿éëäýë  ãýæ íýðëýíý.  Æ: {L:=pi·r; S:=l·r} ã.ì.
7. Алгоритмын үйлдлүүдийн биелэх дарааллыг тэмдэглэх шаардлагагүй ба үйлдлүүд нь бичигдсэн дарааллаараа биелэгдэнэ. Харин үйлдлүүдийн биелэх дарааллыг өөрчлөх тусгай үйлдэл байдаг гэж тооцно.Тэгэхдээ алгоритмын тодорхой нэг алхамд шилжиж улмаар тэр үйлдлээс бодолтыг үргэлжлүүлэх боломжийг хангадаг нөхцөлт биш удирдлага дамжуулах буюу шилжих үйлдлийг хэрэглэхийн тулд шилжиж очих тэр үйлдлийг тэмдэглээд “ийм тэмдэгтэй үйлдэлд шилж” гэсэн утгатай:
тэмдэг рүү _ шилж Гэсэн команд үйлдлийг бичнэ. Алгоритмын үйлдлийг тэмдэглэх тэмдэгийг уг үйлдлийнхээ өмнө “ : ” тэмдэгээр тусгаарлаж дурын тооны үсэг, цифрээр бичнэ.Иймд шилжих үйлдлийг хэрэглэх тохиолдолд доорх хэлбэртэй хоёр үйлдэл заавал байна .
Тэмдэг : үйлдэл ; : : Тэмдэг рүү _ шилж  ; Æ:   a : оруул (n) ; : a  руу _ шилж  ;
8. Нөхцөл шалгах үйлдлийн тусламжтай үүсгэх нийлмэл үйлдлүүд: À. Салаалах үйлдэл: Нөхцөл Үйлдэл _2 Үйлдэл _1
Энэ үйлдлийг алгоритмын хэлэнд бичвэл: Хэрэв  íºõöºë бол үйлдэл _1 Эсвэл үйлдэл _2 õýëáýðòýé áè÷íý. Æ:õ эрэв  x>0 á ол  y:=x ý свэл  y:=-x õ эрэв  x>y á ол  z:=x-y ý свэл  z:=y-x+1
Á. Салаалах үйлдлийн хялбар  тохиолдол буюу нөхцөл биелэхгүй тохиолдолд үйлдэл хийгдэхгүй шууд дараачийн үйлдэлд шилжих үйлдлийг: Нөхцөл Үйлдэл _1
áóþó øàëãàõ íºõöºë áèåëýõã¿é òîõèîëäîëä ¿éëäýë õèéãäýõã¿é øóóä äàðàà÷èéí ¿éëäýëä øèëøèõ ¿éëäëèéã    õýðýâ  íºõöºë   áîë  ¿éëäýë_1 ãýæ áè÷íý. Ìºí ¿éëäýë íèéëìýë áàéõ ¿åä   õýðýâ   íºõöºë    áîë  {¿éëäýë_1-1   ¿éëäýë_1-2
... ¿éëäýë_1-n }; õýëáýðòýé áîëíî. Æ y:=x   õýðýâ x<0   áîë y:=-x;

Lecture6

  • 1.
  • 2.
    Àãóóëãà Àëãîðèòìûí õýë Àëãîðèòì õýëíèé áè÷ãëýõ õýëáýð
  • 3.
    Àëãîðèòìûí õýë Àëãîðèòì çîõèîæ áè÷èõýä çîðèóëñàí õýëèéã àëãîðèòì õýë ãýõ áºãººä àëãîðèòì çîõèîæ áè÷èõýä èë¿¿ òîõèðîìæòîé áàéäàã.
  • 4.
    Алгоритмын хэлийг ашиглахнь блок схемийг ашиглахаас илүү хялбар, тохиромжтой юм. Програмчлалын ямар нэг хэлийг алгоритмын хэлээр сонгож болохгүй. Ó÷ ир нь:
  • 5.
    1.Àëãîðèòì çîõèîæ ñóðãàõãýæ áàéãàà ñóðãàëòûí ¿åä àëãîðèòìûí ¿éëäë¿¿ä, òýäãýýðèéã àøèãëàõ, àëãîðèòì çîõèîõîä õýðýãëýãääýã àðãà òåõíèê, çàðèì ñòàíäàðò àëãîðèòìûã ñóäëàõàä ãîë àíõààðëûã ÷èãë¿¿ëýõ ¸ñòîé. Èéìä àëãîðèòìûí õýë íü õýðýãëýõýä õÿëáàð, ýíãèéí áàéõ øààðäëàãàòàé.
  • 6.
    2.Åð íü çîõèîñîíàëãîðèòìûã ïðîãðàì÷ëàëûí ÿìàð íýã õýë ð¿¿ õºðâ¿¿ëæ áè÷èõ áîëîìæòîé òèéì åðºíõèé õýëáýðòýé áàéõààð àëãîðèòìûã ä¿ðñýëäýã áàéõ õýðýãòýé.
  • 7.
    Îäîî ò¿ãýýìýë õýðýãëýãääýãïðîãðàì÷ëàëûí õýë¿¿äèéí ò¿ëõ¿¿ð ¿ã (ïðîãðàì áè÷èõýä õýðýãëýãääýã òîãòñîí ¿ã õýëëýãèéã ïðîãðàì÷ëàëûí õýëíèé ò¿ëõ¿¿ð ¿ã ãýíý).
  • 8.
    1 . Ìýäýýëýëîðóóëàõ ¿éëäýë Îðóóë(õóâüñàã÷_1,õóâüñàã÷_2,….,õóâüñàã÷_n); ãýæ áè÷íý. Ýíä îðóóë ãýäýã íü êîìüïþòåðèéí ãàðààñ ìýäýýëýë îðóóë¿àõ ¿éïäëèéã áèåë¿¿ëäýã ôóíêöèéí íýð, õàðèí õóâüñàã÷ ãýäýã íü õóâüñàã÷èéí íýð áàéíà. Æ:îðóóë(n);îðóóë(r); ã.ì .
  • 9.
    1.Óòãà îëãîõ ¿éëäýëõóâüñàã÷:=èëýðõèéëýë õýëáýðòýé áè÷íý.Èéìä èëýðõèéëýë áèäíèé ºìíº ¿çñýí ä¿ðìýýð áè÷ýí èëýðõèéëýë áàéõ áºãººä ò¿¿íèé óòãûã áîäîæ, ãàðñàí óòãûã çààñàí õóâüñàã÷èéí óòãà áîëãîí ñàíàõ îéä õàäãàëíà. Æ: x:=0;x:=y; t:=-t; ã.ì.
  • 10.
    3.Ìýäýýëýë ãàðãàõ ¿éëäýëãàðãà(õóâüñàã÷_1,õóâüñàã÷_2,õóâüñàã÷_n);õýëáýðòýé áè÷íý.Ýíä ãàðãà ãýäýã íü äèñïëåéí äýëãýö äýýð ìýäýýëýë ãàðãàõ ¿éëäëèéã áèåë¿¿ëäýã ôóíêöèéí íýð, õàðèí õóâüñàã÷óóä õóâüñàã÷èéí íýð áàéíà.Æ:ãàðãà(L,S,V) ãàðãà(“òýãøèòãýë øèéäã¿é”)
  • 11.
    4. Àëãîðèòìûí ýõëýë,òºãñãºëèéã òýìäýãëýæ çààõûí òóëä àëã(àëãîðèòì ãýñýí ¿ãèéã òîâ÷èëñîí ¿ã) áà òºãñ ãýñýí õî¸ð ò¿ëõ¿¿ð ¿ãèéã õýðýãëýíý.Òýãýõäýý àëãîðèòìóóäûã ººð õîîðîíä íü ÿëãàõûí òóëä àëãîðèòì á¿ðä íýð ºãíº.
  • 12.
    Æ:àëã êâàäðàò_òýãøèòãýë ã.ì.5 .¯ й ëäýë á¿ðèéí òºãñãºëä öýã òàñëàë (;) áè÷íý.Ýíý ºã¿¿ëáýðèéí òºãñãºëä öýã òàâüäàãòàé èæèë áîëîâ÷ ¿íýíäýý ¿éëäë¿¿äèéã ººð õîîðîíä òóñãààðëàõ ¿¿ðýãòýé þì. Æ: õ:=0;x:=y; I:=I+1; t:=-t ãýõ ìýò.
  • 13.
    6 .Çàðèìäàà õýäõýäýí ¿éëäëèéã á¿ëýãëýí íýã ¿éëäýë ìýò ¿çýæ íýã ¿éëäýëä áè÷èõ ¸ñòîé áàéðàíä óã á¿ëãèéã áè÷èõ øààðäëàãà ãàðäàã.Èíãýæ á¿ëýãëýæ áàéãàà ¿éëäë¿¿äèéã { } õààëòàí äîòîð áè÷èæ (ìàòåìàòèêò á¿ëýãëýñýí ãèø¿¿äèéã õààëòàí äîòîð áè÷äýãòýé òºñòýé) íèéëìýë ¿éëäýë ãýæ íýðëýíý. Æ: {L:=pi·r; S:=l·r} ã.ì.
  • 14.
    7. Алгоритмын үйлдлүүдийнбиелэх дарааллыг тэмдэглэх шаардлагагүй ба үйлдлүүд нь бичигдсэн дарааллаараа биелэгдэнэ. Харин үйлдлүүдийн биелэх дарааллыг өөрчлөх тусгай үйлдэл байдаг гэж тооцно.Тэгэхдээ алгоритмын тодорхой нэг алхамд шилжиж улмаар тэр үйлдлээс бодолтыг үргэлжлүүлэх боломжийг хангадаг нөхцөлт биш удирдлага дамжуулах буюу шилжих үйлдлийг хэрэглэхийн тулд шилжиж очих тэр үйлдлийг тэмдэглээд “ийм тэмдэгтэй үйлдэлд шилж” гэсэн утгатай:
  • 15.
    тэмдэг рүү _шилж Гэсэн команд үйлдлийг бичнэ. Алгоритмын үйлдлийг тэмдэглэх тэмдэгийг уг үйлдлийнхээ өмнө “ : ” тэмдэгээр тусгаарлаж дурын тооны үсэг, цифрээр бичнэ.Иймд шилжих үйлдлийг хэрэглэх тохиолдолд доорх хэлбэртэй хоёр үйлдэл заавал байна .
  • 16.
    Тэмдэг : үйлдэл; : : Тэмдэг рүү _ шилж ; Æ: a : оруул (n) ; : a руу _ шилж ;
  • 17.
    8. Нөхцөл шалгахүйлдлийн тусламжтай үүсгэх нийлмэл үйлдлүүд: À. Салаалах үйлдэл: Нөхцөл Үйлдэл _2 Үйлдэл _1
  • 18.
    Энэ үйлдлийг алгоритмынхэлэнд бичвэл: Хэрэв íºõöºë бол үйлдэл _1 Эсвэл үйлдэл _2 õýëáýðòýé áè÷íý. Æ:õ эрэв x>0 á ол y:=x ý свэл y:=-x õ эрэв x>y á ол z:=x-y ý свэл z:=y-x+1
  • 19.
    Á. Салаалах үйлдлийнхялбар тохиолдол буюу нөхцөл биелэхгүй тохиолдолд үйлдэл хийгдэхгүй шууд дараачийн үйлдэлд шилжих үйлдлийг: Нөхцөл Үйлдэл _1
  • 20.
    áóþó øàëãàõ íºõöºëáèåëýõã¿é òîõèîëäîëä ¿éëäýë õèéãäýõã¿é øóóä äàðàà÷èéí ¿éëäýëä øèëøèõ ¿éëäëèéã õýðýâ íºõöºë áîë ¿éëäýë_1 ãýæ áè÷íý. Ìºí ¿éëäýë íèéëìýë áàéõ ¿åä õýðýâ íºõöºë áîë {¿éëäýë_1-1 ¿éëäýë_1-2
  • 21.
    ... ¿éëäýë_1-n };õýëáýðòýé áîëíî. Æ y:=x õýðýâ x<0 áîë y:=-x;