Blackout
Dekan
- Katılım
- 14 Nisan 2008
- Mesajlar
- 7,495
- Reaksiyon puanı
- 383
- Puanları
- 0
Core i7 920 4.2Ghz 7 sn fakat 1 kere 6 sn çıktı program ne kadar sağlıklı tartışılır ben pek güvenmedim açıkcası.
Gider o daha gider.
Core i7 920 4.2Ghz 7 sn fakat 1 kere 6 sn çıktı program ne kadar sağlıklı tartışılır ben pek güvenmedim açıkcası.
hp pavillion dv 2000 core2duo T5600 1.83 işlemci - 25 sn
18 saniye 2 ghz işlemci ama işlemi yaparken işlemcim sadece % 67 performansla çalıştı eğer bu program işlemcinin % 100 ünü kullansa bu değer çok daha düşük çıkardı eminim
10 saniye intel core 2 duo e8200 2.66 ghz
#include <stdio.h>
#include <math.h>
#include <dos.h>
int say1,say2,say3,say4;
float t3saat,t3dakika,t3saniye,t3salise;
main()
{
struct time t1;
printf("\n\n\nAz sonra islemciniz 50.000 e kadar olan asal sayilari hesaplayacaktir\n\n\nDevam etmek icin Enter'a basin\n\n");
getchar(); /* enter'a basana kadar bekler */
gettime(&t1);/* t1 degiskenine biosun saat,dakika,saniye ve salise değerlerini atar*/
/* asal sayilari hesaplayan döngü asagidadir*/
for(say1=2;say1<50000;say1++)
{
say3=0;
for(say2=2;say2<say1;say2++)
{
if(say1%say2!=0) say3++;
}
if(say3>say1-3)
{
say4++;
if (say4%10==0) printf("\n");
if (say1<10) printf("%d ",say1);
if (say1>10 & say1<100) printf("%d ",say1);
if (say1>100 & say1<1000) printf("%d ",say1);
if (say1>1000 & say1<10000) printf("%d ",say1);
if (say1>10000 & say1<100000) printf("%d ",say1);
}
}
/* asal sayilari hesaplayan döngü burada biter. (tamamen bana ait bir algoritmadir)*/
/* asal sayi algoritmasini anlamayi arkadaslarin kapasitesine birakiyorum*/
struct time t2;
gettime(&t2);/* test bittikten sonra t2 degiskenine biosun saat,dakika,saniye ve salise degerlerini atar*/
t3saat=t2.ti_hour-t1.ti_hour; /* iki zaman arasi saat farkini hesaplar*/
t3dakika=t2.ti_min-t1.ti_min; /* iki zaman arasi dakikayi hesaplar*/
if (t3saat!=0)
t3dakika=(60-t1.ti_min)+t2.ti_min; /* diyelim ki test 11:59:45 te basladi ve 40
saniye surdu o zaman ikinci zaman 12:00:25 yani dakika farki -59 olacaktir ve yanlis hesaplanacaktir.
bu algoritma bu hatayi onlemek icindir*/
t3saniye=t2.ti_sec-t1.ti_sec;
if (t3dakika!=0)
t3saniye=(t3dakika-1)*60+60-t1.ti_sec+t2.ti_sec; /*saniyedeki hesapta hem saat hemde dakika degisimleri
olacagindan algoritma bu sekilde olacaktir*/
t3salise=(100-t1.ti_hund)+t2.ti_hund;
if (t3salise>99)
{
t3salise-=100;
t3saniye+=1;
}/*salise farklari 0-200 arasinda olacaktir. 100'den büyük salise olmayacagindan 100 cikarip
saniyeyi 1 artiriyoruz*/
t3saniye--; /* hesap geregi saniye 1 fazla cikdigindan saniyeyi 1 azaltiyoruz*/
printf("\n\n\n\n\n\n Test Suresi: %f saniye %f salise\n\n\n ",t3saniye,t3salise);
/*ekrana saniye ve salise degeri yazilir*/
say4++;
printf(" 1-50.000 araliginda %d asal sayi bulunmustur\n\n",say4);
getchar();
return(0);
}