Алгоритм

Чөлөөт нэвтэрхий толь — Википедиагаас
Харайх: Удирдах, Хайлт
Чийдэняаж асаах эсэхийг тодруулах зорилготой алгоритм.

Алгоритм товч тодорхойлолт нь гүйцэтгэгчийн биелүүлж чадах үйлдэлүүдийн дараалал.

Хүмүүс өдөр тутмын үйл ажиллагаандаа олон тооны алгоритмыг гүйцэтгэж байдаг боловч үүнийгээ тэр болгон мэдэрдэггүй байна. Тухайлбал, тухайн өдрийн ажил төрөл болон тодорхой нэгэн ажлыг хийхдээ тогтсон дэс дарааллыг мөрддөг. Алгоритмын тухай ойлголт нь нэгэн төрлийн бодлогуудыг бодох ерөнхий арга олж тогтоох гэсэн оролдлоготой уялдан математикт анх үүссэн. Алгоритм гэдэг нэр томъёог арифметикийн 4-н үйлдлийг гүйцэтгэх дүрэм боловсруулсан Персийн математикч Мухаммед Ибн Мусса Аль-Хорезмын нэрнээс гаралтай гэж үздэг. Орчин үед алгоритмын тухай онол нь математикийн шинжлэх ухааны нэг салбар болон хөгжихийн зэрэгцээгээр компьютер дээр бодлого бодоход маш чухал үүрэг гүйцэтгэж байна.

Алгоритмын чанарууд[засварлах]

Дискрет чанар[засварлах]

Алгоритм нь өгөгдөл эсвэл өмнөх алхмуудын хэмжигдхүүнүүдээр тодорхой дүрмийн дагуу шинэ хэмжигдхүүнүүдийг олох тусгаар тусгаар алхмуудад хуваагдсан байна. Энэ чанарыг алгоритмын дискрет чанар гэнэ.

Тодорхой чанар[засварлах]

Алгоритмын аливаа алхмын үйлдлийг гүйцэтгэгч нэгэн утгатайгаар ойлгохын зэрэгцээгээр гүйцэтгэж чаддаг байна. Энэ нь алгоритмын тодорхой байх чанар юм.

Төгсгөлөг чанар[засварлах]

Алгоритм нь төгсгөлөг тооны алхамтай байна.

Үр дүнтэй чанар[засварлах]

Алгоритмын аливаа алхам болон алгоритмыг бүхэлд нь биелүүлэхэд тодорхой үр дүн гардаг байх ёстой. Үүнийг алгоритмын үр дүнтэй байх чанар гэнэ.

Нийтлэг чанар[засварлах]

Алгоритм нь зөвхөн тухайн өгөгдөлд төдийгүй уг өгөгдөлтэй ижил төрлийн бүх өгөгдөлд хүчинтэй байна. Энэ чанарыг алгоритмын нийтлэг чанар гэнэ.

Алгоритмын төрлүүд[засварлах]

Алгоритмыг дараах 3 төрөлд хуваадаг:

  • Шугаман
  • Салаалсан -энгийн,
  • Давталттай гэж бас 3 хуваагддаг

Алгоритмыг зохиох аргачлал[засварлах]

Алгоритм зохионо гэдэг нь тухайн бодлогыг бодох үйл ажиллагааг гүйцэтгэгчийг үйлдлүүдээр нарийвчлан задалж, уг үйлдлүүдийг ямар дэс дарааллаар гүйцэтгэхийг тодорхойлж өгнө гэсэн үг юм. Бодлогын алгоритмыг зохиоход алгоритмыг алхам алхмаар боловсруулах аргыг ихэвчлэн хэрэглэдэг. Энэ аргын үндсэн санаа нь бодлогыг сайтар задлан шинжилсний эцэст таньж мэдсэн түүний өвөрмөц шинж чанарыг үндэслэн эхлээд бодлогын алгоритм ямар ямар хэсгүүдээс тогтохыг харуулсан бүдүүвч алгоритм зохиож цаашаа түүнийгээ шат дараалан гүйцэтгэгчийн үйлдлүүдээр нарийвчлан задлах явдал юм.

Бодлогын хариуг гаргахын тулд бодлогыг өгөгдөл ба бодолтын явцад гарах завсрын хэмжигдхүүнүүд дээр хийх үйлдлүүдийн агуулга болон дэс дарааллыг тодорхойлж байгаа зааврыг алгоритм гэнэ. Алгоритмаар заасан бодлогыг бодох үйл ажиллагааг биелүүлэгчийг алгоритмыг гүйцэтгэгч гэнэ. Аливаа алгоритмыг тодорхой гүйцэтгэгчид зориулж зохионо. Алгоритмыг гүйцэтгэгч нь хүн эсвэл компьютер байна.

Алгоритмын үндсэн алхмууд[засварлах]

Алхмын нэр Алхмын үүрэг
Бодолтын утга олгох алхам Хэмжигдхүүний утгыг өөрчлөнө.
Логик алхам Ямар нэгэн нөхцлөөс хамааран алгоритм биелэх замыг сонгоно.
Оруулах алхам Өгөгдөл, завсрын хэмжигдхүүнүүдийн утгыг оруулна.
Гаргах алхам Өгөгдөл, завсрын хэмжигдхүүнүүдийн утга болон үр дүнг гаргана.
Эхлэл төгсгөлийн алхам Эхлэл төгсгөл болон мэдээллийг боловсруулах процессийг зогсоохыг заана.
Холбоос Харьцангуй хол орших алхмуудын шилжилтийг заахад хэрэглэнэ.
Тайлбар Ямар нэгэн алхмын гүйцэтгэх үүргийг дэлгэрэнгүй тайлбарлахад хэрэглэнэ.

Мэдээллийг оруулах алхам[засварлах]

Мэдээллийг боловсруулахын тулд түүнийг компьютерийн санах ойд урьдчилан бичсэн байх шаардлагатай. Иймээс алгоритмд хувьсагчдын анхны утгуудыг машинд оруулах алхам зайлшгүй байх ба үүнийг компьютерийн гарын тусламжтайгаар хийдэг. компьютерт оруулж байгаа мэдээллийн санах ойд хадгалагдах хаягыг мэдээллийг оруулах алхамдаа зааж өгнө. Энэ алхам биелэгдэхэд хувьсагчийн утга нь хэрэгтэй болно.

Бодолтын утга олгох алхам[засварлах]

компьютерийн нэг үндсэн үүрэг нь мэдээллийг хувирган боловсруулах явдал юм. Алгоритмд тодорхой нэр томъёогоор хэмжигдхүүний утгыг бодож гаргах алхам зайлшгүй гардаг. Энэ алхмыг бодолтын утга олгох алхам гэнэ. Энэ алхам нь утгыг бодож олох гэж байга илэрхийлэл, гарах утгыг хадгалах хаяг гэсэн 2 хэсэгтэй байна. Ямар нэгэн хэмжигдхүүнд утга олгоход хуучин утга нь устдаг гэдгийг анхаарах хэрэгтэй.

Мэдээллийг бичиж гаргах алхам[засварлах]

Алгоритм ба программаар олсон үр дүнг компьютераас хүнд мэдээлэх нь зайлшгүй юм. Өөрөөр хэлбэл бодлогын хариуг компьютераас бичиж гаргах хэрэгтэй юм. Мэдээллийг гаргах үйлдэл нь олон хэлбэртэй байна. Бид нар мэдээллийг компьютерийн дэлгэцэн дээр бичиж гаргах хэлбэрийг хэрэглэнэ. Энэ алхамд утгыг нь бичиж гаргах гэж буй хэмжигдхүүнүүдийн хаягийг зааж өгнө.

Салаалуулах алхам[засварлах]

Алгоритмын нэгэн алхмаас өөр алхамд шилжин тэр алхмаас бодолтыг үргэлжлүүлэх боломжийг хангасан үйлдлийг удирдлага шилжүүлэх үйлдэл гэнэ. Энэ үйлдлийг хэрэглэснээр хэсэг алхмыг алгасах, ямар нэгэн алхамд буцаж ирэх зэргээр алхмуудын биелэх дарааллыг алгоритм зохиогч удирдаж чадна. Алгоритмчлах явцад тодорхой нөхцөл шалган уг нөхцөл биелэгдэж байгаа эсэхээс хамааруулан бодолтыг ялгаатай замаар үргэлжлүүлэх шаардлага гардаг. Энэ шаардлагыг хангасан алхмыг нөхцөлт удирдлага шилжүүлэх буюу салаалуулах алхам гэнэ. Нөхцөлт удирдлага шилжүүлэх алхам нь шалгах нөхцөл, нөхцөл биелэгдэх болон биелэгдэхгүй байх 2 тохиолдлын тус бүрт нь бодолтыг үргэлжлүүлэх зам гэсэн 3 элементтэй байна.

Алгоритмыг дүрслэх[засварлах]

Алгоритмыг дараахь 3 хэлбэрээр дүрсэлж болно.

  • Хүмүүсийн харилцааны ердийн хэл - Алгоритмыг хүмүүсийн харилцааны ердийн хэлээр дүрслэнэ гэдэг нь алгоритмын алхам бүрийг үг ба өгүүлбэрээр бичнэ гэсэн үг юм.
  • Блок-схем - Блок-схем бол алгоритмын бүтцийг нүдэнд харагдахуйц байдлаар харуулан алгоритмыг графикаар дүрслэх хэлбэр юм. Блок-схемд алгоритмын алхам бүрийг геометрийн нөхцөлт дүрсээр тэмдэглэх бөгөөд уг дүрс дотор тухайн алхмын товч утгыг томъёогоор бичнэ.
  • Программчлалын хэл - Алгоритмыг программчлалын хэлээр дүрслэхэд программчлалын ямар нэгэн хэл сонгон авч тухайн хэлнийхээ үгзүй, өгүүлбэрзүйн дүрмүүдийг баримтлан алгоритмыг тэр хэлээрээ бичнэ. Алгоритмыг ийм байдлаар дүрслэхэд программчлалын хэлний тухай мэдлэг алгоритм зохиогчид зайлшгүй шаардагдана. Иймээс алгоритмыг программчлалын хэлээр дүрслэхийн өмнө урьдчилан программчлалын хэл судлан, эзэмшсэн байх хэрэгтэй юм.

Гадаад холбоос[засварлах]