Bonjours à tous, alors voilà j'ai un code que je trouve déjà assez optimisé, que je voudrais accélérer encore plus !
Je ne pensais pas ça possible, mais on m'as dit qu'ici vous saviez tout faire, alors voilà je le présente à vos yeux ébahis (ou presque...) !
Oui alors, c'est cracra y'as aucun contrôle sur les valeurs entrées, mais c'est pas grave :p
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 #include <stdio.h> #include <stdlib.h> #include <math.h> int main(int argc, char *argv[]) { unsigned long x,i,s,s2; for (x=strtol (argv[1], NULL, 10);x<=strtol (argv[2], NULL, 10);x++) { s=0; for (i=2;i<=sqrt(x);i++)if (x%i==0)s=s+i+x/i; s++; s2=0; for (i=2;i<=sqrt(s);i++)if (s%i==0)s2=s2+i+s/i; s2++; if (s2==x)printf("%d - %d\n",s,x); } printf ("Appuyez sur une touche pour contiunuer...\n"); getchar (); return 0; }
Merci d'avance :p
Partager