SlideShare a Scribd company logo
Àëãîðèòìèéí ¿íäýñ

     Ëåêö ¹06
Àãóóëãà
1. Äàâòàëò
2. ªìíºõ íºõöºëò äàâòàëò
3. Äàðààõ íºõöºëò äàâòàëò
Äàâòàëò
Бүлэг үйлдлийг давтан
биелүүлэх процессыг
компьютерт давталт буюу
“цикл” гэнэ.
Аливаа  бодлогын
алгоритмийг зохиохдоо түүнийг
давталтаар илэрхийлэх
зорилго байнга тавьж байх
хэрэгтэй. Ингэж чадвал бид
өөрсдийн “програм зохиож
бичих” ажлыг олон дахин
хөнгөвчилж чадна.
Энэ бол програмчлалын нэг
үндсэн зарчим гэж ойлгох
хэрэгтэй. Ийм учраас давталтын
ялгаатай хэлбэрүүд бий болжээ.
Нөхцөлт биш удирдлага
дамжуулах үйлдлийг ашиглан
давталт үүсгэж болох боловч энэ
нь төгсөхгүй “мөнх” биелэх
давталт болж “алгоритм заавал
төгсдөг байх” шаардлага
зөрчигдөх тул ийм давталтыг
бичиж болохгүй.
{
Æ:     // буруу_алг
       pi=3.141592
       a: scanf(“%d”,&r)
       L:=pi*r ;
       S:=L*r ;
       V:=4/3*S*r ;
       L:=2*L;
     printf(“%d,%d,%d”,L,S,V);
       goto a;
     }
Энд r хэмжигдхүүний өгөгдсөн
утганд харгалзах L,S,V
хэмжигдхүүнүүдийн утгыг
бодож гаргах бүлэг үйлдлийг
төгсгөлгүй давтах учир энэ нь
зөв алгоритм болж чадахгүй
ªìíºõ íºõöºëò äàâòàëò
Давталтыг төгсдөг болгохын
тулд нөхцөл шалгах үйлдэл
ашиглах ба нөхцөл шалгах
болон нөхцөлт биш
удирдлага дамжуулах
үйлдлээр дараахь хэлбэртэй
нийлмэл үйлдлийг зохиож
болно.
Өмнөх нөхцөлт давталтыг
  алгоритмын хэлэнд:

     while (нөхцөл)
       {үйлдэл_1
        үйлдэл_2
          ……
       үйлдэл_n
           };
Өмнөх нөхцөлт давталтыг бичихдээ
дараах шинжүүдийг анхаарах хэрэгтэй.
Үүнд:
Төгсгөхнөхцлийг шалгаж давталт
эхлэх учир энэ нөхцөл давталт
эхлэхээс өмнө тодорхой утгатай
болсон байх ёстой.
Давталтын  төгсгөх нөхцөлийг
шалгаж давталт эхлэх учир энэ нь
анхнаасаа, хэрэв биелэхгүй байвал
давталтын бие биелэгдэхгүй шууд
давталтын дараах үйлдэлд
шилжинэ.
Давталтын   төгсгөх нөхцөлд нөлөөлөх
ө.х түүний утга өөрчлөгдөхөд
нөлөөлөх ямар нэг үйлдэл давталтын
бие дотор заавал орсон байх ёстой.
Хэрэв тэгэхгүй бол нөхцөл үргэлж
“үнэн” утгатай байж “мөнхийн” давталт
үүсэхэд хүрнэ.
Давталтын  бие биелэх бүрд түүнийг
төгсгөх нөхцөлийн утга өөрчлөгдөх
учраас нөхцөлийн утга “худал” болсон
үед давталт төгсч давталтын дараах
үйлдэлд шилжинэ.Өмнөх нөхцөлт
давталтын хувьд түүний бие төгсгөлөг
тоон удаа биелэгдэхэд “худал” утгатай
болж чадах тийм нөхцөлийг зөв
нөхцөл гэж үзнэ.
Өмнөх нөхцөлт
   давталт
     Нөхцөл



    Үйлдэл_1
      ........
    Үйлдэл_n
Дараах нөхцөлт
       давталт
Энэ давталтын хувьд
түүнийг төгсгөх нөхцөлийг
давталтын бие биелэгдсэний
дараа шалгаж байгаа учраас
ийм хэлбэрийн давталтыг
дараах нөхцөлт давталт гэнэ.
Дараах нөхцөлт давталтыг
   алгоритмын хэлэнд:
          do {
        үйлдэл_1
        үйлдэл_2
            …..
       Үйлдэл_n }
      while (нөхцөл);
Дараах нөхцөлт давталт
      доорх онцлог шинжтэй
          байна. Үүнд:
Давталтын  бие биелсний дараа төгсгөх нөхцөлийг
шалгаад дахин давтах эсэхийг тогтоох учир түүний бие
ядаж нэг удаа заавал биелэгдэнэ.
Нөхцөл нөлөөлөх ө.х нөхцөлийн утгыг өөрчлөх ямар нэг
үйлдэл давталтын бие дотор заавал бичигдсэн байх
ёстой.
Дараах нөхцөлт давталтын хувьд түүний бие төгсгөлөг
тоон удаа биелэгдэхэд “худал” утгатай болж чадах тийм
зөв нөхцөлийг сонгож бичсэн байх ёстой.
Төгсгөхнөхцөл “худал” утгатай болж давталт дуусахад
давталтын үйлдлийн дараа бичигдсэн үйлдэлд шилжинэ.
Дараах нөхцөлт
   давталт

   Давталтын
      бие


    Нөхцөл

More Related Content

PPT
Lecture7
PPT
Lecture7
PPT
Lecture7
PPTX
Davaa123
PPTX
давталттай алгоритм
PPTX
давталттай алгоритм
PPTX
hicheel
PPTX
hicheel2
Lecture7
Lecture7
Lecture7
Davaa123
давталттай алгоритм
давталттай алгоритм
hicheel
hicheel2

What's hot (6)

PPT
Lecture8
PPT
Lecture8
PPT
PPT
Day 2 php
 
PPTX
Lec8 break
PPTX
Nohtsol shal хичээл 5
Lecture8
Lecture8
Day 2 php
 
Lec8 break
Nohtsol shal хичээл 5
Ad

Viewers also liked (8)

PPT
PPT
PPT
PPT
PPT
Lecture1 ic
PPT
PPT
PPT
Ad

Similar to Lecture6 (10)

PPT
Lecture7
PPTX
U.cs101 алгоритм программчлал-5 zasvar badral(1)
ODP
Video lecture-2
PPTX
U.cs101 lecture 6
PPT
Lecture8
PPT
Lecture8
DOCX
Lecture2
PPTX
7salaalsan
PDF
u.cs101 "Алгоритм ба програмчлал" Лекц №3
Lecture7
U.cs101 алгоритм программчлал-5 zasvar badral(1)
Video lecture-2
U.cs101 lecture 6
Lecture8
Lecture8
Lecture2
7salaalsan
u.cs101 "Алгоритм ба програмчлал" Лекц №3

More from Batjargal Batbold (9)

PPTX
Програмчлал I - Laboratory 1
PPTX
Андройд үйлдлийн системийн аппликейшний суурь ухагдахуунууд
PPTX
PPT
PPT
PPT
PPT
PPT
PPT
Програмчлал I - Laboratory 1
Андройд үйлдлийн системийн аппликейшний суурь ухагдахуунууд

Lecture6

  • 2. Àãóóëãà 1. Äàâòàëò 2. ªìíºõ íºõöºëò äàâòàëò 3. Äàðààõ íºõöºëò äàâòàëò
  • 3. Äàâòàëò Бүлэг үйлдлийг давтан биелүүлэх процессыг компьютерт давталт буюу “цикл” гэнэ.
  • 4. Аливаа бодлогын алгоритмийг зохиохдоо түүнийг давталтаар илэрхийлэх зорилго байнга тавьж байх хэрэгтэй. Ингэж чадвал бид өөрсдийн “програм зохиож бичих” ажлыг олон дахин хөнгөвчилж чадна.
  • 5. Энэ бол програмчлалын нэг үндсэн зарчим гэж ойлгох хэрэгтэй. Ийм учраас давталтын ялгаатай хэлбэрүүд бий болжээ. Нөхцөлт биш удирдлага дамжуулах үйлдлийг ашиглан давталт үүсгэж болох боловч энэ нь төгсөхгүй “мөнх” биелэх давталт болж “алгоритм заавал төгсдөг байх” шаардлага зөрчигдөх тул ийм давталтыг бичиж болохгүй.
  • 6. { Æ: // буруу_алг pi=3.141592 a: scanf(“%d”,&r) L:=pi*r ; S:=L*r ; V:=4/3*S*r ; L:=2*L; printf(“%d,%d,%d”,L,S,V); goto a; }
  • 7. Энд r хэмжигдхүүний өгөгдсөн утганд харгалзах L,S,V хэмжигдхүүнүүдийн утгыг бодож гаргах бүлэг үйлдлийг төгсгөлгүй давтах учир энэ нь зөв алгоритм болж чадахгүй
  • 8. ªìíºõ íºõöºëò äàâòàëò Давталтыг төгсдөг болгохын тулд нөхцөл шалгах үйлдэл ашиглах ба нөхцөл шалгах болон нөхцөлт биш удирдлага дамжуулах үйлдлээр дараахь хэлбэртэй нийлмэл үйлдлийг зохиож болно.
  • 9. Өмнөх нөхцөлт давталтыг алгоритмын хэлэнд: while (нөхцөл) {үйлдэл_1 үйлдэл_2 …… үйлдэл_n };
  • 10. Өмнөх нөхцөлт давталтыг бичихдээ дараах шинжүүдийг анхаарах хэрэгтэй. Үүнд: Төгсгөхнөхцлийг шалгаж давталт эхлэх учир энэ нөхцөл давталт эхлэхээс өмнө тодорхой утгатай болсон байх ёстой. Давталтын төгсгөх нөхцөлийг шалгаж давталт эхлэх учир энэ нь анхнаасаа, хэрэв биелэхгүй байвал давталтын бие биелэгдэхгүй шууд давталтын дараах үйлдэлд шилжинэ.
  • 11. Давталтын төгсгөх нөхцөлд нөлөөлөх ө.х түүний утга өөрчлөгдөхөд нөлөөлөх ямар нэг үйлдэл давталтын бие дотор заавал орсон байх ёстой. Хэрэв тэгэхгүй бол нөхцөл үргэлж “үнэн” утгатай байж “мөнхийн” давталт үүсэхэд хүрнэ. Давталтын бие биелэх бүрд түүнийг төгсгөх нөхцөлийн утга өөрчлөгдөх учраас нөхцөлийн утга “худал” болсон үед давталт төгсч давталтын дараах үйлдэлд шилжинэ.Өмнөх нөхцөлт давталтын хувьд түүний бие төгсгөлөг тоон удаа биелэгдэхэд “худал” утгатай болж чадах тийм нөхцөлийг зөв нөхцөл гэж үзнэ.
  • 12. Өмнөх нөхцөлт давталт Нөхцөл Үйлдэл_1 ........ Үйлдэл_n
  • 13. Дараах нөхцөлт давталт Энэ давталтын хувьд түүнийг төгсгөх нөхцөлийг давталтын бие биелэгдсэний дараа шалгаж байгаа учраас ийм хэлбэрийн давталтыг дараах нөхцөлт давталт гэнэ.
  • 14. Дараах нөхцөлт давталтыг алгоритмын хэлэнд: do { үйлдэл_1 үйлдэл_2 ….. Үйлдэл_n } while (нөхцөл);
  • 15. Дараах нөхцөлт давталт доорх онцлог шинжтэй байна. Үүнд: Давталтын бие биелсний дараа төгсгөх нөхцөлийг шалгаад дахин давтах эсэхийг тогтоох учир түүний бие ядаж нэг удаа заавал биелэгдэнэ. Нөхцөл нөлөөлөх ө.х нөхцөлийн утгыг өөрчлөх ямар нэг үйлдэл давталтын бие дотор заавал бичигдсэн байх ёстой. Дараах нөхцөлт давталтын хувьд түүний бие төгсгөлөг тоон удаа биелэгдэхэд “худал” утгатай болж чадах тийм зөв нөхцөлийг сонгож бичсэн байх ёстой. Төгсгөхнөхцөл “худал” утгатай болж давталт дуусахад давталтын үйлдлийн дараа бичигдсэн үйлдэлд шилжинэ.
  • 16. Дараах нөхцөлт давталт Давталтын бие Нөхцөл