-1
votes

Si sinon ne fonctionne pas correctement dans les fonctions dans le programme Python dans la création de programme Bissand Année

def is_leap(year):
    if year % 4 == 0:
        print("year is a leap year")
    elif year % 400 == 0:
        print("year is a leap year")
    elif year % 100 == 0:
        print("not a leap year")
    else:
        print("Not a leap year")

is_leap(2019)

here i have entered the year 2019 which is not leap year but my program is not giving me out put of that if you enter a non leap year it want give out put as not a leap year.
if there is any type of mistake in my program regarding any thing please tell me.
this are considerations in bellow points using which i created the program -->
The year must be evenly divisible by 4;
If the year can also be evenly divided by 100, it is not a leap year;
unless...
The year is also evenly divisible by 400. Then it is a leap year.

2 commentaires

Vous avez probablement oublié Imprimer dans le el / code>: Imprimer ("pas une année saut")


Votre succursale d'autre produit une chaîne et le jette, ajoutez-le, ajoutez Imprimer juste avant le premier support d'ouverture pour appeler la fonction.


3 Réponses :


0
votes

Vous avez oublié d'écrire Imprimer dans la section sinon . Devrait être: xxx


1 commentaires

Aucune chance pour "2019" d'entrer dans elif : 2019% 4 = 3; 2019% 400 = 19; 2019% 100 = 19



1
votes

Tout d'abord, vous avez des erreurs dans votre code, afin de vérifier la hiérarchie ou non une année est une année de saut que vous devriez suivre:

  1. Si une année est uniformément divisible par 4 moyens sans reste, passez à l'étape suivante. S'il n'est pas divisible par 4. Ce n'est pas une année bissextile. Par exemple: 1997 n'est pas une année bissextile.
  2. Si une année est divisible par 4, mais pas à 100. Par exemple: 2012, il s'agit d'une année bissextile. Si une année est divisible par 4 et 100, passez à l'étape suivante.
  3. Si une année est divisible de 100, mais pas de 400. Par exemple: 1900, il ne s'agit pas d'une année bissextile. Si une année est divisible par les deux, il s'agit d'une année bissextile. SO 2000 est une année bissextile.

    Vous devez donc utiliser des déclarations if-else . Examinez le code simple suivant et essayez de déduire où vous avez mal fait ce qui vous a mal fait: xxx

    et comme @Alexander Kononenko a dit, vous manquiez un imprimé dans votre sinon .


2 commentaires

et pour m'apprécier quelque chose que je n'avais pas connu sur le débordement de la pile


@Nimeshjoshi Vous avez supprimé l'accepter de ma réponse à une réponse qui est une simplification des cas si. Quel est le rationnel derrière elle? Et le code n'est pas correct, essayez de saisir 1900.



0
votes

Peut-être essayer comme ça? xxx


0 commentaires