Ejercicio 04 — Pide un flotante e imprime su signo

Dificultad: verde · Módulo 02 (Condicionales)

Enunciado

Pide un flotante e imprime su signo (positivo, negativo o cero)

Diagramas de flujo

Diagrama de flujo (actividad) del ejercicio 04

Diagrama de flujo (grafo) del ejercicio 04

Cómo se resuelve

Averiguar el signo de un número es el caso de libro para tres ramas: positivo, negativo y el borde exacto del cero.

  1. n = float(input("Introduce un numero: ")) — usamos float(), no int(), porque el enunciado pide un decimal y queremos aceptar valores como 3.5 o -0.2.
  2. if n > 0: — estrictamente mayor que cero es “positivo”. El cero no entra aquí porque > es estricto.
  3. elif n < 0: — solo se evalúa si no era positivo; estrictamente menor que cero es “negativo”.
  4. else: signo = "cero" — descartados el positivo y el negativo, lo único que queda es exactamente cero, así que no hace falta condición. Guardamos la palabra en signo y la imprimimos una sola vez fuera del if.

Trampa habitual: colar el cero por usar >= o <=. Si escribieras if n >= 0, el cero se clasificaría como positivo y nunca alcanzarías la rama del cero. Para separar los tres casos, las comparaciones de los extremos deben ser estrictas.

Para practicar — cópialo y complétalo

Pega este esqueleto y completa los TODO. Es la mejor forma de aprender: inténtalo antes de mirar la solución.

# Curso de Python — Modulo 02: Condicionales
# Ejercicio 04 — PRACTICA (rellena los TODO)
# Enunciado: Pide un flotante e imprime su signo (positivo, negativo o cero)
# Dificultad: verde
# Ejecutar: python3 ej04_practica.py
 
# TODO: lee un numero flotante del usuario (usa float(), no int())
n = None
 
# TODO: clasifica n en tres casos: > 0, < 0, == 0
#       guarda el texto del signo en una variable 'signo'
signo = ""
 
# TODO: imprime signo

Solución — cópiala y ejecútala

# Curso de Python — Modulo 02: Condicionales
# Ejercicio 04 — MODELO (resuelto)
# Enunciado: Pide un flotante e imprime su signo (positivo, negativo o cero)
# Dificultad: verde
# Ejecutar: python3 ej04_modelo.py
 
n = float(input("Introduce un numero: "))
 
if n > 0:
    signo = "positivo"
elif n < 0:
    signo = "negativo"
else:
    signo = "cero"
 
print(signo)

Ejecútalo en el navegador

▶ Visualízalo paso a paso en Python Tutor — ve cómo cambian las variables línea a línea.

Cómo usarlo

Pega el código en un fichero y ejecútalo con tu toolchain habitual (o el botón de Ejecutar de tu editor). Antes de mirar la solución, intenta completar tú el esqueleto: es la mejor forma de aprender.

Conexiones