sábado, 16 de junio de 2018

Listar números pares en Python

Reto: Pares

Listar los números pares del 10 al 20.




Método 1

Utilizamos una estructura while con un condicional dentro que detecta los pares. Para ello empleamos la expresión x%2 que calcula el módulo o resto de dividir x entre 2. Si el resto es cero quiere decir que el número al dividirlo entre dos tiene división exacta y por tanto eso significa que es un número par.

x=10
while x<21:
  if x%2==0:
    print(x)
  x+=1


Método 2

En este caso utilizamos una estructura for. El comando range utiliza tres parámetros que son el inicio, el final y el paso. Ponemos paso 2 ya que únicamente queremos listar los pares. El paso (step) proporciona el incremento de la variable y acepta valores negativos para ir hacia atrás. También acepta valores decimales, por ejemplo, 0.1 lo que haría es proporcionar incrementos de la variable en décimas.

for x in range(10, 21, 2):
  print(x)


Método 3

Usando listas de comprensión (List Comprehensions).

print([i for i in range(10,21) if i%2==0])


Método 4

Creamos una función que retorna una lista de números pares. Devuelve cinco números que son los pares entre 10 y 20, ambos incluidos.


Los valores de n se multiplican por dos para conseguir que el resultado nos de números pares. Este es el motivo por el que inicializamos n con el valor 5, que es la mitad del número inicial que es 10.

En la última línea llamamos a la función generaPares pasándole el argumento m=10, ya que al doblarse el valor se llegará a 20.

def generaPares(m):
  n=5
  lista=[]
  while n<=m:
    lista.append(n*2)
    n+=1
  return lista
print(generaPares(10))

18 comentarios:

  1. print([2*i+10 for i in range(6) ])

    ResponderEliminar
  2. #lista
    x=list(range(10,22))
    print (x[0:22:2])
    #for
    for i in range(10,22,2):
    print (i)
    #while
    x=10
    while x<18:
    x+=1
    if x%2==0:
    print(x)
    break

    ResponderEliminar
  3. y si nos dan un número ``x´´ y necesitamos imprimir los pares desde 1 hasta ese número ´´x´´??

    ResponderEliminar
    Respuestas
    1. #Listar los números del 1 al x

      def run():
      x = int(input("Digite un número: "))
      print ("Lista los números del 1 al",x)
      for i in range(1, x+1, 1):
      print (i)
      run()

      Eliminar
  4. x = 1
    lista = [1]

    for i in range(1,64):
    x = x*2
    lista.append(x)
    print("Resultado : " + str(sum(lista)))

    ResponderEliminar
  5. for i in range(10,21):
    if i%2 == 0:
    print (i)

    ResponderEliminar
  6. Y si quiero que saque los números pares según la lista de números que ingrese el usuario?

    ResponderEliminar
    Respuestas
    1. lista1 = [3,5,6,8,10,11,14]
      pares1 = [n for n in lista1 if n%2== 0 ]
      print(pares1)

      Eliminar
  7. Y si nos dan una lista de impares [3,5,7] y nos dicen que hagamos una lista de pares a partir de la de impares?

    ResponderEliminar
  8. Hacer un algoritmo que le pregunte cuantos numeros pares desde el 2 desea
    el usuario y luego los imprima.

    ResponderEliminar
  9. se puede crear una función para obtener y separar los números pares y los impares de una lista?

    ResponderEliminar
  10. hola se puede hacer una lista de numeros pares e impares y dividir la lista dando numeros int para que se tranformen todos en numeros pares ?

    ResponderEliminar
  11. Escribir un programa que permita cargar en un arreglo de dos dimensiones de 4, 4 posiciones,
    números pares comenzando por el 12.

    ResponderEliminar
  12. Y si quiero ingresar por teclado el numero?

    ResponderEliminar
  13. Y si quiero que me diga cuántos números pares tiene un cierta cantidad y me muestre cuáles son

    ResponderEliminar
  14. Si nos piden Generar una lista con 10 números aleatorio de dos dígitos, de manera que en las posiciones pares aparezcan números pares y en las posiciones impares solo números impares.

    ResponderEliminar
  15. Diseñar un programa, que permita ingresar n números a una lista y luego muestre el número que se encuentra en la posición x, la posición x también debe ser ingresada por teclado.
    como lo puedo hacer.

    ResponderEliminar
  16. n=10
    while n<21:
    print(n)
    n=n+2

    ResponderEliminar