Langage C, Nombre premier
Résolu
keurdange
Messages postés
720
Date d'inscription
Statut
Membre
Dernière intervention
-
keurdange Messages postés 720 Date d'inscription Statut Membre Dernière intervention -
keurdange Messages postés 720 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Un nombre est dit premier s'il est divisible par 1 et lui même. Exemple 3,5,7...
Ce programme est censé tester la primalité d'un nombre mais à l'exécution (je suis sous ubuntu), le curseur reviens juste à la ligne et rien ne se passe. Le voici:
#include<stdio.h>
int quotient,nbr,div,nb_div;
int nb_div=1;
main()
{
do
{
printf("Entrez la valeur (elle doit être positive) à tester: ");
scanf("%d", &nbr);
}
while(nbr<0);
for(div=2;div=nbr;div++)
{
if(nbr%div==0)
{
quotient=nbr/div;
if(quotient!=div)
nb_div=nb_div+2;
if(quotient==div)
nb_div=nb_div+1;
}
if(nbr%div!=0)
{
printf("%d n'est pas un diviseur de %d", div,nbr);
}
if(nb_div==2)
printf("%d est un nombre premier", nbr);
else
printf("%d n'est pas un nombre premier", nbr);
}
Un nombre est dit premier s'il est divisible par 1 et lui même. Exemple 3,5,7...
Ce programme est censé tester la primalité d'un nombre mais à l'exécution (je suis sous ubuntu), le curseur reviens juste à la ligne et rien ne se passe. Le voici:
#include<stdio.h>
int quotient,nbr,div,nb_div;
int nb_div=1;
main()
{
do
{
printf("Entrez la valeur (elle doit être positive) à tester: ");
scanf("%d", &nbr);
}
while(nbr<0);
for(div=2;div=nbr;div++)
{
if(nbr%div==0)
{
quotient=nbr/div;
if(quotient!=div)
nb_div=nb_div+2;
if(quotient==div)
nb_div=nb_div+1;
}
if(nbr%div!=0)
{
printf("%d n'est pas un diviseur de %d", div,nbr);
}
if(nb_div==2)
printf("%d est un nombre premier", nbr);
else
printf("%d n'est pas un nombre premier", nbr);
}
A voir également:
- Nombre premier algorithme
- Fonction nombre premier algorithme - Meilleures réponses
- Écrire un algorithme qui vérifie si un nombre est premier - Meilleures réponses
- Cheick yvann premier jour - Forum Wii U
- Nombre de jours entre deux dates excel - Guide
- Dans la présentation à télécharger, sans modifier leur position dans la feuille : passez le rectangle noir en arrière-plan. passez le rectangle bleu au premier plan. passez le rectangle hachuré au premier plan. quel mot apparaît ? - Forum LibreOffice / OpenOffice
- Nombre facile - Télécharger - Outils professionnels
- Quelqu'un regarde ma webcam ? - Forum Vos droits sur internet
3 réponses
Je n'arrive pas a trouver l'algorithme qui permet de voir si c'est un nombre premier mais j'ai testé le tient et il ne marche pas. Il me fait une boucle infini avec marqué a chaque fois ( quelque soit la valeur) "n'est pas un nombre premier".
De plus il manque une accolade a la fin. Il faut que tu casse la boucle un jour si non sa marche pas et il faut que tu refasse l'algorithme.
De plus il manque une accolade a la fin. Il faut que tu casse la boucle un jour si non sa marche pas et il faut que tu refasse l'algorithme.