Witam,
mam problem z pointerem *zeit
na funkcję isP
oraz z funkcją t
, która ma mierzyć czas działania funkcji isP
. Bardzo proszę o sprawdzenie kodu
#include <stdio.h>
#include <time.h>
#include <math.h>
int isP(int zahl){
int i, teiler = 0;
for(i = 1; zahl > i; i++){
if(zahl % i == 0)
teiler = teiler + i;
}
if(zahl == teiler)return 1;
else return 0;
}
double t(int (*zeit)(int)){
time_t begin, end;
begin = time (NULL);
int i;
(*zeit)(i);
end = time (NULL);
return difftime (end, begin);
}
int main(void){
int n;
printf(" Die perfekte Zahlen sind: ");
for(n = 1; n <= 500; n++){
if(isP(n) == 1)
printf(" %d;", n);
}
printf("\nDie Zeit bis 5te perfekte Zahl gefunden wurde: %3.12f sec", t(isP));
printf("\n\n");
return 0;
}