Başlangıç Kodları

Buraya tıklayarak ödev problemlerine ait başlangıç kodlarına ulaşabilirsiniz.

Ön Hazırlık

Grafik kütüphanesinin tüm fonksiyonlarını kullanabilmek için Pillow paketini indirmeliyiz. Daha önce indirmediyseniz aşağıdaki komutu terminalde çalıştırarak Pillow’u bilgisayarınıza indirebilirsiniz.

python -m pip install Pillow==7.1.1

Ödev - Hafta 4

Grafik kütüphanesinin fonsiyonlarının dokümantasyonuna buradan ulaşabilirsiniz.

Egzersiz 1

En büyük ve en küçük sayıyı bulalım!

Kullanıcıdan 3 tane sayı alalım. Bu sayılardan en küçük ve en büyük olanlarını bulup yazdırmak istiyoruz. İki yol ile bu çıktıları verebiliriz:

1) min_max_bul() fonksiyonunu tamamlayabiliriz. 2) Bir liste oluşturup aldığımız sayıları bu listenin içerisine ekleyebilir ve sıralama yoluyla gerekli sayıları alabiliriz.

# Örnek Çalışma Şekli

> Bir sayı girin: 5
> Bir sayı girin: 2
> Bir sayı girin: 8

> Fonksiyonla deneyelim! 
> En küçük sayı:  2 
> En büyük sayı:  8

> Listeyle deneyelim! 
> En küçük sayı:  2 
> En büyük sayı:  8

İpucu 1: Listeler ile min ve max bulmaya çalışırken, verilen sayıları sort() fonksiyonu ile sıralayabilir; sonrasında sıralanmış listeden istediğimiz sıradaki sayıyı alma görevini de derste öğrendiğimiz gibi uygulayabiliriz.

İpucu 2: Yukarıdaki liste yöntemine ek olarak, listelere ait min() ve max() fonksiyonlarını kullanarak üçüncü bir yol ile en büyük ve en küçük sayıları belirleyebiliriz.

İpucu 3: Fonksiyonlarımızın sonucunda birden fazla değişkeni main programa gönderebiliriz. Aşağıdaki örneği inceleyelim:

def iki_toplama_yap():
    a = 4
    b = 3
    c = 5
    num1 = a+b
    num2 = a+c
    return num1, num2

Ekstra: Geliştirme olarak kullanıcıdan sayı almak yerine, random kütüphanesinden sayılar da alabiliriz!

Egzersiz 2

Canvası Keşfedelim!

Grafik kütüphanesini kullanarak Kanvas üzerinde kullanabileceğimiz fonksiyonlarla gösterilen konumlara yaklaşık yerlere belirtilen boyutlarda robot, kardan adam ve çiçek çizelim. Ek olarak bir de örnekteki konumdan bağımsız olarak rastgele bir yere yazı yazarak “CS101:Merhaba Dünya!” mesajını gösterelim.

Yapacağımız 4 görev olduğu için bunları rastgele uygulamak istediğimizi varsayalım. Bunun için random kütüphanesini kullanabiliriz. Başlangıç kodunda verilen random.randint(1,4) fonksiyonu bizim için 1 ile 4 arasındaki sayılardan birini rastgele seçer. (1 ve 4 dahil)

Bu objeleri nasıl çizdireceğiniz konusunda kafamızda soru işaretleri oluşursa, aşağıdaki örneklerde olduğu gibi bu objeleri Grafik kütüphanemizdeki şekilleri kullanarak oluşturabiliriz. Örneğin robotun yüzü ve ağzı bir dikdörtgen (rectangle), gözleri de 2 yuvarlak (oval).

İpucu: Kodumuzla çağırdığımız create_ fonksiyonunun çizeceği ilk şekil kendinden sonra çizilen şekillerle çakışırsa, önce çizilen altta kalır.

Kullanacağımız bileşenlerin boyut bilgileri başlangıç kodunda verildiği gibidir.

  • Canvas boyutları: 1000x800

  • Robot kafası: 200x200 kare

    Robot gözleri çapı: 50 piksel

    Robot ağzı: 100x25 dikdörtgen

  • Kardan adam üst gövde çapı: 200 piksel

    Kardan adam alt gövde çapı: 300 piksel

    Kardan adam gözleri çapı: 50 piksel

    Kardan adam ağzı: 100x25 dikdörtgen

  • Çiçeğin iç daire çapı: 100 piksel

    Çiçeğin dış daire çapı: 200 piksel

    Yaprağın genişlik çapı: 100 piksel

    Yaprağın yükseklik çapı: 30 piksel

    Gövde uzunluğu: 250 piksel

    Gövde genişliği: 30 piksel

Örnek Görünümler

Yazı: text

Robot: robot

Kardan adam: kardanadam

Çiçek: cicek