Rastgele sayı üretme uygulamalarında en sık başvurulan örnekler genellikle zar atma örnekleridir. Sitede de daha önce çeşitli programlama dilleri ile rastgele zar atma örnekleri paylaşılmış.
bkz: C# ile rastgele zar atma uygulaması
bkz: PHP ile zar atma uygulaması ve örnekleri
bkz: JavaScript ile rasgele zar atmak
bkz: Java'da Zar Atma Simülasyonları ile Olasılık Hesabı Yapmak
Bugün ben de python programlama dili ile rastgele sayı üretme uygulamaları çerçevesinde zar atme örnekleri paylaşmak ve son örnekte de biraz daha görsel bir uygulama paylaşmak istedim.
Örnek 1: 1 ile 6 arasında rastgele bir sayı üreten bir python uygulaması yazalım.
import random
zar = random.randint(1,6)
print(zar)
Örnek 2: 10 adet zar atan bir python uygulaması yazalım.
import random
for sayi in range(10):
zar = random.randint(1,6)
print(zar)
Örnek 3: Zarları, zar üzerindeki şekilleri gibi tasarlayarak konsolda yazdıralım
import random
def zarGorsellestir(zar):
zar1 = """------------------
| |
| |
| 0 |
| |
| |
------------------"""
zar2 = """------------------
| |
| 0 |
| |
| 0 |
| |
------------------"""
zar3 = """------------------
| 0 |
| |
| 0 |
| |
| 0 |
------------------"""
zar4 = """------------------
| 0 0 |
| |
| |
| |
| 0 0 |
------------------"""
zar5 = """------------------
| 0 0 |
| |
| 0 |
| |
| 0 0 |
------------------"""
zar6 = """------------------
| 0 0 |
| |
| 0 0 |
| |
| 0 0 |
------------------"""
print(zar1)
print(zar2)
print(zar3)
print(zar4)
print(zar5)
print(zar6)
for sayi in range(10):
zar = random.randint(1,6)
zarGorsellestir(zar)
Çıktı:
------------------
| |
| |
| 0 |
| |
| |
------------------
------------------
| |
| 0 |
| |
| 0 |
| |
------------------
------------------
| 0 |
| |
| 0 |
| |
| 0 |
------------------
------------------
| 0 0 |
| |
| |
| |
| 0 0 |
------------------
------------------
| 0 0 |
| |
| 0 |
| |
| 0 0 |
------------------
------------------
| 0 0 |
| |
| 0 0 |
| |
| 0 0 |
------------------
Örnek 4: Rastgele bir zar değeri üreten ve bunu üstteki örnekteki gibi görselleştiren bir uygulama yapalım.
import random
def zarGorsellestir(zar):
zar1 = """------------------
| |
| |
| 0 |
| |
| |
------------------"""
zar2 = """------------------
| |
| 0 |
| |
| 0 |
| |
------------------"""
zar3 = """------------------
| 0 |
| |
| 0 |
| |
| 0 |
------------------"""
zar4 = """------------------
| 0 0 |
| |
| |
| |
| 0 0 |
------------------"""
zar5 = """------------------
| 0 0 |
| |
| 0 |
| |
| 0 0 |
------------------"""
zar6 = """------------------
| 0 0 |
| |
| 0 0 |
| |
| 0 0 |
------------------"""
if zar == 1:
print(zar1)
elif zar == 2:
print(zar2)
elif zar == 3:
print(zar3)
elif zar == 4:
print(zar4)
elif zar == 5:
print(zar5)
else :
print(zar6)
zar = random.randint(1,6)
print('gelen zar:' + str(zar))
zarGorsellestir(zar)
Çıktı:
gelen zar:5
------------------
| 0 0 |
| |
| 0 |
| |
| 0 0 |
------------------
Örnek 5: 10 adet zar atan ve her bir zarı görsel olarak yazdıran bir python uygulaması yazalım.
import random
def zarGorsellestir(zar):
zar1 = """------------------
| |
| |
| 0 |
| |
| |
------------------"""
zar2 = """------------------
| |
| 0 |
| |
| 0 |
| |
------------------"""
zar3 = """------------------
| 0 |
| |
| 0 |
| |
| 0 |
------------------"""
zar4 = """------------------
| 0 0 |
| |
| |
| |
| 0 0 |
------------------"""
zar5 = """------------------
| 0 0 |
| |
| 0 |
| |
| 0 0 |
------------------"""
zar6 = """------------------
| 0 0 |
| |
| 0 0 |
| |
| 0 0 |
------------------"""
if zar == 1:
print(zar1)
elif zar == 2:
print(zar2)
elif zar == 3:
print(zar3)
elif zar == 4:
print(zar4)
elif zar == 5:
print(zar5)
else :
print(zar6)
for sayi in range(10):
zar = random.randint(1,6)
print(str(sayi + 1) + '.zar: ' + str(zar))
zarGorsellestir(zar)
Çıktı:
1.zar: 3
------------------
| 0 |
| |
| 0 |
| |
| 0 |
------------------
2.zar: 1
------------------
| |
| |
| 0 |
| |
| |
------------------
3.zar: 3
------------------
| 0 |
| |
| 0 |
| |
| 0 |
------------------
4.zar: 1
------------------
| |
| |
| 0 |
| |
| |
------------------
5.zar: 1
------------------
| |
| |
| 0 |
| |
| |
------------------
6.zar: 5
------------------
| 0 0 |
| |
| 0 |
| |
| 0 0 |
------------------
7.zar: 6
------------------
| 0 0 |
| |
| 0 0 |
| |
| 0 0 |
------------------
8.zar: 6
------------------
| 0 0 |
| |
| 0 0 |
| |
| 0 0 |
------------------
9.zar: 1
------------------
| |
| |
| 0 |
| |
| |
------------------
10.zar: 5
------------------
| 0 0 |
| |
| 0 |
| |
| 0 0 |
------------------
Editör editi: sitedeki bazı diğer benzer başlıklar için;
bkz: Python ile Rastgele Sayı Üretmek
bkz: Python ile İki Sayı Arasında Rastgele Sayı Üretmek
bkz: Python'da rasgele tek basamaklı sayı üretmek