Python - Año bisiesto

 
Vista:

Año bisiesto

Publicado por Jaime Zamorano (1 intervención) el 09/10/2020 22:27:16
cual es el error por lo que no me da el año bisiesto correctamente

1
2
3
4
5
año = int(input("dime un año: "))
if año % 4 == 0 and año % 100 != 0 and año % 400 == 0 :
    print("el año es bisiesto")
else:
    print("el año no es bisiesto")
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Anikollaste
Val: 570
Bronce
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Año bisiesto

Publicado por Anikollaste (118 intervenciones) el 09/10/2020 22:39:18
Hola Jaime!
No es recomendable usar caracteres latinos en las variables, funcioines..si no está codificado en utf-8 tendrás problemas..
Prueba esto, a mi me ha funcionado (Los años bisiestos son los que se pueden dividir entre 4"espero no equivocarme)
1
2
3
4
5
anyo = int(input("dime un año: "))
if anyo % 4 == 0 :
	print("el año es bisiesto")
else:
	print("el año no es bisiesto")
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Jaime
Val: 526
Bronce
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Año bisiesto

Publicado por Jaime (136 intervenciones) el 09/10/2020 23:31:05
Hola Compañero.
Lo que te pasa es que los años divisibles por 4 son bisiestos, pero cada 400 años se deben eliminar 3 bisiestos. Para ello, no son bisiestos los que se dividen por 100, menos los que se dividen por 400, que sí son bisiestos.
Esa es la razón por la que tienes que agregar más validaciones, y no solo la validación de "divisible por 4".
El problema de tu código era la validación "anyo%400" que tenias un "and" cuando era un "or".
1
2
3
4
5
anyo = int(input("dime un anyo: "))
    if anyo % 4 == 0 and anyo % 100 != 0 or anyo % 400 == 0 :
        print("el anyo es bisiesto")
    else:
        print("el anyo no es bisiesto")
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 62
Ha disminuido su posición en 2 puestos en Python (en relación al último mes)
Gráfica de Python

Año bisiesto

Publicado por Germán (16 intervenciones) el 10/10/2020 16:21:15
1
2
3
4
5
6
7
8
9
10
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import datetime
year  = int(input("dime un año: "))
 
try:
  x = datetime.datetime(year, 2, 29)
  print("el año es bisiesto")
except:
  print("el año no es bisiesto")
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar