Çözüldü 1 ile 100 arasında bir sayı seçip onu bulmamızı isteyen sayı algoritması nedir?

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.
Katılım
10 Ekim 2020
Mesajlar
4.768
Makaleler
5
Çözümler
45
Yer
İstanbul, Avcılar
Daha fazla  
Sistem Özellikleri
Bilgisayar: Asus GTX 1060 6 GB Dual White GPU, Intel i7 3770s CPU, Gigabyte 240 GB SSD, H61M-K mainboard, Corsair 550W PSU, 500+500 5200+7200 RPM HDD

Ekipmanlarım: Havit GK52 Mikrofon, MS1002 Mouse, Blic T60 Klavye, Fuxi H3 Kulaklık

Telefon: S8 (dreamlte) & Redmi Note 9 (merlinx)
Cinsiyet
Erkek
Meslek
Öğrenci
Başlıktaki gibi. 1 ile 100 arasında bir sayı seçecek bana söylemeden ve onu bulmamı isteyecek. İmkan varsa 20 hak verebilirse süper olur. Ben sadece 1 ile 100 arasında sayı seçip onu söylemesini yapabildim.
 
Çözüm
Mantığını anladım, teşekkürler.

@420645 yanlışlık var hocam, kabul etmiyor.

Bir sürü yanlışlık var hatta, düzeltmeye çalıştım ama olmuyor.
Otomatik yazı denetimi sayesinde koddaki bazı yerler bozulmuş. Düzeltmeden buraya atıyorum. @Jack İşte
Kod:
import random

num = random.randint(1, 100)
guess_count = 0
guess_limit = 20

print("1 ile 100 arasında bir sayı seçildi. Bakalım bulabilecek misin?")

while guess_count < guess_limit:
    guess = int(input("Tahmininiz nedir? "))
    guess_count += 1

    if guess < num:
        print("Daha büyük bir sayı söyleyin.")
    elif guess > num:
        print("Daha küçük bir sayı söyleyin.")
    else:
        print(f"Tebrikler! {num} sayısını {guess_count} tahminde buldunuz.")
        break

if guess_count == guess_limit:
    print(f"Maalesef, {guess_limit} tahmin hakkınız doldu. Sayı {num} idi.")
Başlıktaki gibi. 1 ile 100 arasında bir sayı seçecek bana söylemeden ve onu bulmamı isteyecek. İmkan varsa 20 hak verebilirse süper olur. Ben sadece 1 ile 100 arasında sayı seçip onu söylemesini yapabildim.

Kod:
import random.

num = random.randint(1, 100)
guess_count = 0
guess_limit = 20.

print("1 ile 100 arasında bir sayı seçildi. Bakalım bulabilecek misin?")

while guess_count < guess_limit:
 guess = int(input("Tahmininiz nedir? "))
 guess_count += 1

 if guess < num:
 print("Daha büyük bir sayı söyleyin.")
 elif guess > num:
 print("Daha küçük bir sayı söyleyin.")
 else:
 print(f"Tebrikler! {num} sayısını {guess_count} tahminde buldunuz.")
 break.

if guess_count == guess_limit:
 print(f"Maalesef, {guess_limit} tahmin hakkınız doldu. Sayı {num} idi.")

 
Mantığını anladım, teşekkürler.

@420645 yanlışlık var hocam, kabul etmiyor.

Bir sürü yanlışlık var hatta, düzeltmeye çalıştım ama olmuyor.
 
Son düzenleme:
Mantığını anladım, teşekkürler.

@420645 yanlışlık var hocam, kabul etmiyor.

Bir sürü yanlışlık var hatta, düzeltmeye çalıştım ama olmuyor.
Otomatik yazı denetimi sayesinde koddaki bazı yerler bozulmuş. Düzeltmeden buraya atıyorum. @Jack İşte
Kod:
import random

num = random.randint(1, 100)
guess_count = 0
guess_limit = 20

print("1 ile 100 arasında bir sayı seçildi. Bakalım bulabilecek misin?")

while guess_count < guess_limit:
    guess = int(input("Tahmininiz nedir? "))
    guess_count += 1

    if guess < num:
        print("Daha büyük bir sayı söyleyin.")
    elif guess > num:
        print("Daha küçük bir sayı söyleyin.")
    else:
        print(f"Tebrikler! {num} sayısını {guess_count} tahminde buldunuz.")
        break

if guess_count == guess_limit:
    print(f"Maalesef, {guess_limit} tahmin hakkınız doldu. Sayı {num} idi.")
 
Çözüm
@420645 hocam bitişlere 4 saniye bekle koydum peşinden break outside loop alıyorum. N'apmalıyım?

Kod:
from time import sleep
import random

num = random.randint(1, 100)
tahmin_sayisi = 0
tahmin_limit = 20

print(f"1 ile 100 arasında bir sayı seçildi. {tahmin_limit} tahmin içerisinde sayıyı bul.")

while tahmin_sayisi < tahmin_limit:
    guess = int(input("Tahmininizi girin: "))
    tahmin_sayisi += 1

    if guess < num:
        print("Daha büyük bir sayı söyleyin:")
    elif guess > num:
        print("Daha küçük bir sayı söyleyin:")
    else:
        print(f"{num} sayısını {tahmin_sayisi} tahminde buldunuz.")
        sleep(4)

if tahmin_sayisi == tahmin_limit:
    print(f"Tahmin hakkınız doldu. Sayı {num} idi.")
    sleep(4)

Sonda break kullanmayınca sorun olmuyormuş.
 
Son düzenleme:
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…