Python Eğitimleri : Örnek Problem Çözümleri 2

Herkese Merhabaa,

If – else yapısını öğrendiğimize göre örnekler yapıp konuyu daha iyi anlayabiliriz.

İlk olarak basit bir örnekle başlayalım.

Kullanıcıdan bir sayı alalım ve bu sayının tek mi çift mi olduğunu ekrana yazdıralım.

Burada input komutu yardımıyla kullanıcıdan sayı girmesini istedik. Bunu isterken integer veri tipine dönüştürdük çünkü tek mi çift mi olduğunu bulurken integer veri tipinde olması gerekiyor. Eğer sayı çift ise 2 ile tam bölünmesi gerekiyor koşuluna göre sayının tek mi çift mi olduğunu ekrana yazdırdık.
Sonucumuz:

Bu örneğimizde ufak bir manav alışverişi yapalım. Manavda bulunan meyve listesine göre kullanıcıya meyve girmesini isteyelim ve isteğine göre satışı gerçekleştirelim.

Burada manavda bulunan meyveleri ilk başta sıraladık. Sonrasında kullanıcıdan istediği meyveyi girmesini input ile aldık. Koşulumuzu gireceği meyveye göre yaptık. Büyük küçük harf sorununa takılmaması için or kullanarak her iki durumu da programımıza tanıttık. Örneğin kiraz isteyelim ve çıktımıza bakalım:

Programımızı bir de meyve listemizde bulunmayan bir ifade girerek çalıştıralım:

 

Bu konuyla ilgili son bir örnek yapalım fakat biraz daha komplike bir örnek olsun.
(*Kodlarımı yazarken genelde İngilizce terimler kullanarak yazmaya çalışıyorum çünkü bazı programlama dilleri Türkçe karakterler kabul etmiyor.*)

Bu örneğimizde kullanıcı için bir hesap açmasını isteyeceğiz (Blog sitesi) ve sonrasında bu hesabına giriş yapmasını isteyeceğiz.

Burada önce print ile ufak bir açıklama yaptık. Sonrasında hesap kurulumu için gerekli olan kullanıcı adı ve parola belirlemesini istedik. Print ile birkaç açıklama yaptıktan sonra hesaba giriş kısmını yazdık. Burada ilk defa while True ifadesini görüyoruz. Bu ifade ile kodlarımız tekrar tekrar çalışacak ta ki break gibi çıkış komutu görene kadar.

Daha ayrıntılı açıklamak gerekirse; bu örnekte hesaba giriş yaparken kullanıcı adı ve parola girmesini istedik ve eğer kullanıcı doğru girmezse while True sayesinde programımız bitmeyecek ve kodları başa alıp bize tekrardan kullanıcı adı ve parola soracak. Biz bilgileri doğru girdiğimiz takdirde hesaba giriş yapılacak ve sondaki break komutu sayesinde programımız sonu erecek.

if koşulunda yazan ifadeyi açıklayalım: username != def_username and password != def_password

Burada ilk başta hesap oluştururken aldığımız kullanıcı adı ile hesap kurulumu sonrasında giriş kısmında yazılan kullanıcı adını karşılaştırıyoruz. Aynı şekilde bunlar parola içinde geçerli. != ifadesi eşit değilse anlamındadır. Yani yazdığımız bu koşul kullanıcı adları ve parolalar eşit değilse anlamına gelir. Diğer devam eden koşullarda bu şekilde yazılmıştır. Sırasıyla hesaba giriş yaparak çıktımızı görelim.

Burada hesaba doğru giriş yaptık.

Şimdi kullanıcı adımızı yanlış girip deneyelim.

Burada fark ederseniz kullanıcı adını yanlış girdik ve bize ‘Bilgileriniz yanlış. Lütfen tekrar deneyin’ uyarısını verdi. Sonrasında program bitmedi ve hesaba giriş kısmına geri dönüp bizden tekrardan bilgilerimizi girmemizi istedi. İşte while True bize bunu yapmamıza imkan veriyor. Şimdi tekrardan kodun devamında bilgilerimizi doğru girelim ve sisteme giriş yapalım.

Gördüğünüz gibi ikinci denememizde giriş yaptık. 

İsterseniz bu örneğe kullanıcı için giriş hakkı tanımlayıp 3. kez yanlış girişten sonra hesabı bloke edecek şekilde örneği geliştirebilirsiniz. Ne kadar çok alıştırma o kadar iyi kavrama olanağı sağlar. Sorunuz olursa mutlaka sorun, bir sonra ki yazımda görüşmek üzere, hoşça kalın.