Aturan permainan:
1. Tujuan permainan adalah mencapai kotak terakhir secepat-cepatnya. Pemain yang pertama mencapai
tepat kotak terakhir (kotak ke-100) dinyatakan sebagai pemenang
2. Permainan dilakukan dengan melempar dadu dan melangkah kotak demi kotak sesuai dengan angka
yang muncul pada dadu
3. Pemain yang akan mencapai kotak 100, namun mendapatkan dadu dengan nilai lebih dari 100, harus
berjalan mundur sebanyak angka kelebihannya
Misalkan posisi pemain saat ini 98, melakukan lemparan dan mendapat dadu angka 5, maka dia harus
jalan maju 2 langkah ke posisi 100 dan mundur 3 langkah, sehingga posisi pemain berada di kotak 97
4. Pertama kali masing-masing pemain harus melempar dadu untuk menentukan urutan pemain, pemain
dengan nilai dadu terbesar boleh jalan lebih dahulu
5. Apabila pemain berhenti di ujung Tangga, maka pemain boleh menaiki tangga
6. Apabila pemain berhenti di kepala Ular, maka pemain harus turun sampai ujung ekor ular
7. Pemain yang mendapat dadu angka 6, mendapatkan giliran jalan lagi
Ketentuan Program:
1. Board Ular Tangga terdiri dari 100 petak, bisa digunakan array untuk menandai nomor-nomor petak
2. Pemain terdiri dari 2 orang
3. Lemparan dadu bisa menggunakan math random
4. Posisi Tangga dan Ular ditentukan sebagai berikut:
Tangga={(3,21), (8,30), (28, 84), (58,77), (75,86), (80,100), (90,91)}
Ular={(17,12), (52,29), (57,40), (62,22), (88,18), (95,51), (97,79)}
Pasangan nilai tersebut menunjukkan posisi kotak pemain dan kotak akhir yang dituju, misalkan: Tangga
(3,21) artinya posisi pemain di kotak 3, naik ke posisi kotak 21
5. Program menghasilkan output: Pemain yang menang dan posisi pemain tiap langkah
Misal: Time 0
Pemain 1 posisi = 0
Pemain 2 posisi = 0
Time 1
Dadu = 3
Pemain 1 posisi = 3
Pemain 2 posisi = 0
Time 2
Di Sini saya menggunakan Bahasa Phyton untuk menyelesaikan soal tersebut berikut adalah Source
code nya :
import random
#Untuk memasukan nama pemain
nama1 =str(input('Siapa nama = '))
nama2 = str (input ('Siapa nama = '))
#Pengundian untuk meenentukan siapa terlebih dahulu
print ("Di undi dulu ")
undi1 = random.randint(1,6)
print ("Hasil undi player ke 1 =",undi1)
undi2 = random.randint(1,6)
print ("Hasil undi player ke 2 =",undi2)
if undi1>undi2:
player1 = nama1
player2 = nama2
else:
player1 = nama2
player2 = nama1
print("")
print ("Times = 0")
print("Angka dadu = 0")
print (player1,"Kamu ada di 0")
print("")
print("Angka Dadu = 0")
print(player2,"Kamu ada di 0")
menang = False
posisi = 0
posisiB = 0
i =0
#While ini akan terus berjalan jika kondisi nya = False
#Di sini akan menampilkan dimana poisis para player berada
while menang == False:
print ("==================")
i += 1
print ("Times =",i)
posisi = angkaadadu(posisi)
print(player1,"Kamu ada di ",posisi)
print("-------------")
if posisi<100:
menang = False
posisiB =angkaadadu(posisiB)
print(player2,"Kamu ada di",posisiB)
#Syarat masuk finish Player 2
if posisiB>100:
posisiB = 100-(posisiB-100)
if posisiB<100:
menang = False
if posisiB==100:
menang = True
print(player2,"Selamat Kamu menang")
#Syarat Player 1 untuk finish
if posisi>100:
posisi = 100-(posisi-100)
if posisi==100:
menang = True
print(player1,"Selamat Kamu menang")
di sini saya mnecoba untuk mengerjakan tidak menggunakan array dan berikut adalah output dari
program yang telah saya buat
nanti jika player 1 maupun player 2 terkena ular atau mendapatkan tangga ada notifikasi bahwa
berupa : jika mendaat tangga “Ada tangga” jika mendapat ular “Ada ular”
untuk ketentuan ketentuan pada soal sudah saya cantumkan pada comment di source code milik saya
Berikut hasil akhir Dapat di tampilkan siapa pemenang dalam program ular tangga :