diff --git a/a.out b/a.out old mode 100644 new mode 100755 index c3c2da0..5a00d4f Binary files a/a.out and b/a.out differ diff --git a/ansi.c b/ansi.c new file mode 100644 index 0000000..cd235ac --- /dev/null +++ b/ansi.c @@ -0,0 +1,24 @@ +#include +#include +#include +#include +#define erreur(...) { fprintf(stderr,__VA_ARGS__) ; exit(EXIT_FAILURE); } +int32_t premier(uint32_t n){ +bool crible[n*n+1]; +for(uint32_t i=0;i<=n*n;i++) crible[i]=true; +for(uint32_t i=2;i<=n;i++) + if(crible[i]){ + uint32_t j=i*i; + while(j<=n*n){ crible[j]=false; j += i; } + } +int32_t result=-1; +for(int32_t i=n*n;i>=0;i--) if(crible[i]){ result=i; break; } +return result; +} +int main(void){ +uint32_t n; +if(scanf("%d",&n)!=1) erreur("Echec de lecture du nombre\n"); +printf("premier -> %d\n",premier(n)); +return 0; +} + diff --git a/derniers_exos.c b/derniers_exos.c new file mode 100644 index 0000000..2cb1593 --- /dev/null +++ b/derniers_exos.c @@ -0,0 +1,28 @@ +#include +#include +#include +#include +#define erreur(message) { fprintf(stderr,message) ; exit(EXIT_FAILURE); } +int premier(int n){ +int taille=n*n+1; +int result=-1; + int *crible = malloc( taille * sizeof(int) ); +int i; +for(i=0;i<=n*n;i++) crible[i]=true; +for(i=2;i<=n;i++) + if(crible[i]){ + int j=i*i; + while(j<=n*n){ crible[j]=false; j += i; } + } +for(i=n*n;i>=0;i--) if(crible[i]){ result=i; break; } +return result; +} + +int main(void){ +int n; +if(scanf("%d",&n)!=1) erreur("Echec de lecture du nombre\n"); +printf("premier -> %d\n",premier(n)); +return 0; +} + + -- libgit2 0.21.2