Python Örnekleri
Python ile 1000’den Küçük Asal Sayıları Ekrana Yazdırma
Bu yazımızda, Python ile 1000’den küçük asal sayıları ekrana yazdıran ve bu sayıların toplamını bulan programı yazacağız. Kodumuzu yazmadan önce asal sayıların ne olduğunu açıklayalım; asal sayılar, kendisi dışında başka bir böleni bulunmayan, 1 hariç pozitif tam sayılardır.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
# Asal sayıları bulup listeye ekleyen ve toplamını hesaplayan Python programı def asal_sayilari_bul_ve_topla(ust_limit): asal_sayilar = [] for sayi in range(2, ust_limit): asal = True for i in range(2, sayi): if sayi % i == 0: asal = False break if asal: asal_sayilar.append(sayi) asal_sayilarin_toplami = sum(asal_sayilar) return asal_sayilar, asal_sayilarin_toplami # 1000'den küçük asal sayıları buluyoruz ve toplamlarını hesaplıyoruz asal_sayilar, toplam = asal_sayilari_bul_ve_topla(1000) print("Asal Sayılar:", asal_sayilar) print ("----------") print("Asal Sayıların Toplamı", toplam) |
Trinket üzerinden kodu çalıştırabilirsiniz. Anlaşılır olması adına neyi niye yaptığımızı maddeler halinde açıklayalım:
- Fonksiyon Tanımı (
def asal_sayilari_bul_ve_topla(ust_limit)
): İşlemi yeniden kullanılabilir ve organize bir şekilde yapabilmek için, belirli bir üst limite kadar olan asal sayıları bulup toplamını hesaplayan bir fonksiyon tanımladık. Bu fonksiyon,ust_limit
parametresiyle, hangi sayıya kadar asal sayıları bulacağımızı belirlememize olanak tanır. - Asal Sayı Listesi (
asal_sayilar = []
): Bulunan asal sayıları saklamak için bir liste oluşturduk. Bu liste, fonksiyonun çalışması sırasında asal olarak belirlenen sayılarla doldurulmuştur. - Dış Döngü (For Döngüsü):
for sayi in range(2, ust_limit):
ile, 2’den (asal sayılar 2’den başlar)ust_limit
parametresine kadar olan tüm sayıları for döngüsü ile tek tek kontrol ettik. - Asallığı Kontrol Etme (
asal = True
ve İç Döngü): Her sayının başlangıçta asal olduğunu varsayarak (asal = True
), bu varsayımı test etmek için bir iç döngü (for i in range(2, sayi)
) kullanıyoruz. İç döngü, mevcut sayıyı 2’den kendisine kadar olan sayılara bölerek test eder. Bunu yapabilmek için if koşulunu kullandık. Eğer sayı, bu aralıktaki herhangi bir sayıya tam bölünürse (if sayi % i == 0
), o zaman asal değildir veasal = False
olarak işaretlenmiştir. - Asal Sayıların Listeye Eklenmesi: Eğer sayı asalsa (
if asal
), bu sayıyıasal_sayilar
listesine append() metodunu kullanarak ekledik (asal_sayilar.append(sayi)
).
Pekala fonksiyon kullanmadan da yapabiliriz. Bakınız:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
# Asal sayılar listesi ve toplamını hesaplamak için değişkenler asal_sayilar = [] toplam = 0 # 2'den 1000'e kadar olan sayıları kontrol etmek için dış döngü for sayi in range(2, 1000): asal = True # Varsayılan olarak sayıyı asal kabul ediyoruz # Mevcut sayının asal olup olmadığını kontrol etmek için iç döngü for i in range(2, sayi): if sayi % i == 0: # Sayı, herhangi bir sayıya tam bölünürse asal değildir asal = False break # Eğer sayı asalsa, listeye ekleyip toplama dahil ediyoruz if asal: asal_sayilar.append(sayi) toplam += sayi # Asal sayıların listesi ve toplamını yazdır print(asal_sayilar) print ("----------") print("Asal Sayıların Toplamı:", toplam) |
Kodu çalıştırmak için: Trinket