Тоог таа

Өмнөх хичээлүүдэд сурсан логик шалгалт, циклийн мэдлэгээ ашиглан програмчлалын стандарт жишээ "Тоог таа" энгийн тоглоомын програмыг бичье. Тоглоомын логик нь компьютер 1 -50 -ын хооронд санамсаргүй байдлаар сонгосон тоог хэрэглэгч 6 удаагийн оролдлогоор олох юм. Та програмийн кодийг өмнөх хичээлүүдээр сурсан бүтцүүдийг ашиглан бичих гээд үзээрэй.

Санамж: Тавигдсан асуудлын шийдлийг өөрөө олон кодлож сурахыг байнга эрмэлзэх хэрэгтэй. Ер нь програм бүтээх бол олон чиглэлийн мэрэгжилтнүүдийн хамтын ажил байдаг. Бид програмчлалийн python хэлийг судалж байгаа тул кодлогчдод тавигдах асуудлыг хэрхэн шийдэхэд л анхааран бэлэн алгоритм бүхий энгийн "Тоог таа" тоглоомыг сонгосон хэрэг.

"Тоог таа" програмийн нэгэн хэрэгжүүлэлтийг кодийг

import random
tries = 0
number = random.randint(1,50)
print('1 -ээс 50 -ын хооронд санасан тоог таагаарай...')
while tries < 6:
    guess = int(input('Тоогоо оруулна уу:'))
    tries += 1
    if guess < number:
        print('Таны тоо бага байна.')
    if guess > number:
        print('Таны тоо их байна.')
    if guess == number:
        print(f'Баяр хүргэе! Та тоог {tries} оролдлогоор оллоо.')
        break
    if guess != number and tries == 6:
        print(f'Уучлаарай, та тоог тааж чадсангүй. Санасан тоо {number} байлаа.')
        break

авч үзье. Дээрх код бол програмийн логикийн хэрэгжүүлэлтийн нэг л хувилбар тул таны кодоос өөр байж болно. Тоглоомыг та өөрөөр кодлон зөв ажиллаж байвал их сайн буюу өмнөх хичээлүүдийг сайн ойлгосон гэсэн үг. Компьютер тоог санах учраас санамсаргүй тооны random модулийн импортыг хийгээд хэрэглэгчийн таах оролдлогын tries хувьсагчид 0 анхны утгыг олгоно. Дараа нь random.randint(1,50) командаар 1-50 хооронд санамсаргүй тоог өгүүлээд түүнийг number хувьсагчид аваад компьютер "1 -ээс 50 -ын хооронд санасан тоог таагаарай..." мэдээллийг дэлгэцэнд харуулаад тоглоом эхлэнэ. random модулийн randint арга параметрээр өгөгдсөн тоонууд хооронд санамсаргүй бүхэл тоог буцаадаг. Хэрэглэгч нийт 6 оролдлогоор санасан тоог олох тул tries хувьсагч зургаа хүртэл while циклийг эхлүүлье. Циклийн алхам эхлэх бүрд guess = int(input('Тоогоо оруулна уу:')) командаар хэрэглэгчийн оруулсан тоог int функцээр бүхэл тоо болгон guess хувьсагчид авна. Үүний дараа оролдлогын tries хувьсагчийг нэгээр нэмээд хэрэглэгчээс оруулсан тоог шалгах логикийг хийнэ.
Логикийн операторууд энгийн тул тайлбар хийгээд байх шаардлагагүй болов уу. Хэрэглэгчийн тоо санасан тооноос бага эсхүл их бол тохирох мэдээллийг өгнө. Хэрэглэгчийн тоо санасан тоотой тэнцвэл хэрэглэгчид баяр хүргээд тоог хэдэн оролдлогоор олсонг мэдэгдэнэ. Харин хэрэглэгчийн тоо санасан тоотой тэнцүү биш бөгөөд оролдлогын тоо 6 болсон бол даалгаварыг биелүүлж чадаагүй тухай мэдээллийг санасан тооны хамтаар үзүүлнэ.
Програмийг ажлуулбал

Эхний оролдлогын тоо авах цонх нээгдэнэ. 1-50 -ын хооронд тоо санасанг мэдэж байгаа тул хоёртын модны зарчмаар 25 -ыг өгье.

Таны оруулсан тоо их байна гэсэн тул 13 -ыг өгвөл

тоог таасан тухай мэдээллийг өглөө. Та програмийн ажиллагааг туршин үзэж бүх логик зөв ажиллаж байгааг шалгаарай.
Санамж: Хэрвээ хэрэглэгч тооны оронд тэмдэгт оруулбал програм алдаа өгнө. Үүнийг боловсруулах, хаах аргыг одоохондоо үзээгүй тул алдааг анзаарахгүй байж болно.

Мэдээлэл таалагдсан бол найзуудтайгаа хуваалцаарай.

  Нээгдсэн тоо: 1669 Төлбөртэй

Элементүүдийн багцийг агуулах төрлүүдийн нэг болох жагсаалт төрлийг авч үзье. Өгөгдлийн багцийн боловсруулалтад хамгийн ихээр ашиглагддаг төрөл бол жагсаалт буюу list гэхэд хэтрүүлэг болохгүй.

Жагсаалттай ажиллах

Жагсаалтыг зарлахдаа [] хаалтыг ашиглана.  

5- р нүдэнд бүхэл тооноос бүрдсэн элементүүдтэй int_list жагсаалтыг үүсгэн утгуудыг олгосон. Жагсаалтын элементүүд өөр өөр төрлийнх байж болохыг 2 - р нүдний жишээ харуулсан. Практикт ихэнх тохиолдолд жагсаалт нэг төрлийн буюу ижил төрөлтэй өгөгдлүүдийг агуулж байдаг. Жагсаалтын уртыг мэдэхдээ len дотоод функцийг ашиглахыг 3 -р нүдний жишээ харуулна. Жагсаалтын элементэд индексээр нь хандах боломжтойг 6 -р нүдний жишээнд харуулсан. Мөрийн адилаар сөрөг индекс ашиглан жагсаалтын эцсээс хандаж болно.

  Нээгдсэн тоо: 477 Төлбөртэй

Програмд функц ямар хэрэгтэй вэ? гэсэн асуулт гарч ирж болох юм. Функцийн нэг үүрэг бол кодын ижил хэсгийг давталтгүй болгон дахин ашиглах боломжийг бүрдүүлэхэд оршино. Жишээ нь програмын ямар нэгэн логикийн хэрэгжүүлэлтийг нэг удаа кодлоод түүнийг програмын кодийн бусад хэсгүүдэд хэрэгтэй болоход ашиглах боломжийг функц олгох юм. Түүнээс кодийн хэсэг өөр хэсэгт хэрэг болоход түүнийг хуулан тавих арга бол муу аргачлал гэдэг нь тайлбаргүйгээр ойлгомжтой. Иймээс төслийн янз бүрийн хэсгийн кодчлолд олон удаа ашиглагдах хэсгийг функц байдлаар тодорхойлон ашиглах нь цэвэр код бичих, ажиллагаануудын үүргийн хувиарлалт тэр ч бүү хэл багийн гишүүдийн үүргийг хувиарлахад ашиг тустай.

  Нээгдсэн тоо: 505 Төлбөртэй

Python -нд модулаас гадна пакетийг үүсгэж болно. Энгийнээр бол модул гэдэг нь .py өргөтгөлтэй файлд хадгалсан бусад .py өргөтгөлтэй файлын код ашиглаж болох скрипт. Пакет бол модулуудийг логикийн талаас нь нэгтгэсэн нэгдэл. Текст засварлагчид үүсгэсэн кодоо .py өргөтгөлтэй файлаар хадгалахад л модул үүсдэг бол пакетийг үүнээс арай өөрөөр үүсгэдэгийг хичээлээр авч үзье.

  Нээгдсэн тоо: 1257 Төлбөртэй

Python -нд тоонуудад энгийн математик үйлдлүүдийг хэрхэн хийхийг харцгаая. Үүний тулд Jupyter Notebook -ийн хичээлийн кодыг хадгалах хавтастаа шилжээд шинэ Notebook үүсгээрэй. Jupyter Notebook -ийг ачааллахыг Код засварлагч хичээлээс харна уу. Python -ий арифметикийн нэмэх (+ Addition), хасах (- Subtraction), үржих (* Multiplication), хуваах (/ Division), хуваалтын үлдэгдэл (% Modulus), зэрэг дэвшүүлэх (** Exponent), бүхэл хуваах (//) операторуудыг үзэцгээе.

Үйл явдал /event/ тодорхой үйлдэл хийгдсэн талаар системд мэдэгддэг. Хэрвээ бид энэхүү үйлдлийг ажиглах хэрэгтэй бол яг энд…

Нээгдсэн тоо : 235

 

Манай төсөл олон хуудсуудтай болон тэдгээрийн хооронд динамикаар шилжилт хийж байгаа ч тухайн үед шилжилт хийгдсэн хуудаст тохирох…

Нээгдсэн тоо : 323

 

Зочин (Visitor) паттерн классуудыг өөрчлөхгүйгээр тэдгээрийн обьектуудын үйлдлийг тодорхойлох боломжийг олгоно. Зочин хэвийг ашиглахдаа классуудын хоёр ангилалыг тодорхойлно.…

Нээгдсэн тоо : 285

 

Лямбда-илэрхийлэл нь нэргүй аргын хураангуй бичилтийг илэрхийлнэ. Лямбда-илэрхийлэл утга буцаадаг, буцаасан утгыг өөр аргын…

Нээгдсэн тоо : 384

 

Кодийн сайжруулалт /рефакторинг/ хичээлээр програмийн кодоо react -ийн зарчимд нийцүүлэн компонентод салгасан.…

Нээгдсэн тоо : 426

 

Хадгалагч (Memento) хэв обьектын дотоод төлвийг түүний гадна гаргаж дараа нь хайрцаглалтын зарчмыг зөрчихгүйгээр обьектыг сэргээх боломжийг олгодог.

Нээгдсэн тоо : 452

 

Делегаттай нэргүй арга нягт холбоотой. Нэргүй аргуудыг делегатийн хувийг үүсгэхэд ашигладаг.
Нэргүй аргуудын тодорхойлолт delegate түлхүүр үгээр…

Нээгдсэн тоо : 524

 

Математикт харилцан урвуу тоонууд гэж бий. Ямар нэгэн тооны урвуу тоог олохдоо тухайн тоог сөрөг нэг зэрэг дэвшүүлээд…

Нээгдсэн тоо : 603

 

Төсөлд react-router-dom санг оруулан чиглүүлэгчдийг бүртгүүлэн тохируулсан Санг суулган тохируулах хичээлээр бид хуудас…

Нээгдсэн тоо : 632

 
Энэ долоо хоногт

Тэмцээнд 16 шатарчин оролцсон. Нэгийн давааны хуваарийн хичнээн хувилбар байж болох вэ? / Хуьаарьт дор хаяж нэг өрөгт тоглох хүмүүс нь ялгаатай бол хувилбар гэж тооцно. Тоглох өнгө, ширээний дугаарыг тооцохгүй/

Нээгдсэн тоо : 1302

 

Нээгдсэн тоо : 1071

 

prob02_187_01 илэрхийллийг хялбарчил.

Нээгдсэн тоо : 182