[Langage C]Nombre Premier
4 participants
Forum UVSQ :: DUT :: Informatique :: Programmation :: Programmes
Page 1 sur 1
[Langage C]Nombre Premier
Un petit programme en collaboration avec Nicolas:
Il s'agit d'un programme qui demande a l'utilisateur d'entrer un nombre et indique si le nombre entré est premier ou non.
Il s'agit d'un programme qui demande a l'utilisateur d'entrer un nombre et indique si le nombre entré est premier ou non.
- Spoiler:
- Code:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int diviseur;
int nombre;
int est_premier;
do
{
printf("entrer un nombre entier positif: ");
scanf("%d", &nombre);
}
while(nombre < 0)
for(diviseur = 2; diviseur < nombre; diviseur++)
{
if(nombre % diviseur == 0)
{
est_premier++;
}
}
if(est_premier > 0)
{
printf("Le nombre n'est pas premier...");
}
else
{
printf("Le nombre est premier");
}
return 0;
}
Re: [Langage C]Nombre Premier
Vous pouvez pas commentez vos codes? Ca fait longtemps que j'ai pas bosser sur les nombres premiers et je comprend pas tout votre raisonnement.
Je sais ce qu'est un nombre premier mais la méthode pour prouver que c'en est un ou non jm'en rapelle pas.
Je sais ce qu'est un nombre premier mais la méthode pour prouver que c'en est un ou non jm'en rapelle pas.
DamienRD- Développeur
- Messages : 59
Date d'inscription : 28/09/2011
Re: [Langage C]Nombre Premier
Ce programme marche, mais la boucle "for" peut rendre la chose très, très long à effectuer. Il y a moyen de raccourcir le tout considérablement en rajoutant une racine carré quelque part. Après, je vous laisse chercher.
Corentin - Rikiryou- Celui qui te modèrera
- Messages : 8
Date d'inscription : 28/09/2011
Age : 30
Re: [Langage C]Nombre Premier
Le programme est "loin" d'être fini, je l'ai posté un peu a l'arrache à la fin du TP de GL histoire de pas tout perdre :p
Je vais essayer de bosser dessus après avoir fini la "correction" du Défi n°2
Je vais essayer de bosser dessus après avoir fini la "correction" du Défi n°2
Re: [Langage C]Nombre Premier
Voilà ma version.
- Spoiler:
- Code:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
int i, diviseur,test;
int resscanf,nombre_donne;
do
{
printf("Quel nombre souhaitez vous tester?\n");
fflush(stdin);
resscanf=scanf("%d", &nombre_donne);
}while(nombre_donne<0 ||resscanf!=1);
test =0;
for(i=2; i<=sqrt(nombre_donne); i++)
{
if( (nombre_donne%i) ==0)
{
diviseur = i;
test = 1;
}
}
if(test==1 || nombre_donne==1)
{
printf("\nCe nombre n'est pas premier\n");
printf("\nIl est divisible par = %d\n", diviseur);
}
else
{
printf("Ce nombre est premier.");
};
return 0;
}
Nicolas- Noob en Informatique
- Messages : 6
Date d'inscription : 29/09/2011
Sujets similaires
» [LANGAGE C] Le GPS du champ !
» [LANGAGE C] Morpion
» [LANGAGE C] GrpB - Exercice 4 Td2
» [LANGAGE C]Salaire Net[V1.1]
» [LANGAGE C] La Calculatrice basique
» [LANGAGE C] Morpion
» [LANGAGE C] GrpB - Exercice 4 Td2
» [LANGAGE C]Salaire Net[V1.1]
» [LANGAGE C] La Calculatrice basique
Forum UVSQ :: DUT :: Informatique :: Programmation :: Programmes
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
|
|