Labels

Saturday, February 6, 2010

Hangman тоглоом

Маш энгийн тоглоомыг энгийн кодчилолоор анхлан суралцагчиддаа зориулаад бичлээ. Github дээр нээлттэй тавьсан болохоор хэн ч хөгжүүлж болно ;) За залуусаа сураад байж дэ

#random сан нь санамсаргүй сонголт хийхэд ашиглагдана. random.choise
#os сан нь terminal дээр тушаал өгөхөд ашиглана. os.system('clear')
import random
import os
#hiden нь доорх үгнүүдээс санамсаргүй утга авна
hided = random.choice([
'bmw',
'kia',
'lamborgini',
'mercedes-benz',
'lincoln',
'ford',
'honda',
'mazda',
'land rover',
'rover',
'audi',
'cadillac',
'infiniti',
'hummer',
'hyundai',
'toyota',
'jeep',
'ferrari',
'nissan',
'mitsubishi',
'bentley',
'jaguar',
'suzuci',
'lotus',
'lexus',
'volvo',
'daewoo',
'isuzu'])
#missed хувьсагчид алдсан үсэгнүүдийг давтахгүй байхад зориулан хадгална
#finded хувьсагчид зөв таасан үсэгнүүдийг давтахгүй байхад зориулан хадгална
missed = ''
finded = ''
#Terminal-ын дэлгэц цэвэрлэх команд
os.system('clear')
print 'GO! man. Good luck for U ;)'
print 'Finded characters: ' + finded
print 'Missed characters: ' + missed
print
#Нууц үгийн (hided) сүүдрийг хэвлэх
for ch in hided:
if ch == ' ':
print ' ',
else:
print '_',
#missed-ийн урт 5-аас (5 удаа алдсан бол) хэтэрвэл давталт дуусна
while len(missed) < 5:
inserted = raw_input("\nYour choie: ") #гараас утга оруулах
os.system('clear')
#оруулсан тэмдэг (inserted) давтагдсан болон алдсан, зөв таасан эсэхийг шалгана
if inserted in missed:
print inserted + ' is missed character!'
elif inserted in finded:
print inserted + ' is finded character!'
elif inserted not in hided:
missed += inserted
print inserted + ' missed!'
else:
finded += inserted
print inserted + ' finded!'
print 'Finded characters: ' + finded
print 'Missed characters: ' + missed
#доорх дүлзэн хувьсагч нь бүх үсгийг зөв таасан бол давталтыг зогсооно
notend = 'false'
#Таагаагүй үсгүүдийн сүүдэрийг, таасан үсгийг өөрийг нь хэвлэнэ. Таагаагүй үсэг байвал notend true
#утга авч давталт үргэлжлэнэ
for ch in hided:
if ch in finded:
print ch,
elif ch == ' ':
print ' ',
else:
print '_',
notend = 'true'
#За энд манай хамгийн чухал баатар болох дүүжлүүжл буй хүн :P
print
if len(missed) <> 0:
if len(missed) > 0: print ' O '
if len(missed) > 1: print '/|\\'
if len(missed) > 2: print ' | '
if len(missed) > 3: print ' ^ '
if len(missed) > 4: print '/ \\'
#Бүх үсэг таагдсан бол бол notend нь дээр true утга авахгүй. Хэрвээ тийм бол давталт дуусна
if notend == 'false':
break
#Дээрх while давталт дуусахад missed-ийн урт нь 5-тай тэнцүү бол нууц үгийг хэвлээд Баяртай. Үгүй бол хожсон
if len(missed) == 5:
print '\nYou are HANGMAN!!! True word is ' + hided + '\nBye bye!'
else:
print '\nCongratulation ' + hided + ' is TRUE!!! You can ;)'
view raw hangman.py hosted with ❤ by GitHub

No comments: