Algoritmos de Programación con Python

Capítulo 5. Más sobre ciclos

El último problema analizado en la unidad anterior decía:

Leer un número. Si el número es positivo escribir un mensaje Numero positivo, si el número es igual a 0 un mensaje Igual a 0, y si el número es negativo escribir un mensaje Numero negativo.

Se nos plantea a continuación un nuevo problema, similar al anterior:

Problema 5.1. El usuario debe poder ingresar muchos números y cada vez que se ingresa uno debemos informar si es positivo, cero o negativo.

Utilizando los ciclos definidos vistos en las primeras unidades, es posible preguntarle al usuario cada vez, al inicio del programa, cuántos números va a ingresar para consultar. La solución propuesta resulta:

def muchos_pcn():
    i = input("Cuantos numeros quiere procesar: ")
    for j in range(0,i):
        x = input("Ingrese un numero: ")
        if x > 0:
            print "Numero positivo"
        elif x == 0:
            print "Igual a 0"
        else:
            print "Numero negativo"

Su ejecución es exitosa:

>>> muchos_pcn()
Cuantos numeros quiere procesar: 3
Ingrese un numero: 25
Numero positivo

Ingrese un numero: 0
Igual a 0

Ingrese un numero: -5
Numero negativo
>>>

Sin embargo al usuario considera que este programa no es muy intuitivo, porque lo obliga a contar de antemano cuántos números va a querer procesar, sin equivocarse, en lugar de ingresar uno a uno los números hasta procesarlos a todos.


Copyright (c) 2011-2014 Rosita Wachenchauzer, Margarita Manterola, Maximiliano Curia, Marcos Medrano, Nicolás Paez. La copia y redistribución de esta página se permite bajo los términos de la licencia Creative Commons Atribución - Compartir Obras Derivadas Igual 3.0 siempre que se conserve esta nota de copyright.