Eda’nın eklediği görseldeki ödev sorusuna dair açıklamalar aşağıdaki gibidir:
Python Ödevi Detayları
-
Ders Konusu: Python’da Fonksiyon Tanımlama
-
Görev:
- Klavyeden girilen bir sayının asal sayı olup olmadığını bulacak bir Python programı yazın.
- Programınızı,
ogrencino.pyşeklinde bir dosya adı vererek kaydedin. - Dosyayı belirtilen e-posta adresine (teber.ozceylan@inonu.edu.tr) gönderin.
-
Son Teslim Tarihi: 4 Mayıs 2023, saat 23:59
Ödevi Nasıl Yapabilirsiniz?
Aşağıda, belirtilen şartları karşılayan örnek bir Python kodu bulunmaktadır:
def asal_mi(sayi):
"""Bir sayının asal olup olmadığını kontrol eden fonksiyon."""
if sayi < 2:
return False
for i in range(2, int(sayi**0.5) + 1):
if sayi % i == 0:
return False
return True
# Kullanıcıdan sayı al
try:
girilen_sayi = int(input("Bir sayı girin: "))
if asal_mi(girilen_sayi):
print(f"{girilen_sayi} bir asal sayıdır.")
else:
print(f"{girilen_sayi} asal sayı değildir.")
except ValueError:
print("Lütfen geçerli bir sayı girin.")
Adım Adım Yol Haritası
-
Fonksiyon Tanımlama:
asal_miismindeki fonksiyon, verilen bir sayının asal olup olmadığını kontrol eder.- Asallık kriteri: Sadece 1 ve kendisine bölünebilen, pozitif tam sayılar.
-
Kullanıcıdan Girdi Alma:
- Kullanıcıdan bir sayı girmesi istenir.
- Girilen bilgi,
intveri tipine dönüştürülür. Hatalar kontrol edilir.
-
Sonuç Yazdırma:
- Kullanıcının girdiği sayı asal ise uygun bir mesaj görüntülenir.
- Asal değilse farklı bir mesaj verilir.
-
Dosya Adlandırma ve Gönderme:
- Yukarıdaki kodu
.pyuzantılı bir dosya olarak kaydedin. Dosya adı örneğin12345678.pyşeklinde olmalıdır (öğrenci numaranıza göre). - Dosyayı e-posta ile gönderin.
- Yukarıdaki kodu
Örnek Çalışma Sonuçları
| Girdi | Çıktı |
|---|---|
| 7 | 7 bir asal sayıdır. |
| 10 | 10 asal sayı değildir. |
| -1 | Lütfen geçerli bir sayı girin. |
Ek Öneriler
- Kodu yazarken hata ayıklama yapmayı unutmayın.
- Fonksiyon kullanımını ve genel Python yazılım prensiplerini öğrenmek için kurs materyalinden faydalanabilirsiniz.
- Dosya adı ve teslim tarihi konusunda öğretmeninize danışarak doğrulama yapabilirsiniz.
Eda, bu açıklamalar ödevin tamamlanmasına yardımcı olacaktır. Eğer ek sorularınız varsa lütfen belirtin! ![]()
Ekonometri 10. Hafta: Python’da fonksiyon tanımlama
Cevap:
Table of Contents
4.1 *
4.2 *
5. *
6. *
7. *
1. Genel Bakış
Ekonometrinin 10. haftasında programlama becerilerimizi geliştirerek, Python dilinde nasıl fonksiyon tanımlanacağı ve fonksiyonların neden önemli olduğu üzerinde duruyoruz. Bu bağlamda, klavyeden girilen bir sayının asal sayı olup olmadığını bulan basit bir Python programı yazmamız isteniyor. Buradaki temel amaç, hem kullanıcıdan alınan verileri değerlendirmek hem de fonksiyon kullanarak programı modüler ve düzenli hale getirmektir.
2. Asal Sayı Nedir?
Bir sayının asal (prime) sayılabilmesi için:
- 1’den büyük olması,
- Kendisi ve 1 dışında hiçbir sayıya tam olarak bölünmemesi gerekir.
Örneğin, 2 bir asal sayıdır, çünkü yalnızca 1 ve 2’ye bölünebilir. Benzer şekilde 3, 5, 7, ve 11 asal sayılara örnek olarak gösterilebilir.
3. Python’da Fonksiyon Tanımlama
Python’da fonksiyonlar, def anahtar kelimesiyle başlar ve aşağıdaki biçimde yazılır:
def fonksiyon_adi(parametre1, parametre2, ...):
# Fonksiyon gövdesi
# Gerekli işlemler
return uygun_değer
Fonksiyon yazmanın avantajları:
- Kod tekrarını önler.
- Anlaşılır ve bakım yapılması kolay programlar yazarız.
- Karmaşık problemleri alt parçalara bölebiliriz.
4. Asal Sayı Kontrol Programı
4.1 Algoritma Açıklaması
- Kullanıcıdan Girdi Al: Kullanıcıdan bir tam sayı girmesini isteyin.
- Sayıyı İncele:
- Sayı 1 veya daha küçükse, bu sayı asal sayı değildir.
- Değilse, 2’den başlayarak sayının kareköküne kadar kontrol ederek herhangi bir tam bölünme (kalan 0) var mı diye bakın.
- Sonucu Döndür: Eğer tam bölünme bulunuyorsa asal değildir, bulunmuyorsa asaldır.
- Yazdır: Ekrana uygun mesajı basın.
4.2 Kod Örneği
Aşağıdaki kodda, kullanıcıdan sayı alırız ve tanımladığımız asal_mi adlı fonksiyonla sayının asal sayı olup olmadığını tespit ederiz. Bu kodu “ogrenci.py” şeklinde bir dosya olarak kaydedip ödev gereğince gönderebilirsiniz.
def asal_mi(sayi):
"""
Bu fonksiyon, kendisine parametre olarak gelen sayının
asal olup olmadığını kontrol eder ve True/False döndürür.
"""
if sayi <= 1:
return False # 1 ve altındaki sayılar asal değildir
# 2'den sayinin kareköküne kadar bölme testi
for i in range(2, int(sayi**0.5) + 1):
if sayi % i == 0:
return False # Tam bölündüyse asal değil
return True # Hiçbir tam bölünme bulunmadıysa asal
def main():
# Kullanıcıdan bir sayı al
girilen_sayi = int(input("Bir sayı giriniz: "))
# Fonksiyonu çağırarak sonucu al
if asal_mi(girilen_sayi):
print(f"{girilen_sayi} bir asal sayıdır.")
else:
print(f"{girilen_sayi} bir asal sayı değildir.")
# Ana fonksiyonu çalıştır
if __name__ == "__main__":
main()
5. Örnek Çıktılar
- Girdi: 5
Çıktı: “5 bir asal sayıdır.” - Girdi: 12
Çıktı: “12 bir asal sayı değildir.”
6. Özet Tablo
| Adım | Açıklama | Kodda İlgili Kısım |
|---|---|---|
| 1. Fonksiyon Tanımlama | asal_mi isimli fonksiyon ile sayının asal olup olmadığını kontrol eder. |
def asal_mi(sayi): ... |
| 2. Koşullu Kontrol (1 <=) | 1 veya altındaki sayılar doğrudan asal değildir. | if sayi <= 1: |
| 3. Döngü ile Bölme Kontrolü | 2’den sayının kareköküne kadar bölünebilirlik denetler. | for i in range(2, ...): |
| 4. Sonuç Döndürme | Tam bölünme yoksa True, varsa False döndürür. | return True/False |
| 5. Kullanıcıdan Veri Alma | input() fonksiyonu ile kullanıcıdan sayı alır. |
girilen_sayi = int(...) |
| 6. Mesaj Yazdırma | Girilen sayının asal olup olmadığına göre çıktı verir. | print(...) |
7. Kısa Özet
- Asal Sayı: Yalnızca 1 ve kendisine bölünen 1’den büyük tam sayılardır.
- Fonksiyon Tanımlama:
defile başlayarak tekrar eden işlemleri modüler hale getirmenizi sağlar. - Asal Kontrol Programı: Kullanıcıdan alınan sayıyı
asal_mifonksiyona gönderir, dönen sonuca göre ekrana mesaj basar.
Bu adımları takip ederek “ogrenci.py” dosyasını oluşturabilir, ardından ödev kapsamında hocanızın belirttiği e-posta adresine veya platforma gönderebilirsiniz.
