Volver al índiceSoluciones de los ejercicios - La función range()

Se ofrecen a continuación unas posibles soluciones de los ejercicios de la función range().


range() 01

# -*- coding: cp1252 -*-
print range(10)
print range(4, 11)
print range(-6, 1)
print range(-56, -49)
print range(1, 19, 2)
print range(-6, 12, 2)
print range(100, 1100, 100)
print range(10, 3, -1)
print range(-50, -57, -1)
print range(17, 0, -2)
print range(1000, 0, -100)

range() 02

# -*- coding: cp1252 -*-
numero = int(raw_input("Escriba un número entero mayor que 0: "))

if numero <= 0:
    print "¡Le he pedido un número entero mayor que 0!"
else:
    print range(numero + 1)
    print range(numero, -1, -1)
    print range(1, numero)
    print range(numero - 1, 0, -1)
    print range(0, numero) + range(numero, -1, -1)

range() 03

# -*- coding: cp1252 -*-
numero = int(raw_input("Escriba un número entero: "))

if numero > 0:
    print range(0, numero + 1)
else:
    print range(0, numero - 1, -1)

range() 04

# -*- coding: cp1252 -*-
numero1 = int(raw_input("Escriba un número entero: "))
print "Escriba un número entero mayor que", numero1, ":",
numero2 = int(raw_input())

if numero2 <= numero1:
    print "¡Le he pedido un número mayor que", numero1, "!"
else:
    print range(numero1, numero2 + 1)
    print range(numero2 - 1, numero1 - 1, -1)
    print range(numero1 + 1, numero2 + 2)
    print range(numero2 - 1, numero1, -1)
    print range(numero1, numero2) + range(numero2, numero1 - 1, -1)

range() 05

# -*- coding: cp1252 -*-
inicial = int(raw_input("Escriba el número entero inicial: "))
final = int(raw_input("Escriba el número entero final: "))

if final > inicial:
    print range(inicial, final + 1)
else:
    print range(inicial, final - 1, -1)

range() 06

# -*- coding: cp1252 -*-
numero1 = int(raw_input("Escriba un número entero: "))
numero2 = int(raw_input("Escriba otro número entero: "))

if numero2 > numero1:
    print range(numero1 + 1, numero2)
else:
    print range(numero2 + 1, numero1)

range() 07

# -*- coding: cp1252 -*-
inicial = int(raw_input("Escriba el número entero inicial: "))
cantidad = int(raw_input("Escriba cuántos valores quiere: "))

if cantidad < 0:
    print "¡La cantidad de valores no puede ser negativa!"
else:
    print range(inicial, inicial + cantidad)

range() 08

Si el número inicial es impar, debe empezar por el número siguiente. La lista debe contar de dos en dos y terminar antes del siguiente al valor final.

# -*- coding: cp1252 -*-
inicial = int(raw_input("Escriba el número entero inicial: "))
final = int(raw_input("Escriba el número entero final: "))

if final < inicial:
    print "¡El número final debe ser mayor que el inicial!"
else:
    if inicial % 2:
        inicial = inicial + 1
    print range(inicial, final + 1, 2)

range() 09

# -*- coding: cp1252 -*-
inicial = int(raw_input("Escriba el número entero inicial: "))
final = int(raw_input("Escriba el número entero final: "))
paso = int(raw_input("¿De qué número quiere los múltiplos?: "))

if final < inicial:
    print "¡El número final debe ser mayor que el inicial!"
elif paso <= 0:
    print "¡Los múltiplos deben ser de un número entero mayor que cero!"
else:
    if inicial % paso:
        inicial2 = inicial // paso * paso + paso
    else:
        inicial2 = inicial
    print "Entre", inicial, "y", final, "hay", \
          len(range(inicial2, final + 1, paso)), "múltiplos de", paso
    print range(inicial2, final + 1, paso)
Esta página forma parte del curso "Introducción a la programación con Python" disponible en http://www.mclibre.org
Autor: Bartolomé Sintes Marco
Última modificación de esta página: 16 de mayo de 2012

Creative Commons License
Esta obra está bajo una licencia de Creative Commons.