Another side of me

Artikel Terbaru

Sunday, June 11, 2017

On June 11, 2017 by Auli in ,    No comments
#PROGAM GAME TEKA TEKI SILANG DENGAN ACAK
#Author - AHMAD HANIFUL AULI
#NRP: 2116100129
#DENGAN MENAMPILKAN GAMBAR DAN PETA DARI KATA YANG ADA KEMUDIAN PEMAIN AKAN MENEBAKNYA

#STRUKTUR ALGORITMA YANG DIPAKAI
#   1. PRINT WELLCOME DAN PETA GAMBAR
#   2. MENGACAK KATA-KATA YANG ADA
#   3. MENYAMPAIKAN KATA YANG HARUS DITEBAK
#   4. PEMAIN MENEBAK
#       a. JIKA JAWABAN SALAH MAKA AKAN DITAMPILKAN PESAN SALAH
#       b. JIKA BENAR MAKA AKAN DITANYAKAN MAU MAIN LAGI ATAU TIDAK
#   5. JIKA SETELAH MENEBAK TETAP SALAH
#       a. MAKA AKAN DITAMPILKAN KEMUNGKINAN JAWABAN
#       b. JIKA BENAR MAKA AKAN DIAPRESIASI
#   6. JIKA MENJAWAB KE TIGA
#       a. JIKA SALAH MAKA AKAN DITAMPILKAN PERMINTAAN MAAF
#       b. JIKA BENAR LANJUT KE SESI SELANJUTNYA
#   7. MENANYAKAN KEMBALI APAKAH PEMAIN MAU MAIN LAGI


#mengimpor fungsi acak pada progam python

import random  

#kata sambutan untuk memperindah tampilan
#menampilkan gambar serta petunjuk pengerjaan
welcome = ['                       ',
  'AAAAAAA  UU   UU  LL     II    MMM   MMM  EEEEE    II TTTTTTTT SSSSSS',
  'AA   AA  UU   UU  LL     II    MM M M MM  EE       II    TT    SS',
  'AAAAAAA  UU   UU  LL     II 00 MM  M  MM  EEEEE 00 II    TT    SSSSSS',
  'AAA AAA  UU   UU  LL     II    MM     MM  EE       II    TT        SS',
  'AA   AA  UUUUUUU  LLLLLL II    MM     MM  EEEEE    II    TT    SSSSSS',
  ' ',
  '                             2 1 1 6 1 0 0 1 2 9     ',
  '                             ___',
  '                            |_3_|',
  '    ________________________|___|',
  '    |_1_|___|_2_|___|___|___|___|___________',
  '    |___|   |___|           |10_|___|___|___|     ',
  '    |___|   |___|_______________________',
  '    |___|   |_3_|___|___|_|___|_4_|___|                        ___',
  '    |___|                       |___|                           |_9_|', 
  '    |___|_______                |___|___________________________|___|',
  '    |_7_|___|_8_|               |_5_|_6_|___|___|___|___|_5_|___|___|',
  ' ___________|___|___                |___|               |___|   |___|',
  '|_2_|10_|___|___|___|               |___|___________    |___|   |___|',   
  '    |___|   |___|                   |_6_|___|___|_7_|   |___|',
  '    |___|_______________                        |___|',
  '    |_9_|___|___|___|___|                    ___|___|___________',   
  '                                            |_4_|___|___|___|_4_|',
  '                                                |___|       |___|',
  '                                                            |___|___________',
  '                                                            |_8_|___|___|___|',
  'Mendatar:1.Nama ke dua rektor ITS 2017  Menurun:1.Raja hutan',
         '         2.Univ Tujuh Belas Agustus             2.bahasa indonesia dari king',
         '         3.Kata lain dari langit                3.Kana terbalik',
         '         4.Hari setelah rabu                    4.Hewan kurban',
         '         5.Nama negara kita                     5.akus dibalik',
         '         6.Manusia mempunyai..dan pikiran       6.panggilan wanita',
         '         7.Ujian Tengah Semester                7.Yang dirasakan saat puasa',
         '         8.Hidup di air                         8.sapi menghasilkan',
         '         9.Manusia dewasa                       9.berasal dari alam', 
         '         10.kabupaten?                         10. super kecil',
         '  ',
         '  ',
               ]

for line in welcome:
print(line, sep='\n')
#Membuat daftar dictionary yang akan digunakan dalam game
words = {'hermana':'Nama ke dua rektor ITS 2017',
         'untag':'Universitas Tujuh Belas Agustus',
         'angkasa':'Kata lain dari langit',
         'kamis':'Hari setelah rabu',
         'indonesia':'Nama negara kita',
         'akal':'Manusia mempunyai..... dan pikiran',
         'uts':'Ujian Tengah Semester',
         'ikan':'Hidup di air',
         'orang':'manusia dewasa',
         'kota':'Kabupaten?',
         'harimau':'Raja hutan',
         'raja':'bahasa indonesia dari king',
         'anak':'Kana terbalik',
         'sapi':'Hewan kurban',
         'suka':'akus dibalik',
         'nona':'panggilan wanita',
         'lapar':'Yang dirasakan saat puasa',
         'susu':'sapi menghasilkan',
         'nano':'super kecil',
         'alami':'berasal dari alam'}


#fungsi tampilan yang akan memberitahukan cara main
def Intro():
    print('SELAMAT DATANG DI TEKA TEKI SILANG OLA-OLE\n')
    print('TEKA TEKI SILANG INI BERHADIAH 5 MILYAR!\n')
    print('COCOK KAN DENGAN PETUNJUK YANG ADA\n')
    print('SELAMAT MENCOBA DAN JANGAN PATAH SEMANGAT')
    print('TENANG SAJA, JIKA KAMU TIDAK BISA MAKA AKAN DIBANTU\n')

#Fungsi pemilihan kata yang akan digunakan dari daftar dictionary, kemudian diacak menjadi junggle
def getWord(word):
    wordKey = random.choice(list(word.keys()))
    return wordKey

#Fungsi definisi kata agar pemain mendapatkan bantuan ketika salah dalam memainkan permainan

#FUNGSI INPUT DATA PERTAMA MASUKAN DARI PEMAIN
def getGuess1():
    guess = input('\nSILAKAN TEBAK KATA APAKAH INI: ')
    while True:
        if guess.isalpha():
            return guess
        else:
            guess = input('\nSILAKAN MASUKKAN KATA APAKAH INI: ')


#FUNGSI BILA PEMAIN SALAH KEMUDIAN MEMASUKKAN DATA INPUT YANG KEDUA             
def getGuess2():
    guess = input('\nMASUKKAN TEBAKAN KEDUAMU: ')
    while True:
        if guess.isalpha():
            return guess
        else:
            guess = input('\nSILAKAN MASUKKAN KATA APAKAH INI: ')

#APABILA KESEMPATAN KEDUA SALAH MAKA MEMASUKKAN DATA KETIGA, DENGAN FUNGSI INPUT
def getGuess3():
    guess = input('\nWOW, KESEMPATAN TERAKHIR! SILAKAN MASUKKAN KATA APAKAH INI: ')
    while True:
        if guess.isalpha():
            return guess
        else:
            guess = input('\nSILAKAN MASUKKAN KATA APAKAH INI: ')

#MENDEFINISIKAN FUNGSI BANTUAN

def cheatCode(yes, werd):
    x = werd[0]
    y = werd[1]
    print(x, end = '')
    print(y)
    return x, y
#==============================PROGAM UTAMA======================================#

#MENGENALKAN FUNGSI VARIABEL Y, DAN LOOPING PADA PERMAINAN.
ans = 'y'
guesses = 0
while ans == 'y':
    Intro()
    w0rd = getWord(words)
    #DEFINISI FUNGSI KATA ACAK
    scramWord = list(w0rd)
    #FUNGSI ACAK KATA
    random.shuffle(scramWord)
    #FUNGSI PENAMPIL KATA PADA TAMPILAN AWAL
    sWord = ''.join(scramWord)

    print('KATA YANG HARUS KAMU TEBAK DALAM TEKA TEKI SILANG ADALAH ' +sWord)

    #APABILA JAWABAN DARI PEMAIN BENAR MAKA AKAN menampilkan
    guessed = getGuess1()
    if guessed == w0rd:
        print('SELAMAT BOSKUU! ANDA MENDAPAT 5 MILYAR RUPIAH!')
        ans = 'y'
    if guessed != w0rd:
        print('MAAF BOS, KATA YANG ANDA MASUKKAN SALAH')

        #TAWARAN FUNGSI PENAMPIL BANTUAN
        guesses = guesses + 1
        cheat = input('MAU MENERIMA SEDIKIT BANTUAN? [y/n] ')
        if cheat == 'y' or cheat == 'Y':
            cheatInput = input('KETIK "HELPME ATAU HELP": ')
            cheatCode(cheatInput, w0rd)


        #JIKA JAWABAN KEDUA BENAR MAKA AKAN DITAMPILKAN
        guessed2 = getGuess2()
        if guessed2 == w0rd:
            print('SELAMAT BOSKUU! ANDA MENDAPAT 5 MILYAR RUPIAH!')
            ans = 'y'
            
        if guessed2 != w0rd:
            print('MAAF BOS, KATA YANG ANDA MASUKKAN SALAH')
            guesses = guesses + 1
            cheat = input('MAAF BOS, KATA YANG ANDA MASUKKAN SALAH, COBA LAGI? ')
            if cheat == 'y' or cheat == 'Y':
                cheatInput = input('KETIK "HELPME ATAU HELP"')
                cheatCode(cheatInput, w0rd)
                    
                #FUNGSI PENAMPIL KATA BANTUAN JIKA JAWABAN KEDUA SALAH
                while guesses == 2:
                    hint = words[w0rd]
                    print('BANTUAN DATANGG ===> '+hint)
                    guesses = guesses + 1
                    
            guessed3 = getGuess3()
            if guessed3 == w0rd:
                print('\nSELAMAT BOSKUU! ANDA MENDAPAT 5 MILYAR RUPIAH\n')
                  
            else:
                if guessed3 != w0rd:
                    print('\nMAAF TEBAKANMU MASIH SALAH, INI YANG BENAR \''+w0rd+'\'\ SEMOGA LAIN KALI BENAR YA BOS')
                    guesses = 0
                            
    #KODE PENAWARAN MAIN LAGI ATAU TIDAK, LOOPING
    print('\nAPAKAH KAMU MAU MAIN LAGI?[y/n]', end = ' ')
    ans = input()
    if ans == 'n' or ans == 'N':
        print('\nSELAMAT TINGGAL, SEMOGA MAIN LAGI')

0 comments:

Post a Comment

SIlahkan berkomentar, mari berdiskusi. Untuk bantuan atau permintaan bisa email kami. Semoga bermanfaat :)