Text-based bi uygulama yapmaya çalışıyorum. Mantık şu şekilde olacak ekrana bir soru gelecek, eğer kullanıcı doğru cevabı verirse ikinci soruya geçilecek. Doğru cevap harici başka bir şey girilirse ilk soru tekrarlanacak. Bu şekilde peş peşe baya bir soru olacak. Python öğrenmeye başlayalı iki gün oluyor, döngüleri daha öğrenmedim, fonksiyonları tam bilmiyorum fakat mantık yürüterek şöyle bir kod çıkardım
def soru1(): print "BURADA SORU 1 YER ALIYOR"
cevap1 = raw_input("> ")
if "DOGRU CEVAP" in cevap1: soru2() else: print "YANLIS CEVAP, BURADA SORU 1 YER ALACAK"
def soru2(): print "SORU 2 YER ALACAK"
cevap2 = raw_input("> ")
if "DOGRU CEVAP" in cevap2: soru3() else: print "YANLIS CEVAP, SORU 2 BURDA YER ALACAK"
Çünkü yanlış cevap girince program sona eriyor. Tekrar aynı soruyu sordurman lazım. While döngüne alıp koşul koyarsın. Koşul sağlayınca programdan çıkar. Bir de her soru için ayrı fonksiyon yazmana gerek yok. Soru cevapları JSON dosyasına kayıt edip sıra ile çağırabilirsin.
quote:
Orijinalden alıntı: Start Again
Çünkü yanlış cevap girince program sona eriyor. Tekrar aynı soruyu sordurman lazım. While döngüne alıp koşul koyarsın. Koşul sağlayınca programdan çıkar. Bir de her soru için ayrı fonksiyon yazmana gerek yok. Soru cevapları JSON dosyasına kayıt edip sıra ile çağırabilirsin.
Json bilmediğim için böyle bie yol tercih ettim. Döngülere çalışayım o zaman
Jeg Elsker Norge
kullanıcısına yanıt
List de kullanabilirsin. İki farklı list oluşturup aynı indekslere soru ve cevabı yerleştirebilirsin.
Sormak istediğin veya anlamadığın bir yer varsa sorabilirsin kardeşim.
soru = [ "Bu program hangi dille yazıldı ?", ## Soru - 1 Cevap : Python "Nasılsın ?", ## Soru - 2 Cevap : İyiyim "Boşluğu tamamla : Donanım _____"] ## Soru - 3 Cevap : Haber
if kullanıcı_cevabı == cevap[soru.index(soru[i])] : if i+1==len(soru): kontrol="" while kontrol!=False: kontrol = input("\nSorularımız bitti.Programdan çıkmak için 0 baştan başlamak için 1 yazınız : ") if kontrol=="0": exit(0) elif kontrol=="1": i=0 kontrol=False else : kontrol=False else : print("Cevap Doğru.Bir sonraki soruya geçmeye hak kazandınız.") i+=1
else : print("Cevap Yanlış.Soruya tekrar dönelim.")