Project Euler – Problem 5

Bu problemde, 1’den 20’ye kadar olan sayılara tam bölünebilen en küçük doğal sayıyı bulmamız isteniyor.

  • İlk olarak, program akışında kontrol edeceğimiz “i” değişkenini bir başlangıç değeri vererek tanımlayalım. Ben başlangıç değerine 20 verdim.
  • Bir sonsuz döngü oluşturalım. Bu döngü içerisinde başlangıç değeri 2 olan bir “j” değişkeni tanımlayalım.
  • Sonrasında, dögü içerisinde yine bir sonsuz döngü oluşturalım. Bu döngü içerisinde j’nin değerini kontrol edelim.
  • Eğer j’nin değeri 21 ise sonucu bulduk demektir. Sonucu ekrana yazdıralım ve return ifadesiyle programı sonlandıralım.
  • j’nin değeri 21’den küçük olduğu durumda ise, “i mod j” sonucunu kontrol edelim. Eğer sonuç 0 ise j’yi bir arttıralım. Değilse i’yi bir arttıralım ve break ifadesiyle yavru döngüden çıkalım.

Şimdi Bu işlemleri bir programlama dili ile gerçekleştirelim.

#include <stdio.h>

int main() {

    int i = 20;

    while(1) {
        int j = 2;

        while(1) {
            if(j == 21) {
                printf("%d", i);  // Result: 232792560
                return 0;
            }

            if(i % j == 0)
                j++;
            else {
                i++;
                break;
            }
        }
    }
}

Ve sonuç 232792560.

Yorum Yaz

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir