Python İle Çokgen Çizme
Bu örneğimizde, dökümantasyon okuma becerimize katkıda bulunması amacıyla kullanıcıdan girdi alarak Python ile çokgen çizme programı kodlayacağız.
import turtle as t
dino = t.Turtle()
cokgen = int(input("Kaç kenarlı bir çokgen çizmek istiyorsunuz? "))
def draw_shape(cokgen):
angle = 360/cokgen
for _ in range(cokgen):
dino.forward(100)
dino.right(angle)
draw_shape(cokgen)
t.done()
Yukarıdaki kodumuzda, Python’un grafik arayüz kütüphanesi olan turtle modülünü aktararak (import ederek) çokgenler çiziyoruz. Bu kütüphaneyi t
kısaltmasıyla içe aktardık (Dökümantasyon: Turtle sınıfı). Böylece kütüphanedeki fonksiyon ve sınıflara daha kısa bir şekilde erişim sağlamış olduk.
Kodun başında, Turtle
sınıfından bir nesne oluşturarak ekranda hareket edecek ve çizim yapacak kaplumbağamızı tanımlıyoruz. Bu nesneyi “dino” adında bir değişkene atıyoruz.
Kullanıcıdan kaç kenarlı bir çokgen çizmek istediğini sormak için input() fonksiyonunu kullanıyoruz. Bu fonksiyon, kullanıcıdan aldığı değeri string olarak geri döndürdüğü için, bu değeri tam sayıya dönüştürmek amacıyla int()
fonksiyonunu kullanıyoruz. Bu tam sayıyı “cokgen
” adında bir değişkene atıyoruz.
Parametre olarak aldığı kenar sayısına sahip bir çokgeni çizmek için draw_shape
adında bir fonksiyon tanımladık. Fonksiyon içerisinde, bir çokgenin iç açılarının toplamının 360 derece olduğunu bilerek, her bir iç açının büyüklüğünü hesaplamak için angle = 360/cokgen
formülünü kullanıyoruz.
Fonksiyonun içerisinde for döngüsü kullanarak, belirtilen kenar sayısı kadar dino’nun ileri hareket etmesi ve belirlenen açıda dönmesi sağlanıyor. Bu döngü sayesinde, istenilen kenar sayısına sahip çokgen başarıyla çiziliyor.
forward()
: Kaplumbağayı belirtilen uzunlukta ileri hareket ettirir.right()
: Kaplumbağayı belirtilen açıda sağa döndürür.- Dökümantasyon:
Son olarak, t.done()
fonksiyonu ile Turtle penceresinin açık kalmasını sağlıyoruz, böylece kullanıcı çizilen şekli gözlemleyebilir.
Bu örneğin dökümantasyon okuma becerilerimizi de geliştireceğini düşünüyorum. Umarım faydalı olmuştur, iyi çalışmalar dilerim.