Тоог таа

Өмнөх хичээлүүдэд сурсан логик шалгалт, циклийн мэдлэгээ ашиглан програмчлалын стандарт жишээ "Тоог таа" энгийн тоглоомын програмыг бичье. Тоглоомын логик нь компьютер 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 -ыг өгвөл

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

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

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

Python -нд list comprehension ойлголт чухал байр суурьтай. Ойлголтод тохирох монгол үг олоогүй тул шууд англи нэрээр нь тогтоохыг зөвлөе. list comprehension нь жагсаалтаыг илүү тодорхой, ойлгомжтой, хялбар хэлбэрээр инициализац хийх аргачлал юм.

  Нээгдсэн тоо: 999 Нийтийн

Tuple төрөл хичээлээр үзсэн жишээнүүдэд tuple -ийн элементүүдийг нэрлээгүй. Өөрөөр хэлбэл төрлийн элементүүдэд зөвхөн индексээр нь хандаж байсан. Гэтэл tuple -д бие биетэйгээ холбоо бүхий өгөгдлийн багцыг голлон хадгалдаг гэдгээс түүнд индексээс өөрөөр классын шинж байдлаар ханддаг болбол илүү ойлгомжтой, эвтэйхэн болохоор. Python -ий элементүүдэд нь нэр өгч болдог namedtuple буюу нэрлэгдсэн tuple гэдэг класстай төстэй төрөл энэ боломжийг олгохыг жишээгээр харцгаая.

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

Програмчлалын хэлүүдийн чансаа буюу рэнкд Python нилээд дээгүүр байр эзэлдэгийг бүгд мэдэх байх. Хэлний бичлэгийн дүрэм бусдаас багахан ялгаатай ч функцийн сан баялаг, ойлгоход энгийн, код бичилт богино, ОХП -ийг бүрэн дэмждэг, сервер талын скриптүүд бичихэд хялбар, нээлттэй эх кодтой гээд олон давуу талуудтайн дээр сүүлийн жилүүдэд их, дээд сургуулиуд Python -г сургалтын програмын үндсэн хэлүүддээ багтаах болсон. Жишээ дурдвал ижил асуудлын C# хэл дээрх кодоос Python дээрх код бараг 30 хувь бага гэсэн судалгаа хүртэл байдаг. ОХП -ийн суурийг Python -нд маш энгийнээр их ойлгомжтой хэрэгжүүлсэн нь түүнийг их, дээд сургуулиуд сургалтын програмдаа оруулах гол шалтгаан болсон болов уу. Та програмчлалын хэлийг судалж эхлэж байгаа бол Python муугүй сонголт гэдгийг зөвлөх байна.       

Хичээлд лямбда ухагдхуун, map, filter функцуудийн талаар авч үзье. Эхлээд элементүүдийн дараалалд өөрчлөлт хийх функцуудийг авч үзье.

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

Програмийн боловсруулалтыг мөр төрлийн хувьсагчгүйгээр төсөөлөхийн аргагүй. Python -ий өгөгдлийн төрлүүд бүгд обьектууд гэдгийг сануулъя.

Мөрийг үүсгэх

Мөрийг дан эсхүл давхар хашилтыг ашиглан хоёр янзаар

зарлаж болно. Мөрийг зарлаж байгаа энэ аргуудад зарчмын ялгаа байхгүй. Гэхдээ мөр өөртөө жишээ нь I'm programmer, Bat is a "beginner" programmer гэх мэтээр дан, давхар хашилтыг агуулж болно.

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

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

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

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

 

4 хүнийг нэг эгнээнд хичнээн янзаар жагсах боломжтой вэ?

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

 

тэгшитгэлийн хамгийн бага эерэг шийдийг ол.

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