1000’e kadar kaç tane tau sayısı olduğunu bulan programın Algoritması ve Kodu

TauSayisi isminde bir fonksiyon oluşturuyoruz ve parametresini ise sayi olarak yazıyoruz. Sayi değişkeni bizim kullanıcıdan alacağımız sayı, örneğin soruda verdiği gibi 24 olabilir. Bu sayıların adedini öğrenmemiz gerektiği için miktar isminde bir değişken tanımlayıp 0 atıyoruz. Sayının bölenlerini bulmamız için de sayıya kadar olan tüm sayılarla tek tek bölmemiz gerekiyor. Bunun için de böleni x değişkeni ile tanımlıyoruz ve 1 atıyoruz. 0 atayamayız çünkü hiçbir sayı 0’a bölünemez ve derleyici bize hata döner. Bir do – while döngüsü oluşturup hemen içinde şu koşulu kontrol ediyoruz;
eğer sayi değişkeninin x değişkenine bölümünden kalan 0 ise, miktarı bir arttır, öyle bir şey yoksa x değişkenini bir arttır. Örneğin 24 mod 5 eşit değilse sıfıra, 5’i 1 arttır, sonra 24’ü 6’ya böl, kalan 0 olacağı için miktar bir artacak. Bu işlemi x sayi değişkeninden 1 fazla olana kadar yani, bölen(x) bölünenden 1 fazla olana kadar yani örnekteki gibi x 25 olana kadar yap. Sonra sayi mod miktar = 0 mı değil mi diye kontrol edeceğiz. Yukarıdaki örnekteki gibi sayımız 24 ve bölen sayıların adedi 8 ise, 24’ün 8’e bölümünden kalan 0 olacağı için 24 bir Tau Sayısıdır. Eğer sayi mod miktar eşit ise 0’a, sayi döndürülecek, değilse 0 döndürülecek.

Ana fonksiyonumuzun içine tane isminde değişken tanımlayıp 0 atıyoruz, 1’den 1000’e kadar birer birer artarak gidecek bir for döngüsü oluşturup, teker teker sayıları fonksiyonumuzu çağırarak Tau Sayısı mı değil mi kontrol ediyoruz, eğer Tau Sayısı ise tane değişkeni 1 arttırılıyor, değilse bir sonraki sayı kontrol ediliyor. En sonda ekrana 1000’e kadar kaç tane tau sayısı olduğu bastırılıyor.

TauSayisi(sayi) fonksiyonunun algoritması:

  1. TauSayisi(sayi)
  2. Değer ata(miktar = 0, x = 1)
  3. Eğer sayi mod x = 0
  4. Miktarı 1 arttır
  5. x değişkenini 1 arttır
  6. Eğer x sayının 1 fazlasına eşit değilse 3. adıma dön
  7. Eğer sayi mod miktar eşitse sıfıra
  8. Döndür sayi
  9. Değilse
  10. Döndür 0

Ana Algoritma:

  1. Başla
  2. Değer ata(tane = 0)
  3. Döngü oluştur(1’den 1000’e kadar 1 arttır)
  4. Eğer TauSayisi(i) eşitse i
  5. Adedi arttır (tane++)
  6. Değilse 3. adıma dön
  7. Yazdır tane
  8. Son

(Akış Diyagramını Visio 2013 ile çizdim)

(Java Programlama Diliyle kodunu yazdım)

(C++ Programlama Diliyle kodunu yazdım)

(C# Programlama Dili ile kodunu yazdım)

Leave a Reply

Your email address will not be published. Required fields are marked *