Programme c anne bixestile
Résolu
irihm
Messages postés
91
Date d'inscription
Statut
Membre
Dernière intervention
-
irihm Messages postés 91 Date d'inscription Statut Membre Dernière intervention -
irihm Messages postés 91 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je suis en train de créer un programme afin de savoir si une année est bissextile ou non.
Voici mon programme:
Le hic est que le programme s'arrête à la première boucle, en gros l'année que l'on rentre est toujours bissextile.
Donc si une âme (ou des) charitable(s) pouvait m'aider à résoudre ce problème, je vous en serait très reconnaissant.
Je suis en train de créer un programme afin de savoir si une année est bissextile ou non.
Voici mon programme:
#include <stdlib.h> int main(void) { int annee; //déclaration des variables printf("veuillez rentrer l'annee que vous voulez pour savoir si elle est bisextille ou non: "); scanf("%d",annee); //début du programme if (((( annee % 4) == 0) && (annee % 100 != 0)) || ((annee % 400 == 0)))) { printf("%d est bissextile\n",annee); } else { printf("%d n'est pas bissextile\n",annee); } return 0; }
Le hic est que le programme s'arrête à la première boucle, en gros l'année que l'on rentre est toujours bissextile.
Donc si une âme (ou des) charitable(s) pouvait m'aider à résoudre ce problème, je vous en serait très reconnaissant.
5 réponses
Bonjour,
Je crois que ceci est suffisant.
if (( annee % 4) == 0)
{
printf("%d est bissextile\n",annee);
}
else
{
printf("%d n'est pas bissextile\n",annee);
}
Je crois que ton problème vient du "&& (annee % 100 != 0)". Ca dépend aussi des valeurs avec lesquelles tu fais les tests.
Cordialement
Je crois que ceci est suffisant.
if (( annee % 4) == 0)
{
printf("%d est bissextile\n",annee);
}
else
{
printf("%d n'est pas bissextile\n",annee);
}
Je crois que ton problème vient du "&& (annee % 100 != 0)". Ca dépend aussi des valeurs avec lesquelles tu fais les tests.
Cordialement
Je suis oblige de mettre le 100 car si une année est divisible par 100 elle n'est pas bissextile sauf si elle est divisible par 400.
J'ai trouvé mon erreur un malheureux "&" oublier lors de la lecture des variable :/
Le programme fonctionne mais dès que je rentre une année comme 4000 alors la il n'y arrive plus car si une année est divisible par 4000 alors elle n'est pas bissextile.
Voici le nouveau programme que j'ai fait mais il considère l'année 4000 comme bissextile alors qu'elle ne l'est pas.
Le programme fonctionne mais dès que je rentre une année comme 4000 alors la il n'y arrive plus car si une année est divisible par 4000 alors elle n'est pas bissextile.
Voici le nouveau programme que j'ai fait mais il considère l'année 4000 comme bissextile alors qu'elle ne l'est pas.
#include <stdio.h> #include <stdlib.h> int main(void) { int annee; //déclaration des variables printf("veuillez rentrer l'annee que vous voulez pour savoir si elle est bisextille ou non: "); scanf("%d", &annee); //début du programme if (((( annee % 4) == 0) && (annee % 100 != 0) && (annee % 4000 != 0)) || ((annee % 400 == 0))) { printf("%d est bissextile",annee); } else { printf("%d n'est pas bissextile",annee); } return 0; }
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
C'est bon j'ai résolue mon problème, merci pour ton aide epoulos.
Voici le programme pour ceux qui cherche a comprendre leurs erreurs ^^
Voici le programme pour ceux qui cherche a comprendre leurs erreurs ^^
#include <stdio.h> #include <stdlib.h> int main(void) { int annee; //déclaration des variables printf("veuillez rentrer l'annee que vous voulez pour savoir si elle est bisextille ou non: "); scanf("%d", &annee); //début du programme if (((( annee % 4) == 0) && (annee % 100 != 0) ) || ((annee % 400 == 0) && (annee % 4000 != 0))) { printf("%d est bissextile",annee); } else { printf("%d n'est pas bissextile",annee); } return 0; }