1 Haziran 2010 Salı

Rastgele sayı üreterek Mükemmel Sayı bulmak (4.Quiz)

Bu soru biraz saçma olabilir, birinci grup ile ikinci gruba biraz farklı anlatılmış bir soru.Program rastgele sayı ürettiği için her seferinde mükemmel sayı bulmuyor yada birkaç defa bulabiliyor.Ancak quizi değerlendiren asistan çözümü kabul etmiştir.


#include <stdio.h>
#include <conio.h>
#include <time.h>
#include <stdlib.h>

//4.Quiz - Kürşat Topcuoğlu 090202047 i.ö.


/*
Konu:
*srand ile 3 basamaklı sayı üret
*Sayı mükemmel sayı ise ekrana yazdır
*Mukemmel sayılar: 4,28,496
*/
int main()
{
    int TamBolenTop=0,Sayi,j,i;
    srand(time(0)); // Program her çalıştığında random farklı değerle başlar.

    for(i=1;i<=2000;i++)
    {
        Sayi=rand()%900+100; // [1,999] aralığında rastgele sayı üretiliyor
        TamBolenTop=0;        // Üretilen Her Sayi için 0'dan başlamalı

        //Rastgele Uretilen Sayının Tam Bölenleri Toplamı Bulunuyor
        for(j=1;j<Sayi;j++)
            if (Sayi%j==0)
                TamBolenTop+=j;

        //Mükemmel Sayı Eşitliği Kontrol Ediliyor
        if (i==1) printf(" 3 BASAMAKLI MUKEMMEL SAYILAR  \n");
        if (TamBolenTop==Sayi)
            printf("%d\n",Sayi);
    }

    getch();
    return 0;
}


Hiç yorum yok:

Yorum Gönder