- // horner.cpp : Defines the entry point for the console application.
- //
-
-
- #include <stdio.h>
- #include <math.h>
- #include <time.h>
-
- #define NBR_BOUCLE 100000 //Pas trop grand qd meme !
-
- long Normale (int j);
- long Horner (int j);
-
- int main(int argc, char* argv[])
- {
- printf("Calcule des performances avec et sans l'algorthime d'horner");
-
- printf("\n\n");
- long start = clock();
-
- long m = Normale(2);
- printf("\n--> Evecute en %ld(%ld)",clock()-start,m);
- long time1 = clock()-start;
- start = clock();
- long k = Horner(2);
-
- long time2 = clock()-start;
- printf("\n--> Evecute en %ld (%ld)",clock()-start,k);
-
- printf("\n==> On en conclue que l'algorythme d'horner permet de calculer des polyomes %lf foie plus rapidement\n",(float) time1/time2);
- return TRUE;
- }
-
- long Normale (int j)
- {
- long result = 0;
- for (long l = 0; l < NBR_BOUCLE; l++)
- {
- result = 0;
- for (int i = 0; i < 10; i++)
- {
- result += pow(j,i)*i;
- //printf("%ld",result);
- }
- }
- return result;
- }
-
- long Horner (int j)
- {
- long Result = 0;
- for (long l = 0; l < NBR_BOUCLE; l++)
- {
- Result = 0;
-
- for (int i = 10-1;i > 0; i--)
- {
- Result += i;
- Result *= j;
- }
- }
-
- return Result;
- }
// horner.cpp : Defines the entry point for the console application.
//
#include <stdio.h>
#include <math.h>
#include <time.h>
#define NBR_BOUCLE 100000 //Pas trop grand qd meme !
long Normale (int j);
long Horner (int j);
int main(int argc, char* argv[])
{
printf("Calcule des performances avec et sans l'algorthime d'horner");
printf("\n\n");
long start = clock();
long m = Normale(2);
printf("\n--> Evecute en %ld(%ld)",clock()-start,m);
long time1 = clock()-start;
start = clock();
long k = Horner(2);
long time2 = clock()-start;
printf("\n--> Evecute en %ld (%ld)",clock()-start,k);
printf("\n==> On en conclue que l'algorythme d'horner permet de calculer des polyomes %lf foie plus rapidement\n",(float) time1/time2);
return TRUE;
}
long Normale (int j)
{
long result = 0;
for (long l = 0; l < NBR_BOUCLE; l++)
{
result = 0;
for (int i = 0; i < 10; i++)
{
result += pow(j,i)*i;
//printf("%ld",result);
}
}
return result;
}
long Horner (int j)
{
long Result = 0;
for (long l = 0; l < NBR_BOUCLE; l++)
{
Result = 0;
for (int i = 10-1;i > 0; i--)
{
Result += i;
Result *= j;
}
}
return Result;
}