import random
bildi=False
tahmin=0
a=0
while a==0 :
tut1 = str(random.randint(1000,9999))
if tut1[0] != tut1[1] and tut1[0] != tut1[2] and tut1[0] != tut1[3] and tut1[1] != tut1[2] and tut1[1] != tut1[3] and tut1[2] != tut1[3] :
a=1
while (bildi==False):
sayi = input("4 basamaklı bir sayı giriniz =" )
tahmin+=1
if (int(sayi)>1000 and int(sayi)<9999):
a=0
if sayi[0] != sayi[1] and sayi[0] != sayi[2] and sayi[0] != sayi[3] and sayi[1] != sayi[2] and sayi[1] != sayi[3] and sayi[2] != sayi[3] :
a=1
else:
tahmin-=1
print ("rakamları farklı giriniz")
while (a==1):
ayni = 0
fark = 0
if sayi[0] == tut1[0] :
ayni +=1
if sayi[1] == tut1[1] :
ayni +=1
if sayi[2] == tut1[2] :
ayni +=1
if sayi[3] == tut1[3] :
ayni +=1
if sayi[0] == tut1[1] or sayi[0] == tut1[2] or sayi[0] == tut1[3] :
fark -=1
if sayi[1] == tut1[0] or sayi[1] == tut1[2] or sayi[1] == tut1[3] :
fark -=1
if sayi[2] == tut1[0] or sayi[2] ==tut1[1] or sayi[2] ==tut1[3] :
fark -=1
if sayi[3] == tut1[0] or sayi[3] == tut1[1] or sayi[3] == tut1[2] :
fark -=1
print(fark)
print(ayni)
a=0
else:
tahmin-=1
print(" dört basamaklı giriniz")
if (ayni==4):
bildi=True
print("su kadar tahminde bildiniz",tahmin)
Arkadaşlar merhaba. Bir tane proje yapmam lazım karşılığında oyun kolu kazanacağım. Python'da bizim tuttuğumuz 4 basamaklı sayıyı sora sora tahmin edecek kod lazım. Yazdığım bu kodun tam tersi olacak.
Örnek: Diyelim ki tuttuğum sayı 1375 olsun.
Bilgisayar 1000 ile 9999 arasından rastgele bir sayı söyleyecek . Söylediği sayı 1475 olsun. Ben tuttuğum sayıya bakıyorum ve 1'lerin aynı yerde olduğunu görüyorum ve +1 yazıyorum. Sonrasında 7 ve 5'e bakıyorum. tuttuğum sayıda da bilgisayarın söylediği sayıda da var ama aynı yerlerinde değiller. O yüzden -2 diyorum. Bilgisayarda bunları aklında tutup sırasıyla rakamları eleyerek ve doğru yere koyarak tuttuğum sayıyı buluyor. Kodu nasıl yazabilirim. Teşekkürler.
import random
bildi=False
tahmin=0
a=0
while a==0 :
tut1 = str(random.randint(1000,9999))
if tut1[0] != tut1[1] and tut1[0] != tut1[2] and tut1[0] != tut1[3] and tut1[1] != tut1[2] and tut1[1] != tut1[3] and tut1[2] != tut1[3] :
a=1
while (bildi==False):
sayi = input("4 basamaklı bir sayı giriniz =" )
tahmin+=1
if (int(sayi)>1000 and int(sayi)<9999):
a=0
if sayi[0] != sayi[1] and sayi[0] != sayi[2] and sayi[0] != sayi[3] and sayi[1] != sayi[2] and sayi[1] != sayi[3] and sayi[2] != sayi[3] :
a=1
else:
tahmin-=1
print ("rakamları farklı giriniz")
while (a==1):
ayni = 0
fark = 0
if sayi[0] == tut1[0] :
ayni +=1
if sayi[1] == tut1[1] :
ayni +=1
if sayi[2] == tut1[2] :
ayni +=1
if sayi[3] == tut1[3] :
ayni +=1
if sayi[0] == tut1[1] or sayi[0] == tut1[2] or sayi[0] == tut1[3] :
fark -=1
if sayi[1] == tut1[0] or sayi[1] == tut1[2] or sayi[1] == tut1[3] :
fark -=1
if sayi[2] == tut1[0] or sayi[2] ==tut1[1] or sayi[2] ==tut1[3] :
fark -=1
if sayi[3] == tut1[0] or sayi[3] == tut1[1] or sayi[3] == tut1[2] :
fark -=1
print(fark)
print(ayni)
a=0
else:
tahmin-=1
print(" dört basamaklı giriniz")
if (ayni==4):
bildi=True
print("su kadar tahminde bildiniz",tahmin)
Yanlış anlaşılmışım amacım kar kazanmak değil kendi kendime kod yazıyorum arkadaşlarımla iddiaya girdik o yüzden istemiştim. Gene de teşekkürler. Tam olarak nasıl ilerleyeceğimi söyleseniz de olurdu.
import random
bildi=False
tahmin=0
a=0
while a==0 :
tut1 = str(random.randint(1000,9999))
if tut1[0] != tut1[1] and tut1[0] != tut1[2] and tut1[0] != tut1[3] and tut1[1] != tut1[2] and tut1[1] != tut1[3] and tut1[2] != tut1[3] :
a=1
while (bildi==False):
sayi = input("4 basamaklı bir sayı giriniz =" )
tahmin+=1
if (int(sayi)>1000 and int(sayi)<9999):
a=0
if sayi[0] != sayi[1] and sayi[0] != sayi[2] and sayi[0] != sayi[3] and sayi[1] != sayi[2] and sayi[1] != sayi[3] and sayi[2] != sayi[3] :
a=1
else:
tahmin-=1
print ("rakamları farklı giriniz")
while (a==1):
ayni = 0
fark = 0
if sayi[0] == tut1[0] :
ayni +=1
if sayi[1] == tut1[1] :
ayni +=1
if sayi[2] == tut1[2] :
ayni +=1
if sayi[3] == tut1[3] :
ayni +=1
if sayi[0] == tut1[1] or sayi[0] == tut1[2] or sayi[0] == tut1[3] :
fark -=1
if sayi[1] == tut1[0] or sayi[1] == tut1[2] or sayi[1] == tut1[3] :
fark -=1
if sayi[2] == tut1[0] or sayi[2] ==tut1[1] or sayi[2] ==tut1[3] :
fark -=1
if sayi[3] == tut1[0] or sayi[3] == tut1[1] or sayi[3] == tut1[2] :
fark -=1
print(fark)
print(ayni)
a=0
else:
tahmin-=1
print(" dört basamaklı giriniz")
if (ayni==4):
bildi=True
print("su kadar tahminde bildiniz",tahmin)
Arkadaşlar merhaba. Bir tane proje yapmam lazım karşılığında oyun kolu kazanacağım. Python'da bizim tuttuğumuz 4 basamaklı sayıyı sora sora tahmin edecek kod lazım. Yazdığım bu kodun tam tersi olacak.
Örnek: Diyelim ki tuttuğum sayı 1375 olsun.
Bilgisayar 1000 ile 9999 arasından rastgele bir sayı söyleyecek . Söylediği sayı 1475 olsun. Ben tuttuğum sayıya bakıyorum ve 1'lerin aynı yerde olduğunu görüyorum ve +1 yazıyorum. Sonrasında 7 ve 5'e bakıyorum. tuttuğum sayıda da bilgisayarın söylediği sayıda da var ama aynı yerlerinde değiller. O yüzden -2 diyorum. Bilgisayarda bunları aklında tutup sırasıyla rakamları eleyerek ve doğru yere koyarak tuttuğum sayıyı buluyor. Kodu nasıl yazabilirim. Teşekkürler.
Çok zor gibi durmuyor. İyi bir phyton bilgim yok lakin yapabilirsin diye düşünüyorum. Yapacağımız şeyleri söylemişsin bunu koda dökmek çok zor birşey değil. Eğer bunu dönüştüremiyorsan ödülü hak edememişsin zaten.