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

Сайн байцгаана уу? Өнөөдөр та бүхэнд алгоритм гэж юу вэ? гэдэг талаар танилцуулъя. Алгоритм нь програм бичиж байгаа хүний гол суурь нь бөгөөд энгийнээр хэлбэл компьютерт юу хийх талаар өгч байгаа зааварчилга юм. Үүнийг жишээгээр авч үзье:

Энэ бол таны робот Зий. Тэрээр юу хийхээ мэдэхгүй зүгээр нэг төмөр машин юм. Зийд тушаал өгч ажиллуулахын тулд түүнийг програмчлах шаардлагатай бөгөөд энэ программыг бид алгоритм бичсэний үндсэн дээр бичдэг. Зийг бид дэлгүүрээс талх сүү авч ирэхийг тушаасан гэж бодъё. Зийд:

  • Дэлгүүрээс талх, сүү аваад ир!

гэж хэлсэн гэж үзье. Энэ үед Зий аль дэлгүүрээс, хэдэн талх, хэдэн литр сүү яаж авч ирэх зэргийг нарийн хэлж өгөхгүй бол бид нар шиг тархитай биш учир хамгийн эхний үг дэлгүүрээс гэдэг дээр програм нь гацна. Дэлгүүр лүү яаж очих вэ гэдгийг хүртэл хэлж өгөх шаардлагатай. Жишээ нь Зийд:

  • Урагш нэг алх
  • гэсэн комманд өгснөөр урагшаа нэг алхана. Дэлгүүр хүртэлх дараагийн алхамууд нь:
  • Урагш нэг алх
  • Урагш нэг алх
  • Урагш нэг алх
  • Урагш нэг алх
  • Урагш нэг алх
  • Зүүн гар тийш эргэ
  • Урагш нэг алх
  • Урагш нэг алх
  • Хаалгаар ор
  • гээд хаалгаар дэлгүүр лүү орно. Дэлгүүрт мөн хэрхэн юу яаж хийх талаар нарийн зааварлаж өгөх хэрэгтэй бөгөөд үүнийг бид дэлгүүрт гүйцэтгэх алгоритм гэж нэрлээд та бүхний сэтгэн бодох чадварт үлдээе. Та талх сүү хэдийг хаанаас авахыг нь заахаа мартуузай.

Бидний хийсэн алгоритмыг сайжруулбал дараах байдалтай байж болох юм

  • Дэлгүүр хүртэл дараахийг хий:
  • Урагш нэг алх
  • Хэрэв зүүн гар тийш эргэх зам тулсан бол:
  • Зүүн гар тийш эргэ

Алгоритм буюу зааврыг бид Песьюдо код гэж нэрийдэх энгийн үгээр бичиж хүнд ойлгомжтой бичлээ. Хэрэв та зургаар мэдээллийг түргэн авдаг бол алгоритмаа зурж бас болно. Ингэж зурсан зургыг flowdiagram буюу урсгал диаграмм гэнэ.

Өмнөх Песьюдо кодоо урсгал диаграмм руу хөрвүүлье.

  • Аливаа алгоритм, програм эхлэл төгсгөлтэй байна.
  • "Дэлгүүр хүртэл дараахийг хий" гэсэн нь давталт гэх ойлголт бөгөөд нөхцөл нь "Дэлгүүрт очоогүй юу?" гэсэн асуултаар солигдож болох юм. Хэрэв очоогүй буюу "үнэн" бол дараахийг хий гэсэнтэй ижил юм.
  • "Урагш нэг алх" үйлдлийг хийнэ, харин "худал" үед юу ч хийлгүй дуусна
  • Урагш нэг алхсаны дараа "Зүүн гар тийш эргэх зам тулсан уу?" хэмээн нөхцөл шалгана.
  • Хэрэв эргэх зам тулсан буюу "үнэн" үед "Зүүн гар тийш эргэ" үйлдлийг хийнэ.
  • Харин эсрэг тохиолдолд буюу "худал" үед юу ч хийлгүй давталт дээрээ буцаж очих юм.

Давталт Дэлгүүрт очсон тохиолдолд дуусч байна.

flowdiagram-ийн гол дүрснүүдийг бүгдээрээ үзье.

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

Функц дуудах буюу ямар нэгэн урьдчилж бэлдсэн өөр нэг алгоритмыг ажилуулна. Жишээ нь: өмнө нь гарсан урагш нэг алх эсвэл зүүн гар тийш эргэ коммандууд нь урьдчилж бэлдсэн нэг нэг алгоритм юм. Жишээ нь дээр: Урагш нэг алх алгоритмыг дуудаж байна.

Утга олгох үйлдэл нь жишээ нь та бидний сайн мэдэх +,-,*,/ зэрэг үйлдлийг хийгээд үр дүнг хадгалах явдал юм. Мэдээж хаана хадгалах ёстойг нь зааж өгдөг. Жишээ дээр: 1+3 үйлдлийг хийгээд x-т хадгалж байна.

Оролт нь гараас утга аваад хадгалах юм. Жишээ дээр: Гараас тоо авч z-эд хадгалж байна.

Гаралт буюу дэлгэц дээр хэвлэх нь жирийн текст хэвлэхээс гадна өмнө хадгалсан утгуудыг хэвлэнэ. Жишээ нь: өмнө хадгалсан x болон z-ийн утгуудыг хэвлэж байна.

Нөхцөл шалгах буюу if else. Нөхцөл биелж байвал Үнэн гэсэн салбараар алгоритм үргэлжилнэ харин нөхцөл биелээгүй тохиолдолд Худал гэсэн салаагаар алгоритм үргэлжилнэ.

While давталт буюу бидний өмнө жишээ дээр үзсэн нөхцөл биелж байвал үйлдлээ давтах алгоритмын хэсэг. Жишээ нь: Дэлгүүрт очоогүй юу? буюу Дэлгүүрт очоогүй нь үнэн үү? гэж асуугаад хэрэв хариулт очоогүй буюу Үнэн байвал давтаж хийх үйлдлээ хийнэ. Хийж дуусаад дахин Дэлгүүрт очоогүй юу? гэж асууна хэрэв хариулт дахин Үнэн буюу очоогүй гэвэл дахин давтах үйлдлээ хийгээд дахин асууна. Энэ мэт асуусаар Дэлгүүрт очоогүй юу? гэсэн асуултын хариу Худал буюу Очсон болсон тохиолдолд давталт дуусч алгоритм маань цааш үргэлжилнэ.

For давталт буюу хэдэн удаа давтаж хийх вэ гэдгийг мэдэж байгаа үед хэрэглэх давталт. Жишээ дээр: y 1-ээс 10 хүртэл нэг нэгээр өсөх ба энэ үед дараах гэсэн салбарт байгаа давталтын үйлдлүүд хийгдэнэ. Давталт яг 10 удаа хийгдээд дуусна.

Тэгэхээр бид алгоритмын эхлэл төгсгөл, функц дуудах буюу урьдчилж бэлдсэн алгоритм дуудах, утга олгох, оролт, гаралт, нөхцөл шалгах if else, While давталт, For давталт зэрэг ойлголтуудыг үзлээ. Алгоритмаа хүнд тайлбарлах үед энэ зурагнууд маш ойлгомжтой байдаг юм.

Алгоритм нь програмчлалын суурь болоод зогсохгүй таныг цэгцтэй бодоход тус болох болно. Зарим хүмүүс хүүхэд байхдаа сурдаг байж дээ гэж боддог хэдий ч та хэзээ ч оройтоогүй гэдгийг танд сануулъя. Анхлан суралцах үедээ та бүхэн https://code.org/ дээрээс сонирхолтой хичээлүүдийг хийвэл алгоритмын тухай цэгцтэй ойлголттой болно. Мөн хүүхдүүдтэйгээ болон дүү нартайгаа цуг тоглоорой.


Мэдээж бидний бичсэн алгоритмыг шууд машин ойлгохгүй учраас түүний ойлгох машин код руу хөрвүүлэх хэрэг гарна. Гэвч тэр нь бидэнд бичихэд төвөгтэй байх тул дээд түвшнийн хэлээр бичдэг юм. Үүний нэг нь бидний үзэх Python хэл юм.

Дуусгаад үргэлжлүүлнэ үү  
Хэлэлцүүлэг

7 сэтгэгдэл