16
9-Р АНГИ Л.Энхбаяр Алгоритм гэж юу вэ? Алгоритмын шинж чанар Алгоритмыг дүрслэх арга Алгоритм ын бүтэц Алгоритмын бодлогууд

Algoritm

  • Upload
    shulam

  • View
    8.257

  • Download
    4

Embed Size (px)

DESCRIPTION

algoritm

Citation preview

Page 1: Algoritm

9-Р АНГИ Л.Энхбаяр

Алгоритм гэж юу вэ?

Алгоритмын шинж чанар

Алгоритмыг дүрслэхарга

Алгоритмын бүтэц

Алгоритмын бодлогууд

Page 2: Algoritm

Тодорхойлолт:

1. “Алгоритм бол тодорхой үр дүн гаргаж авахын тулд дараалан гүйцэтгэх ѐстой үйлдлүүдийн жагсаалт юм”.

2. “Алгоритм бол тодорхой үр дүн гаргаж авахын тулд баримтлах ерөнхий дүрэм юм”.

3. “Дэвшүүлсэн зорилгодоо хүрэх буюу өмнөөтавьсан бодлогоо бодохын тулд гүйцэтгэгчийн хийх үйлдлийн дарааллыг нарийвчлан зааж өгснийг Алгоритм гэнэ”.

Алгоритм зохиох процессыг мэдээжалгоритмчлал гэнэ.

Page 3: Algoritm

Эргэн тойрны амьдралд дүүрэн алгоритм байна. Ж.нь хот доторх автомашины жолооч гэрлэн дохионд захирагдах дүрмийг баримталдаг. Түүнийг нь:

Хэрэв шар гэрэл асвал гэрлэн дохио солигдох (улаан эсвэл ногоон) гэж буй тул анхааралтай бай

Хэрэв улаан гэрэл асвал зогс

Хэрэв ногоон гэрэл асвал хөдөл хэмээн томъѐолъѐ. Энэ бол гэрлэн дохиод захирагдах алгоритм юм. Гэхдээ энэ алгоритмын хувьд үйлдлийн эрэмбэ зайлшгүй чухал биш. Учир нь жолооч замын гэрлэн дохиотой хэсгээр явж байгаад, чухам ямар гэрэл асч байна вэ (өөрөөр хэлбэл ямар нөхцөл биелж байна вэ гэдгийг шалгаад) түүнд тохирсон алхмыг дээрх алгоритмаас сонгож гүйцэтгэнэ.

Тэгвэл (З+3)*(3+4)-23 гэсэн илэрхийллийг бодохын тулд:

3 дээр 3-ыг нэмэх (=6)

3 дээр 4-ийг нэмэх (=7)

6-г 7-оор үржүүлэх (=42)

2-ийг куб зэрэгт дэвшүүлэх (=8)

42-оос 8-ыг хасах гэсэн алгоритмыг баримтлана. Энд бол үйлдлийн дараалал чухал байна. Түүнийг зөрчвөөс зөв хариуг гаргаж чадахгүй.

Page 4: Algoritm

Дискрет буюу тасралттай чанар: Алгоритм нь дараалсан алхмууд буюу үйлдлүүдээс тогтсон байх

Тодорхой байх чанар: Алгоритмын алхам бүр оновчтой, тодорхой байх – алгоритмын алхам бүрт чухам ямар үйлдэл хийгдэх нь тодорхой байх

Нийтлэг байх чанар: тодорхой бодлогыг алгоритмыг зохиохдоо энэ бодлоготой ижил төрлийн бүр бодлогыг бодоход хэрэглэж болохоор ерөнхий алгоритмийг зохиох хэрэгтэй.

Төгсгөлөг байх чанар: Төгсгөлөг тооны алхамтай байх ба эдгээр алхамууд нь төгсгөлөг тоогоор биелэнэ.

Үр дүнтэй байх чанар: тодорхой үр дүн гардаг байх ѐстой.

Page 5: Algoritm

1. Үгээр илэрхийлэх арга: (эх хэлээр бичих)

Жишээ нь: Самбар арчих алгоритм:

Самбарт гар

Алчуур ав

Алчуур норго

Самбар арч

Алчуураа тавь

Суудалдаа суу

Page 6: Algoritm

2. Томьѐоны арга:

Жишээ нь: ах2+bx+c=0 хэлбэрийн квадрат

тэгшитгэлийг бодохдоо

томьѐог ашигладаг.

3. График (блок схем)

Алгоритмийн үйлдлийг геометр дүрсээр

(блок) орлуулж алгоритмыг тэмдэглэх

хэлбэр юм. Блокууд сумаар холбогдож

нийт алгоритмынхаа бүтцийг харуулдаг.

Page 7: Algoritm

Элемент Элементийн нэр: Төлөөлөх үйлдэл:

Эхлэл, төгсгөлийн

блок

Алгоритмын Эхлэл эсвэл Төгсгөл

(дотор нь бичнэ)

Оролт, гаралтын

блок

Оролт-Гаралтын үйлдлийн

ерөнхий тэмдэглэгээ (дотор нь

бичнэ)

Утга олгох блок арифметик үйлдлүүд ба утга

олгох г.м. (дотор нь бичнэ)

Логик нөхцөлийн

блок

Өгсөн нөхцлийг шалгаж

шийдвэр гаргах буюу салаа

замын аль нэгээр нь явах (дотор

нь нөхцлөө бичнэ)

Шилжилтийн шугам Шилжилтийн шугам

“Залгаас” Тухайн хуудсанд багтахгүй

байгаа блок схемийг өөр

хуудаснаас үргэлжлүүлэхдээ

хоѐр хуудасны залгаасыг

тэмдэглэх (дотор нь тэмдгээ

тавина)

Page 8: Algoritm

4.Хүснэгтэн хэлбэр

Алгоритмын энэ бичлэг нь хүснэгтээр

илэрхийлдэг хэлбэртэй. Жнь: хүснэгтэн

алгоритм зохиох дараалал.

1. Мэдээлэлзүйд зөвшөөрдөг тийм байдлаар

илэрхийллээ бичнэ.

2. Үйлдлүүдийн дарааллыг тодорхойлно.

3. Завсрын үр дүнг хадгалах тэмдэглэгээ

оруулна.

4. Хувьсагчдын алхам бүрт авах утгыг

хүснэгтэнд оруулна.

Жнь: R=2a+3b бодох алгоритм Алхам Үйлдэл Хэмжиг-дэхүүн Үр дүн

1 2

1 * 2 A K

2 * 3 B U

3 + K u R

Page 9: Algoritm

5.Алгоритм бичвэрийн арга: алгоритмын энэ

тэмдэглэгээг тусгай хэлээр илэрхийлдэг.

Жнь: дээрх бодлогыг алгоритм бичвэрийн

аргаар бичье. R=2a+3b

Оруул: а,ь;

K=2*a;

U=3*b;

R:=K+U

Гарга(R);

Page 10: Algoritm

Элементүүд нийлж тодорхой бүтцийг үүсгэдэг. Эдгээр бүтцийг алгоритмын үндсэн бүтэц (АҮБ) хэмээн нэрийднэ. Ингэснээр алгоритмыг зөвхөн эдгээр бүтцээс тогтсон мэтээр авч үзэх боломжтой. АҮБ-ийн гол онцлог бол тэдгээр нь зөвхөн нэг оролт, нэг гаралттай байна.

3 төрлийн АҮБ байдаг. Энэ нь шугаман, Салаалалт, Давталт юм. Салаалалт бүтэц гүйцэд ба гүйцэд бус гэсэн 2 янз байдаг. Давталт бүтэц нь While (Байхад), Until(Хүртэл), Параметрт гэсэн 3 хэлбэртэй байна. Эд бүгдийн схемийг дараах хүснэгтэд харууллаа.

Page 11: Algoritm

Шугаман алгоритм: Дээрээс доош бүтэцтэй

алгоритмыг шугаман гэнэ. Жнь:

Page 12: Algoritm
Page 13: Algoritm

Гүйцэд салаалалтын жишээ: А тооны утга 5-

аас их бол 2дахин ихэсгэж, үгүй бол 2

дахин багасгах алгоритм.

Page 14: Algoritm
Page 15: Algoritm

1. Өгөгдсөн n бүхэл тоо тэгш, сондгой

эсэхийг тогтоо.

2. Х,у талуудтай тэгш өнцөгт өгөгджээ. Энэ

тэгш өнцөгтийн талбай ба периметрийг

ол.

3. а,ь натурал тоонууд өгөгдөв. Энэ 2 тооны

ихийг ол

4. Өгөгдсөн а,b,c гурван тооны хамгийн

ихийг ол.

Page 16: Algoritm

2-ийн бодолт:

Тэгш өнцөгтийн талууд өгөгдсөн үед талбайг

нь S, периметрийг нь P гэж тэмдэглэвэл

S:=x*y, P:=2*(x+y) гэсэн томьѐонуудаар

талбай ба периметрийг тус тус бодно. Энэ

бодлогын алгоритм нь шугаман бүтэцтэй

байна.