Connexion
Sujets similaires
Jouer avec le chat de forum
Meilleurs posteurs
Admin (122) | ||||
waaaw (15) | ||||
sonia (8) | ||||
ghof_kaka (8) | ||||
bb (3) | ||||
imene (3) | ||||
soumaya (3) | ||||
imen mabrouk (2) | ||||
walid (2) | ||||
ghadouch 12 (1) |
Marque-page social
Conservez et partagez l'adresse de Futurs ingénieurs sur votre site de social bookmarking
un programme C qui affiche la suite des nombres premiers
2 participants
Page 1 sur 1
un programme C qui affiche la suite des nombres premiers
je cherche d'écrire un programme C qui affiche la suite des
nombres premiers par la méthode du crible d’Erathostène en utilisant la
processus maitre/esclave
nombres premiers par la méthode du crible d’Erathostène en utilisant la
processus maitre/esclave
waaaw- Messages : 15
Réputation : 3
Date d'inscription : 01/10/2010
voir ca
#include <stdio.h>
int main()
{
size_t size;
int *t;
int i, k;
FILE *fp = fopen("nb.txt", "w");
/* Allocation */
printf("Taille du tableau :\n");
scanf("%d", &size);
t = (int *)malloc(size * sizeof(int));
if(t == NULL){ printf("Memoire insuffisante.\n"); exit(getch()); }
/* Initialisation */
for(i = 0; i < size; i++) t[i] = i+1;
*t = 0;
/* On remplace par 0, tout nombre non premier */
for(i = 2; i <= size; i++)
for(k = i; (k < size) && ( t[i-1] != 0 ); k++)
if(t[k] != 0)
if( (t[k] % i) == 0 ) t[k] = 0;
/* Affichage */
for(i = 0; i < size; i++)
{
if(i % 10 == 0) printf("\n");
printf("%03d ", t[i]);
}
/* Log dans un fichier */
if(fp == NULL){ printf("Erreur d'écriture.\n"); exit(getch()); }
printf(fp, "Nombres premiers de 1 à %d :\n", size);
for(i = 0; i < size; i++)
{
if( (i % 10 == 0) && (i != 0) ) fprintf(fp, "\n");
if(t[i] != 0) fprintf(fp, "%d ", t[i]);
}
close(fp);
getch();
return 0;
}
int main()
{
size_t size;
int *t;
int i, k;
FILE *fp = fopen("nb.txt", "w");
/* Allocation */
printf("Taille du tableau :\n");
scanf("%d", &size);
t = (int *)malloc(size * sizeof(int));
if(t == NULL){ printf("Memoire insuffisante.\n"); exit(getch()); }
/* Initialisation */
for(i = 0; i < size; i++) t[i] = i+1;
*t = 0;
/* On remplace par 0, tout nombre non premier */
for(i = 2; i <= size; i++)
for(k = i; (k < size) && ( t[i-1] != 0 ); k++)
if(t[k] != 0)
if( (t[k] % i) == 0 ) t[k] = 0;
/* Affichage */
for(i = 0; i < size; i++)
{
if(i % 10 == 0) printf("\n");
printf("%03d ", t[i]);
}
/* Log dans un fichier */
if(fp == NULL){ printf("Erreur d'écriture.\n"); exit(getch()); }
printf(fp, "Nombres premiers de 1 à %d :\n", size);
for(i = 0; i < size; i++)
{
if( (i % 10 == 0) && (i != 0) ) fprintf(fp, "\n");
if(t[i] != 0) fprintf(fp, "%d ", t[i]);
}
close(fp);
getch();
return 0;
}
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum