Générer les nombres premiers entre deux bornes
Résolu/Fermé
A voir également:
- Générer les nombres premiers entre deux bornes
- Deux comptes whatsapp - Guide
- Deux caractères manquent dans cette url ✓ - Forum Programmation
- Supprimer une conversation messenger pour les deux personnes ✓ - Forum Facebook
- Deux ecran pc - Guide
- Tableau croisé dynamique différence entre deux colonnes ✓ - Forum Excel
2 réponses
zipe31
Messages postés
36316
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
6 545
20 avril 2020 à 10:58
20 avril 2020 à 10:58
Salut,
À lire…
À lire…
Dalfab
Messages postés
703
Date d'inscription
dimanche 7 février 2016
Statut
Membre
Dernière intervention
1 mars 2023
100
20 avril 2020 à 13:55
20 avril 2020 à 13:55
Bonjour,
Tu proposes une solution. A nous de dire quoi? Qu'elle ne fonctionne pas?
Peut-être l'as-tu vu aussi. Elle énumère les nombre premiers vus (et ça n'est pas demandé) et quoi qu'on entre, elle finit par toujours écrire qu'il n'y a pas de nombre premier dans l'intervalle.
il faut juste ajouter que ce message ne doit être écrit que SI on est JAMAIS passé par le cas où la variable
Tu proposes une solution. A nous de dire quoi? Qu'elle ne fonctionne pas?
Peut-être l'as-tu vu aussi. Elle énumère les nombre premiers vus (et ça n'est pas demandé) et quoi qu'on entre, elle finit par toujours écrire qu'il n'y a pas de nombre premier dans l'intervalle.
il faut juste ajouter que ce message ne doit être écrit que SI on est JAMAIS passé par le cas où la variable
cvaut 2 après la boucle d'analyse. Peut-être as-tu besoin d'une variable supplémentaire pour se rendre compte qu'on a JAMAIS
cqui vaut 2.
Dalfab
Messages postés
703
Date d'inscription
dimanche 7 février 2016
Statut
Membre
Dernière intervention
1 mars 2023
100
>
ess
20 avril 2020 à 14:24
20 avril 2020 à 14:24
#include <stdio.h>
#include <stdlib.h>
#include <sdbool.h> // on a besoin d'une variable booléenne
int main()
{
int x,y,i,j,c; // dur dur, il faut se souvenir de toutes ces abréviations .....
bool nombre_premier_a_ete_vu = false; // on a besoin d'une variable booléenne (cette variable a un nom moins abrégé)
printf("entrer la borne inferieure :");
scanf("%d",&x);
printf("entrer la borne superieure :");
scanf("%d",&y);
for(i=x; i<=y; i++)
{
c=0;
for(j=1; j<=i; j++)
{
if(i%j==0)
{
c=c+1;
}
}
if(c==2)
{
printf("%d est premier\n",i);
.... on a donc vu un nombre premier ....
}
}
if ( .... on a jamais vu de nombre premier .... )
printf("\nIl n'y a pas de nombre premier entre %d et %d",x,y);
return 0;
}
ess
>
Dalfab
Messages postés
703
Date d'inscription
dimanche 7 février 2016
Statut
Membre
Dernière intervention
1 mars 2023
20 avril 2020 à 16:18
20 avril 2020 à 16:18
Merci beaucoup pour l'aide!!!!
Le programme marche maintenant !!
Le programme marche maintenant !!
#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
int main()
{
int x,y,i,j,c;
bool nombre_premier_a_ete_vu = false;
printf("entrer la borne inferieure :");
scanf("%d",&x);
printf("entrer la borne superieure :");
scanf("%d",&y);
for(i=x; i<=y; i++)
{
c=0;
for(j=1; j<=i; j++)
{
if(i%j==0)
{
c=c+1;
}
}
if(c==2)
{
printf("%d est premier\n",i);
nombre_premier_a_ete_vu=true;
}
}
if (nombre_premier_a_ete_vu==false)
printf("\nIl n'y a pas de nombre premier entre %d et %d",x,y);
return 0;
}