Python kodu ile rastgele soru nasıl sorulur?

William Crusader

Hectopat
Katılım
11 Kasım 2020
Mesajlar
5.359
Makaleler
1
Çözümler
15
Daha fazla  
Cinsiyet
Erkek
Meslek
Yok
Kodun bir kısmında kod kullanıcıya bir soru soruyor. Bu sorunun rastgele fakat cevabının aynı olmasını nasıl sağlarım? Yani mesela bazen 2+7, bazen 4+5 sormasını istiyorum ama cevap hep aynı kalsın.
 
Kodun bir kısmında kod kullanıcıya bir soru soruyor. Bu sorunun rastgele fakat cevabının aynı olmasını nasıl sağlarım? Yani mesela bazen 2+7, bazen 4+5 sormasını istiyorum ama cevap hep aynı kalsın.
Sadece matematik işleminde mi? Yoksa mesela;

"Oyun oynamayı sever misiniz?" - Evet.

Gibi sorular mı?
 
Rastgele 1 sayı üretip bu sayıyı ürettikten sonra for döngüsü içinde kullanıcıdan input alırken başka bir rastgele sayı üretip for dışında üretilen sayıdan çıkartarak sağlayabilirsin.
 
Sadece toplama işlemiyle devam edeceksen:
Burada bilmen gereken 2 şey var.

1) Random modülü ve gerekli fonksiyonları
2) Yazdırırken ekrana bastırılan format işlemi ve if else bloğunun doğru dizayn edilmesi


En basit haliyle taslak şu halde olacaktır:
Gerekli düzenlemeler ve eklemeleri bu kod üzerinden yapabilirsin.
Kod:
import random #Random modülünü compilere ekledik
sayi1= random.randrange(1,10) #1-10 ile arasında rastgele sayı olusturduk (Aralıkları siz değiştirebilirsiniz)
sayi2=random.randrange(1,10)

cevap= int(input("{} + {} kaç eder?".format(sayi1,sayi2)))
if cevap == sayi1+sayi2:
    print("Doğru cevap")
else:
    print("Yanlış cevap")
 
Son düzenleme:
Kodu ben böyle yaptım.
Python:
import random
list = ['1+8','2+7','3+6','4+5','5+4','6+3','7+2','8+1']
Soru = random.choice(list)
print (Soru)
print ("\nSorunun cevabı nedir?")
answer1 = int(input("Cevap: "))
if answer1 == 9: 
    print ("\nDoğru cevap " +str(name)+", tebrikler! 50 puan kazandınız. Artık diğer soruya geçebiliriz.\n")
    time.sleep (0.6)
    Points = Points + 50
else:
    print ("\nYanlış cevap, hadi diğer soruya geçelim.\n")
    time.sleep (0.6)
 
Önce 1-100(aralığı sen belirlersin ben örnek olsun diye yazdım) arası random bir sayı üret(X diyelim).
Daha sonra istediğin cevaptan(Z diyelim) bu sayıyı çıkart(sonuca Y diyelim).
Çıkan sonuç + random ürettiğin sayıyı kullanıcıya sor.
Yani X+Y =? Diyeceksin, cevap daima Z çıkacaktır.

Yani şöyle düşün cevap olarak hep 150(bu Z) çıksın istiyorsun,
1-100 arası random 79(bu X) üretti diyelim,
150-79 = 71 (bu Y)
Program kullanıcıya 79+71 =? Diye soracak ve cevap hep 150 olacak.
 
Sadece toplama işlemiyle devam edeceksen:
Burada bilmen gereken 2 şey var.

1) Random modülü ve gerekli fonksiyonları
2) Yazdırırken ekrana bastırılan format işlemi ve if else bloğunun doğru dizayn edilmesi


En basit haliyle taslak şu halde olacaktır:
Gerekli düzenlemeler ve eklemeleri bu kod üzerinden yapabilirsin.
Kod:
import random #Random modülünü compilere ekledik
sayi1= random.randrange(1,10) #1-10 ile arasında rastgele sayı olusturduk (Aralıkları siz değiştirebilirsiniz)
sayi2=random.randrange(1,10)

cevap= int(input("{} + {} kaç eder?".format(sayi1,sayi2)))
if cevap == sayi1+sayi2:
    print("Doğru cevap")
else:
    print("Yanlış cevap")
Hocam discord kullanıyor musunuz? Size oradan kodlarımı iletebilirim.
 

Geri
Yukarı