Programlama soru çözümü

Muhteşemsiniz, gayet de iyi anlattınız. Tam da birkaç gün önce Binary Search nedir diye araştırmıştım ve deneyim edinmiştim. Şimdi tekrar bir göz atıyorum, çok hoş oldu bu. Sağ olun, var olun.

Çok güzel anlattınız ama ben zorlandım, bilgim yetmedi. Mantığı kavradım ama kodu yazamadım. İleride tekrar bir göz atayım, geliştiğimi hissedince. Ama mantığı kavradığımı çok iyi hissettim, biraz daha Binary Search araştırıp tekrar bir göz atabilirim.
 
Mobilde olduğum için çok detaylı yazamıyorum. Fakat cevap söylenmiş; binary search. Sorudan bağımsız olarak açıklamaya çalışayım.

Bir arkadaşınızla aklından tuttuğun sayıyı bilme oyunu oynuyorsunuz. 1 ve 1000 arasında herhangi bir değer olduğunu düşünelim. Tahmine göre yukarı veya aşağı cevabı verilecek olsun. Normal tahmin yoluyla en iyi ihtimalle ilk denemede bulunur, en kötü ihtimalle 1000 denemede bulunur. Binary search yapılırsa en iyi ihtimal 1 deneme, en kötü ihtimal ise 10 deneme olacaktır. Alt limit A olsun, üst limit B olsun. Örnek senaryo;

Tutulan sayı : 347
Tahmin 1 : 500 (aşağı) A = 1 ve B = 1000
Tahmin 2 : 250 (yukarı) A = 1 ve B = 500
Tahmin 3 : 375 (aşağı) A = 250 ve B = 500
Tahmin 4 : 313 (yukarı) A = 250 ve B = 375
Tahmin 5 : 344 (yukarı) A = 313 ve B = 375
Tahmin 6 : 347 DUR A = 344 ve B = 350

Temel mantık bu şekilde. Her tahminde alt ve üst limit tahminine göre değişmiş oluyor. Ortadaki değeri tahmin edeceksin. O değer de bir sonraki tahminin alt veya üst limiti oluyor.
 
Python:
netMaas = float(input(f"Lütfen Net Maaş Değeri Girin: "))
brutMaasTahmin = float(input(f"Lütfen Tahmini Brüt Maaş Değeri Girin: "))

def netMaasHesaplama(brutMaasTahmin):

    if brutMaasTahmin > netMaas:
        kesintilimaas = int(brutMaasTahmin - (brutMaasTahmin * 0.1 + brutMaasTahmin * 0.2))
        
        if kesintilimaas > netMaas:
            brutMaasTahmin = float(input(f"Girdiğiniz Brüt Maaşın ({brutMaasTahmin}) Net Maaş Değeri: {kesintilimaas} Lütfen {brutMaasTahmin}'den daha küçük bir değer girin!: "))
            netMaasHesaplama(brutMaasTahmin)
            
        elif kesintilimaas < netMaas:
            brutMaasTahmin = float(input(f"Girdiğiniz Brüt Maaşın ({brutMaasTahmin}) Net Maaş Değeri: {kesintilimaas} Lütfen {brutMaasTahmin}'den daha büyük bir değer girin!: "))
            netMaasHesaplama(brutMaasTahmin)

        else:
            print(f"Girdiğiniz Brüt Maaş Değeri: {brutMaasTahmin} Net Maaş Değeri ise {kesintilimaas} tahmininiz doğru!!!")
            return brutMaasTahmin

    else:
        brutMaasTahmin = float(input(f"Lütfen {brutMaasTahmin}'den Daha Büyük Bir Değer Girin!: "))
        netMaasHesaplama(brutMaasTahmin)




print(netMaasHesaplama(brutMaasTahmin))
Ne olduğunu tam olarak ben de kavrayamadım ama bu şekilde bir çözümü olabilir diye düşünüyorum.
 
Dostlar, mantık tamamdır bende ama kodun yazımında zorlandım.
@329088 Teşekkürler efendim.
@trombonist76 Mantık bunun gibi efendim, ama biraz daha farklı kod yazmak lazım galiba, teşekkür ederim.
 
Öğretiyorlar ama yetersiz kendin çalışmalısın. Şimdiden öğrenmeye başlarsan da üniversitede afallamadan programlama derslerinde kendini pekiştirirsin. Elbetteki derslerine asılman daha önemli olduğunu da unutma
 
Saolun hocam derslerimi hallettikten sonra yazin iyice odaklanirim yazilima suan derslerden vaktim olmuyor pek ve pratik yapamiyorum elimde pc olmadigi icin.
 
Hocaların kesinlikle yanılıyor. Bilgisayar mühendisliği düşünüyorsan diplomadan çok programlama bilgin öne çıkarıcak seni özellikle yurt dışı düşünüyorsan
 
Hocaların kesinlikle yanılıyor. Bilgisayar mühendisliği düşünüyorsan diplomadan çok programlama bilgin öne çıkaracak seni, özellikle yurt dışı düşünüyorsan.
Ben buna katılmıyorum, bence iyi bir üniversite kazanan insan iyi bir yazılım bilgisini de kapar. Sonuçta iyi hocalardan yazılım dersini herkes almıyor. Bu çok öne geçiren bir şey. Tabii bu benim düşüncem.
 
Microsoft gibi büyük firmalar diplomaya aşırı önem vermiyor.
 
Microsoft gibi büyük firmalar diplomaya aşırı önem vermiyor.
Herkes Microsoft üzerinde çalışacak diye bir şey yok, ülkende de kendini geliştirmeden bir yere gelemezsin. Sonuçta Microsoft gibi yerlere gelmeye çalışan çok insan var. Herkes giremez, bu süreçte işsiz kalmasını istemeyiz. Bu durumda biraz daha alçaktan bakmak ve olumsuz sonuçları da göze almak gerek bence. Güzel bir üniversite mezunu insan çoğu zaman bir adım öndedir gözümde. Genel olarak da bir proje girişimi değil de devamlı bir iş için diploma önemlidir. Ne kadar doğrudur bilemem.
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…