Bilgisayar Programlamasına ve Veri Analizine Giriş

Slides:



Advertisements
Benzer bir sunumlar
Yinelemeli Algoritma Analizi & Asimptotik Notasyon
Advertisements

FIRAT ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ
JavaScript Birinci Hafta.
Kontrol İfadeleri : 2.Kısım
DÖNGÜLER For While Do While.
DÖNGÜ “Şart sağlandığı sürece” içerisindeki komut satırlarını, artış değeri adedince tekrarlayan kodlardır.
Bölüm 4 – Kontrol İfadeleri:1.kısım
Bölüm 5 – Kontrol İfadeleri : 2.Kısım
Bölüm 2: Program Denetimi
MATLAB’İN SAYI YUVARLAMA FONKSİYONLARI
SQL de Değişken Tanımlama
Karar ifadeleri ve Döngüler
DÖNGÜ İFADELERİ.
Yapısal Program Geliştirme – if, if-else
OPERATÖRLER.
Soru1: Kullanıcıdan iki tam sayı girmesini isteyen ve daha sonra büyük olan sayı ile beraber ‘en büyüktür’ ifadesi yazan, ancak sayılar birbirine eşitse.
While Döngüsü Tekrarlama deyimidir. Bir küme ya da deyim while kullanılarak bir çok kez yinelenebilir. Yinelenmesi için koşul sınaması döngüye girilmeden.
İNTERNET PROGRAMCILIĞI I BTP 207 Ders 9. Tek değişkende birden fazla bilgi tutulmak istendiğinde kullanılır. Kullanım şekli: var dizi_adı= new Array(eleman1,
Operatörler ve Denetim Yapıları
BPR152 ALGORİTMA VE PROGRAMLAMA - II
ŞART İFADELERİ.
Döngü Yapıları.
BPR152 ALGORİTMA VE PROGRAMLAMA - II
Koşul İfadeleri ve Akış Kontrolü Yazdığımız uygulamanın hangi koşulda nasıl davranacağını belirterek bir akış kontrolü oluşturabilmek için koşul ifadelerini.
Akış Kontrol Mekanizmaları
Çoklu dallanma seçimi: switch
BM-103 Programlamaya Giriş Güz 2014 (4. Sunu)
DÖNGÜLER.
C#’TA DÖNGÜLER onbirc.com/133.
String class String karakterler dizisidir
İNTERNET PROGRAMCILIĞI I BTP 207 Ders 8.  Tamsayı Değerler (Integer) Tamsayılar, 10 tabanlı (decimal), 8 tabanlı (octal) veya 16 tabanlı (hexadecimal)
Python Aslı Ergün.
C++ Ders Notları 4.Ders (Kontrol ve Döngüler)
Outline 4.1 Giriş 4.2 Algoritmalar 4.3 Pseudocode 4.4 Kontrol İfadeleri 4.5 if tek-seçimli ifadeler 4.6 if else seçimli ifadeler 4.7 while döngü ifadeleri.
Akış Kontrolü ve Döngüler
Random... Rastgele Sayı Atamak...
Bu Günkü Konular If yapısı ve karşılaştırma operatörleri
Bugünkü Konular Döngüler ve Akış Diyagramları C de Döngü Tanımlama
3. HAFTA 3. Hafta.
Döngü Komutları. for deyimi bir alt limitten, bir üst limite kadar programın belirli bir parçasını tekrar eder. for deyiminde sayaç artış oranı da verilmelidir.
İnternet Programlama-I
SAYISAL ANALİZ Doç.Dr. Cüneyt BAYILMIŞ.
Doç. Dr. Cemil Öz SAÜ Bilgisayar Mühendisliği Dr. Cemil Öz.
BİLGİSAYAR PROGRAMLAMA Ders 5: Döngüler
BİLGİSAYAR PROGRAMLAMA Ders 6: Diziler Yrd. Doç. Dr. Altan MESUT Trakya Üniversitesi Bilgisayar Mühendisliği.
Bölüm 4 Seçme Komutları Alıştırmalar
Bilgisayar Programlama BIL 107
Bilgisayar Programlamasına ve Veri Analizine Giriş - IV
BM-103 Programlamaya Giriş Güz 2016 (5. Sunu)
METHODLAR VE KOŞULLAR.
BİLGİSAYAR PROGRAMLAMA Ders 5: Döngüler
Bilgisayar Programlamasına ve Veri Analizine Giriş
Bilgisayar Programlamasına ve Veri Analizine Giriş
PINAR KARTALO Ğ LU.  Belirli sayıda i ş lemlerin tekrarlanması için kullanılan döngülerdir. for döngüleri ba ş langıç ve biti ş de ğ erleri arasında.
PROGRAM KONTROL KOMUTLARI 1. if koşulu 2. if else koşulu
Bilgisayar Programlamasına ve Veri Analizine Giriş
Bilgisayar Programlamasına ve Veri Analizine Giriş
ARDUİNO Arduino Eğitimleri Bölüm 3 Programlama Dili Temelleri
İleri Algoritma Analizi
Bilgisayar Programlamasına ve Veri Analizine Giriş - VII
BLP 4210 PLATFORM BAĞIMSIZ PROGRAMLAMA
Bilgisayar Programlamasına ve Veri Analizine Giriş
Bölüm 2: Program Denetimi
NİŞANTAŞI ÜNİVERSİTESİ
Bilgisayar Programlamasına ve Veri Analizine Giriş - VII
Bilgisayar Programlamasına ve Veri Analizine Giriş - III
Bilgisayar Bilimi Döngüler.
Bilgisayar Bilimi Fonksiyonlar-2.
Bilgisayar Programlamasına ve Veri Analizine Giriş - VI
Sunum transkripti:

Bilgisayar Programlamasına ve Veri Analizine Giriş Sabancı Üniversitesi Lise Yaz Okulu 2017 4. ve 5. Ders

Ders 4 için Planımız Veri Tipleri Arasında Dönüşüm Koşullu İfadeler (Conditional Statements) Bool Cebri (Boolean) Döngüler (Loops)

Gerçek Sayılar Gerçek sayılar Örnek >>> Bir sayi giriniz: 5 Bu sayinin yarisi: 2.5 sayi = int(input("Bir sayi giriniz: ")) print ("Bu sayinin yarisi: ", sayi/2) sayi = float(input("Bir sayi giriniz: ")) print("Bu sayinin yarisi: ", sayi/2) >>> Bir sayi giriniz: 5 Bu sayinin yarisi: 2.5

Veri Tipleri str( ) int( ) float( ) complex() eval() Karakter dizisine dönüştürür int( ) Tam sayıya dönüştürür float( ) Gerçek sayıya dönüştürür complex() Karmaşık sayıya dönüştürür eval() Girdinin değerini hesaplar

Koşullu İfadeler Programın hangi yönde ilerleyeceğini belirlemek için bir koşul test edilir. Koşul gerçekleşiyorsa program bir yöne; Geçekleşmiyorsa başka bir yöne doğru ilerler. Bunun için if komutunu kullanırız. Kelime anlamı "eğer" Eğer (if) bir koşul gerçekleşiyorsa/doğruysa program bir işi yapar Aksi takdirde (else) başka bir işi yapar veya bir şey yapmaz

İf-else koşulu Koşul??? if kodu else kodu Eğer koşul doğru ise Eğer koşul yanlış ise if kodu else kodu 23.11.2018

if-else koşulu: Örnek Yazılma Biçimine dikkat! Başladığı yere dikkat; sayi = int(input("Bir sayi giriniz: ")) if sayi > 5: print("Girdiginiz sayi 5'ten buyuktur ") else: print("Girdiginiz sayi 5'ten buyuk degildir“) Yazılma Biçimine dikkat! Başladığı yere dikkat; 4 karakter içeriden başlıyor. >>> Bir sayi giriniz: 7 Girdiginiz sayi 5'ten buyuktur Bir sayi giriniz: 4 Girdiginiz sayi 5'ten buyuk degildir

Karşılaştırma Operatörleri Her bir karşılaştırmadan sonra, bir Bool değeri oluşur “doğru” ya da “yanlış”; “evet” ya da “hayır”; 0 ya da 1 Karşılaştırma Operatörü İşlevi < Küçüktür <= Küçük ya da eşittir > Büyüktür >= Büyük ya da eşittir != Eşit değildir <> == Eşittir

Zincirleme Koşullu İfadeler Bazı durumlarda ard arda bir koşul serisi kullanmamız gerekebilir: Örneğin, girilen sayıyı 10’dan küçük, 11-20 arası, 21-30 arası, 30’dan büyük şeklinde gruplamak istediğimizi düşünelim. sayi = int(input("Bir sayi giriniz: ")) if sayi <= 10: print("Girdiginiz sayi 10'dan kucuk ya da esittir“) if sayi > 10 and sayi <= 20: print("Girdiginiz sayi 11 ile 20 arasindadir") if sayi > 20 and sayi <= 30: print("Girdiginiz sayi 21 ile 30 arasindadir") if sayi > 30: print("Girdiginiz sayi 30'dan bile buyuktur")

if-elif-else Koşullu İfadeleri Bu şekilde zincirleme koşullar için elif ifadeleri, yazmasi ve anlamasi daha kolay bir yol saglar. Örnek sayi = int(input("Bir sayi giriniz: ")) if sayi <= 10: print("Girdiginiz sayi 10'dan kucuk ya da esittir") elif sayi > 10 and sayi <= 20: print("Girdiginiz sayi 11 ile 20 arasindadir") elif sayi > 20 and sayi <= 30: print("Girdiginiz sayi 21 ile 30 arasindadir") else: print("Girdiginiz sayi 30'dan bile buyuktur")

if-elif-else Koşullu İfadeleri elif ifadelerinde, önceki koşulların yanlış olmasından faydalanabiliriz: Örnek sayi = int(input("Bir sayi giriniz: ")) if sayi <= 10: print("Girdiginiz sayi 10'dan kucuk ya da esittir") elif sayi > 10 and sayi <= 20: print("Girdiginiz sayi 11 ile 20 arasindadir") elif sayi > 20 and sayi <= 30: print("Girdiginiz sayi 21 ile 30 arasindadir") else: print("Girdiginiz sayi 30'dan bile buyuktur") Eğer program buraya geliyorsa, sayımızın 10’dan büyük olduğunu zaten biliyoruz Eğer program buraya geliyorsa, sayımızın 20’den büyük olduğunu zaten biliyoruz

if-elif-else Koşullu İfadeleri elif ifadelerinde, önceki koşulların yanlış olmasından faydalanabiliriz: Örneğimizin sadeleştirilmiş hali: sayi = int(input("Bir sayi giriniz: ")) if sayi <= 10: print("Girdiginiz sayi 10'dan kucuk ya da esittir") elif sayi <= 20: print("Girdiginiz sayi 11 ile 20 arasindadir") elif sayi <= 30: print("Girdiginiz sayi 21 ile 30 arasindadir") else: print("Girdiginiz sayi 30'dan bile buyuktur")

Küçük Bir Sınıf içi Ödev Program kullanıcıdan(öğrenciden) 100 üzerinden aldığı notu girmesini istesin. Program 100 üzerinden girilen notu harf notuna çevirsin. Dönüşüm kuralları Not >= 95  A+, Not >= 90  A, Not >= 80  B, Not >= 70  C, Not >= 60  D, Not < 60  F. Ders geçme kuralı F alan öğrenci dersten kalır, diğerleri geçer Program öğrencinin harf notunu ekrana bastırsın ve geçip geçmediğini bildirsin.

if-elif-else Koşullu İfadeleri Not = int(input("100 uzerinden notunuzu giriniz: ")) if Not >= 95: harf_notu = 'A+' elif Not >= 90: harf_notu = 'A' elif Not >= 80: harf_notu = 'B' elif Not >= 70: harf_notu = 'C' elif Not >= 60: harf_notu = 'D' else: harf_notu = 'F' if harf_notu == 'F': print("Harf Notunuz:", harf_notu) print("Uzgunum Kaldiniz:(:(" ) print("Tebrikler Gectiniz:):)")

Unutmayın Sona else ifadesi koyun! Bu hiçbir koşulun gerçekleşmediği durumlarda işe yarayacaktır. Aksi takdirde hata mesajı alabilirsiniz Örneğin önceki örnekte ilk else kısmını kaldıralım Traceback (most recent call last): File "D:\Users\suuser\Documents\albert\python lise dersi\LiselereProgramlama-shared\Modul3\harfnotu.py", line 15, in <module> if harf_notu == 'F': NameError: name 'harf_notu' is not defined

Başka Örnekler Programımız bizden şifremizi girmemizi istesin Şifremiz: "qwert123" olsun Doğru şifreyi girersek bize "Hos geldiniz", Aksi takdirde "Yanlis sifre girdiniz" desin.

Şifre Girme Programı dogru_sifre = "qwert123" girilen_sifre = input("Lutfen sifrenizi giriniz: ") if girilen_sifre == dogru_sifre: print("Hos geldiniz") else: print("Yanlis sifre girdiniz")

Daha Zor Bir Şey Yapalım Program kullanıcıya doğru şifreyi girmesi için iki hak versin. Kullanıcı ikisinden birinde doğru şifreyi girerse "Hos geldiniz", Aksi takdirde ilk yanlışta " Lutfen sifrenizi tekrar giriniz: " desin ve bir daha okusun; ikinci yanlışta ise "Yanlis sifre girdiniz" desin.

Çözüm dogru_sifre = "qwert123" girilen_sifre = input("Lutfen sifrenizi giriniz: ") if girilen_sifre == dogru_sifre: print("Hos geldiniz") else: girilen_sifre = input("Lutfen sifrenizi tekrar giriniz: ") print("Yanlis sifre girdiniz")

Ya Üç Hak Vermek İstersek? dogru_sifre = "qwert123" girilen_sifre = input("Lutfen sifrenizi giriniz: ") if girilen_sifre == dogru_sifre: print("Hos geldiniz") else: girilen_sifre = input("Lutfen sifrenizi tekrar giriniz: ") print("Yanlis sifre girdiniz")

Döngüler (Loops) Bazen benzer ya da tıpatıp aynı işi defalarca yapmamız gerekir Örnek: 1 ile 10 arasındaki tüm tek tam sayıları bastır tek_sayi = 1 print(tek_sayi) tek_sayi = tek_sayi+2

Döngüler Bilgisayara aynı işlemi defalarca tekrarlamasını söylemenin daha kolay bir yolu var while döngüsü tek_sayi = 1 while tek_sayi <= 10: print(tek_sayi) tek_sayi = tek_sayi + 2 print("Bitti") >>> 1 3 5 7 9 Bitti

Ne, Nasıl Oldu? tek_sayi = 1 Kontrol: tek_sayi <= 10 ?  Doğru print (tek_sayi) tek_sayi = tek_sayi + 2 Kontrol: tek_sayi <= 10 ?  Doğru print (tek_sayi)  print 3 tek_sayi = tek_sayi + 2  tek_sayi = 5 print (tek_sayi)  print 5 tek_sayi = tek_sayi + 2  tek_sayi = 7  print 1  tek_sayi = 3 tek_sayi = 1 while tek_sayi <= 10: print (tek_sayi) tek_sayi = tek_sayi + 2 print("Bitti")

Ne, Nasıl Oldu? Kontrol: tek_sayi <= 10 ?  Doğru print (tek_sayi)  print 7 tek_sayi = tek_sayi + 2  tek_sayi = 9 print (tek_sayi)  print 9 tek_sayi = tek_sayi + 2  tek_sayi = 11 Kontrol: tek_sayi <= 10 ?  Yanlış print ("Bitti") tek_sayi = 1 while tek_sayi <= 10: print (tek_sayi) tek_sayi = tek_sayi + 2 print("Bitti")

while Döngüsü Koşul Koşullu kod tek_sayi = 1 while tek_sayi <= 10: print (tek_sayi) tek_sayi = tek_sayi + 2 Koşul ??? Eğer koşul yanlış ise Eğer koşul doğru ise koşullu kod Koşullu kod

Sonsuz döngü iyi bir şey değildir; kaçınmak gerekir. while ile sonsuz döngü x = 1 while x == 1: print ("Sonsuza Kadar Giderim") Sonsuz döngü iyi bir şey değildir; kaçınmak gerekir. Sonsuza Kadar Giderim … Traceback (most recent call last): File "C:\classes\lise_yaz_okulu\2018\ders_4\sonsuz.py", line 3, in <module> print ("Sonsuza Kadar Giderim") KeyboardInterrupt Sonsuz döngüyü kırmak için CTRL-C'e basın

Kontrollü Sonsuz Döngü Teknik olarak sonsuza gidebilir ama bu kullanıcının elinde print("Hos Geldiniz!") devam = 'E' sayac = 1 while devam == 'E': print("%d. kez merhaba dunyali" %sayac) sayac = sayac + 1 devam = input("Devam etmek icin E giriniz: ") print("Gule Gule:):)")

Biraz Esnek Olalım print("Hos Geldiniz!") devam = 'E' sayac = 1 while devam == 'E' or devam == 'e': print("%d. kez merhaba dunyali" %sayac) sayac = sayac + 1 devam = input("Devam etmek icin E veya e giriniz: ") print("Gule Gule:):)")

Küçük Bir Ödev Program kullanıcıdan bir sayı girmesini istesin Bu sayıyı N isimli bir değişkene tamsayı olarak atasın Bundan sonra 1’den N’e kadar olan tüm çift sayıların toplamını hesaplasın. Toplama N sayısı dahil olmasın Sonucu ekrana bastırsın Formül kullanmamıza gerek yok. Bilgisayar bizim için yapar.

Peki Biraz Kolaylaştıralım Program 1’den N-1’e kadar (N-1 dahil) olan pozitif tamsayıları toplasın 1 + 2 + 3 + … + N-1 Bunu bilgisayarımızda nasıl yaparız? Bir anda iki sayıyı toplayabiliriz; örneğin a + b İki değişken kullanmalıyız. O zaman yöntem 1 + 2 = 3 3 + 3 = 6 6 + 4 = 10 …

Tamsayıları Topluyoruz İki değişken i: 1’den N’e kadar olan sayılar için toplam: toplam için Başlangıçta Henüz hiç toplama yapmadık i = 1 toplam = 0 İlk adım Koşul ne olacak? i < N

Tamsayıları Topluyoruz i = 1 toplam = 0 Eğer i < N toplam = toplam + i i = i +1 Aksi takdirde Bitti, toplam değişkenini bas i < N False True i = 1 toplam = 0 while i < N: toplam = toplam + i i = i +1 print (toplam) toplam = toplam + i i = i + 1 toplam’ı ekrana bas

Diğer Kısımlar N = int(input("Bir sayi giriniz: ")) i = 1 toplam = 0 while i < N: toplam = toplam + i i = i+1 print ("1'den %d'e kadar olan pozitif tam sayilarin toplami: %d" %(N-1, toplam))

Kullanıcıyı Pozitif Sayı Girmesi için Zorlayalım N = 0 while (N < 1): N = int(input("Pozitif bir tamsayi giriniz: ")) i = 1 toplam = 0 while i < N: toplam = toplam + i i = i+1 print ("1'den %d'e kadar olan pozitif tam sayilarin toplami: %d" %(N-1, toplam))

Kullanıcı Ya Sayıdan Başka Bir Şey Girerse? >>> Pozitif bir tamsayi giriniz: r Traceback (most recent call last): File "C:\Users\erkays\AppData\Local\Programs\Python\Python36\sil.py", line 3, in <module> N = int(input("Pozitif bir tamsayi giriniz: ")) ValueError: invalid literal for int() with base 10: 'r'

Sabancı Üniversitesi Lise Yaz Okulu Şöyle Yapmak Gerekir N = input("Bir sayi giriniz: ") while N.isdigit() == False: print("Girdiginiz bir tam sayi degil!") print("Aferin tam sayi girdiniz") N = int(N) print("N: ", N) 23.11.2018 Sabancı Üniversitesi Lise Yaz Okulu

Küçük Ödev Program kullanıcıdan bir sayı girmesini istesin Bu sayıyı N isimli bir değişkene tamsayı olarak atasın Bundan sonra 1’den N’e kadar olan tüm çift sayıların toplamını hesaplasın. Toplama N sayısı dahil olmasın Sonucu ekrana bastırsın Formül kullanmamıza gerek yok. Bilgisayar bizim için yapar.

Çözüm N = int(input("Pozitif bir tam sayi giriniz: ")) i = 2 toplam = 0 while i < N: toplam = toplam + i i = i+2 print ("1'den %d'e kadar olan cift sayilarin toplami: %d" %(N, toplam))

Küçük Ödev 2 Program “Cift Sayilari Toplama Programina Hos Geldiniz” desin Sonra program kullanıcıdan bir sayı girmesini istesin Bu sayıyı N isimli bir değişkene tamsayı olarak atasın Bundan sonra 1’den N’e kadar olan tüm çift sayıların toplamını hesaplasın. Toplama N sayısı dahil olmasın Sonucu ekrana bastırsın Kullanıcıya devam etmek isteyip istemediğini sorsun Devam etmek istiyorsa kullanıcıdan bir sayı girerek aynı şeyleri yapsın Aksi takdirde, program sonlansın

Çözüm print("Cift Sayilari Toplama Programina Hos Geldiniz") devam = 'E' while devam == 'E' or devam == 'e': N = int(input("Pozitif bir tam sayi giriniz: ")) i=2 toplam = 0 while i < N: toplam = toplam + i i = i+2 print("1'den %d'e kadar olan cift sayilarin toplami: %d" %(N, toplam) ) devam = input("Devam etmek icin 'E' ya da 'e' tusuna basiniz: ") print ("Program Sonlaniyor, Gule Gule")

Sabancı Üniversitesi Lise Yaz Okulu Sınıf içi Çalışma Asal sayı: Birden büyük bir doğal sayının 1 ve kendisi dışında başka bir böleni yoksa o sayı asal sayıdır. Girilen bir sayının (1'den büyük bir tamsayı olması şart) asal olup olmadığını ekrana yazdıran bir program yazın Yöntem ipucu: Olası tüm bölenleri deneyin, eğer bölüyorsa asal değildir; bu noktada döngüden çıkabilirsiniz. Tüm seçenekleri denediğinizde hiçbir bölen bulamadıysanız o zaman asaldır. 23.11.2018 Sabancı Üniversitesi Lise Yaz Okulu

Sabancı Üniversitesi Lise Yaz Okulu Çözüm 1/2 1. aşama: doğru girdi print ("Asal sayi testi programina hos geldiniz!") dogru_giris = False while dogru_giris == False: input_str = input("Pozitif bir tamsayi giriniz:") if input_str.isdigit(): N = int(input_str) print("Aferin! Pozitif sayi girdiniz: %d" %N) dogru_giris = True else: print("Malesef! Girdiginiz pozitif bir sayi degil") 23.11.2018 Sabancı Üniversitesi Lise Yaz Okulu

Sabancı Üniversitesi Lise Yaz Okulu Çözüm 2/2 2. aşama: asal sayı kontrolü carpan = 2 asal = True while carpan < N: if N%carpan == 0: asal=False carpan = carpan + 1 if asal == True: print("%d bir asal sayidir" %(N)) else: print("%d bir asal sayi degildir" %(N)) 23.11.2018 Sabancı Üniversitesi Lise Yaz Okulu

Daha verimli bir çözüm nasıl olurdu? Önceki çözüm asal olmadığını anlasa bile tüm olasılıkları deniyor. Bu iyi değil, asal olmadığını anladıktan sonra devam etmesine gerek yok N'nin karekökünden sonrasına da bakıyor Buna gerek yok; eğer karekökten önce çarpanı yoksa karekökünden sonra da olamaz Şimdi bunları da göz önüne alarak daha verimli bir 2. aşama kodu yazalım. 23.11.2018 Sabancı Üniversitesi Lise Yaz Okulu

Çözüm 2/2 2. aşama: asal sayı kontrolü carpan = 2 asal = True <= yerine < olur muydu? carpan = 2 asal = True while asal==True and carpan <= N**(0.5): if N % carpan == 0: asal=False carpan = carpan + 1 if asal == True: print ("%d bir asal sayidir" %(N)) else: print ("%d bir asal sayi degildir" %(N)) 23.11.2018 Sabancı Üniversitesi Lise Yaz Okulu

for Döngüsü Belirli bir aralıkta tekrar yapmak için kullanılır for i in range(1, 5): print (i) >>> 1 2 3 4 >>> S a b n c i universite = "Sabanci" for harf in universite: print(harf)

for Döngüsü Karakter dizisi (string) Döngü Değişkeni universite = "Sabanci" for harf in universite: print (harf) Dizide eleman var mı? Eğer dizide başka eleman kalmamışsa Döngü Değişkeni Dizideki bir sonraki elemanı kullanarak döngü kodu for dongu_degiskeni in dizi: dongu kodu

range() Fonksiyonu for i in range(1, 10, 2): print (i) range(ilk,son,fark) bize bir aralıktaki değerleri veren bir fonksiyondur Sürekli fark ekleyerek ilk dahil, son dahil değil >>> 1 3 5 7 9 for i in range(1, 10, 2): print (i) >>> 10 8 6 4 2 for i in range(10, 1, -2): print (i)

Örnek for i in range(10, 1, -1): print (i) >>> 10 9 8 7 6 5 4 3 2

Başka Bir Örnek for i in range(1, 10, -1): print (i) Sonuç ne olurdu? Deneyelim görelim

break komutu isim = input("Sadece isminizi giriniz: ") Döngüleri zamanından önce (döngü koşulu yanlış olmadan) sonlandırmaya yarar Döngü kontrolünü zorlaştırdığından iyi programcılar break kullanmaz; ancak Python'da for döngülerinde bazen mecbur kalıyoruz. isim = input("Sadece isminizi giriniz: ") for karakter in isim: if karakter == " ": break print (karakter) >>> Sadece isminizi giriniz: Erkay Savas E r k a y

break Komutu Koşul Döngüden çık for karakter in isim: Koşul if karakter == " ": break print (karakter) yanlış doğru Break koşulu Döngüden çık doğru yanlış döngü kodu Döngüden çık

continue Komutu for x in range(-2,3): if x == 0: Koşul continue print (1.0/x) Koşul yanlış doğru continue koşulu >>> -0.5 -1.0 Traceback (most recent call last): File "<pyshell#3>", line 2, in <module> print 1.0/x ZeroDivisionError: float division by zero >>> -0.5 -1.0 1.0 0.5 doğru yanlış döngü kodu Döngüden çık

Ödev Sayı bulma maçı Her set için Bilgisayar 1 ile 16 ([1,16]) arasında rasgele bir sayı seçer ve programda saklar Oyuncu bu sayıyı dört tahminde bulmaya çalışır Birinci, ikinci ve üçüncü tahminlerinde bulamazsa program sayının tahminden büyük mü yoksa küçük mü olduğunu söyler. 4. tahminde de bilemezse program tutmuş olduğu sayıyı söyler. Oyuncu dört hakkında da bilemezse oyunu kaybeder. Dört tahminden birinde doğru tahmin ederse, oyuncu kazanır. Rasgele sayı için programın başına aşağıdakini yazın import random Sonra rasgele bir sayı elde etmek için şu komutu kullanın. sayi = random.randint(1, 16)

Örnek Çalışma 1 ile 16 arasinda bir sayi tuttum. 1. Tahmininizi giriniz: 8 Bilemediniz. Benim tuttugum sayi 8'den buyuk 2. Tahmininizi giriniz: 12 Bilemediniz. Benim tuttugum sayi 12'den buyuk 3. Tahmininizi giriniz: 14 Bilemediniz. Benim tuttugum sayi 14'den buyuk 4. Tahmininizi giriniz: 15 Bravo bildiniz... 1 ile 16 arasinda bir sayi tuttum. 1. Tahmininizi giriniz: 3 Bilemediniz. Benim tuttugum sayi 3'den buyuk 2. Tahmininizi giriniz: 5 Bilemediniz. Benim tuttugum sayi 5'den buyuk 3. Tahmininizi giriniz: 8 Bilemediniz. Benim tuttugum sayi 8'den kucuk 4. Tahmininizi giriniz: 6 Maalesef bilemediniz. Tuttugum sayi 7 idi

Ödev Sayı bulma maçı (3 set üzerinden oynanacak) Her set için Bilgisayar 1 ile 16 ([1,16]) arasında rasgele bir sayı seçer ve programda saklar Oyuncu bu sayıyı dört tahminde bulmaya çalışır Birinci, ikinci ve üçüncü tahminlerinde bulamazsa program sayının tahminden büyük mü yoksa küçük mü olduğunu söyler. 4. tahminde de bilemezse program tutmuş olduğu sayıyı söyler. Oyuncu dört hakkında da bilemezse seti kaybeder. Dört tahminden birinde doğru tahmin ederse, seti oyuncu kazanır. Üç setlik maçta en çok seti kazanan oyunu kazanır. Rasgele sayı için programın başına aşağıdakini yazın import random Sonra rasgele bir sayı elde etmek için şu komutu kullanın. sayi = random.randint(1, 16)

Örnek Çalışma ----------------------------- 1. SET 1 ile 16 arasinda bir sayi tuttum. 1. Tahmininizi giriniz: 10 Bilemediniz. Benim tuttugum sayi 10'den buyuk 2. Tahmininizi giriniz: 15 Bilemediniz. Benim tuttugum sayi 15'den kucuk 3. Tahmininizi giriniz: 12 Bilemediniz. Benim tuttugum sayi 12'den buyuk 4. Tahmininizi giriniz: 14 Maalesef bilemediniz. Tuttugum sayi 13 idi Su anda 1-0 ondeyim 2. SET 1. Tahmininizi giriniz: 3 Bilemediniz. Benim tuttugum sayi 3'den buyuk 2. Tahmininizi giriniz: 5 Bilemediniz. Benim tuttugum sayi 5'den buyuk 3. Tahmininizi giriniz: 8 Bilemediniz. Benim tuttugum sayi 8'den kucuk 4. Tahmininizi giriniz: 6 Maalesef bilemediniz. Tuttugum sayi 7 idi Su anda 2-0 ondeyim 3. SET 1. Tahmininizi giriniz: 2 Bilemediniz. Benim tuttugum sayi 2'den buyuk 2. Tahmininizi giriniz: 7 Bilemediniz. Benim tuttugum sayi 7'den buyuk 3. Tahmininizi giriniz: 10 Bravo bildiniz... Oyun bitti 2-1 kaybettiniz Örnek Çalışma ----------------------------- 1. SET 1 ile 16 arasinda bir sayi tuttum. 1. Tahmininizi giriniz: 8 Bilemediniz. Benim tuttugum sayi 8'den buyuk 2. Tahmininizi giriniz: 12 Bilemediniz. Benim tuttugum sayi 12'den buyuk 3. Tahmininizi giriniz: 14 Bilemediniz. Benim tuttugum sayi 14'den buyuk 4. Tahmininizi giriniz: 15 Bravo bildiniz... Su anda 1-0 ondesiniz 2. SET 1. Tahmininizi giriniz: 4 Bilemediniz. Benim tuttugum sayi 4'den buyuk Bilemediniz. Benim tuttugum sayi 12'den kucuk 3. Tahmininizi giriniz: 10 Bilemediniz. Benim tuttugum sayi 10'den kucuk 4. Tahmininizi giriniz: 6 Maalesef bilemediniz. Tuttugum sayi 8 idi Su anda 1-1 berabereyiz 3. SET 2. Tahmininizi giriniz: 11 Oyun bitti 2-1 kazandiniz