Generar un número aleatorio entero entre 1 y 10.
import random # así importamos toda la librería random
print(random.randint(1, 10))
from random import randint # así importamos solo la función randint de la librería random
print(randint(1, 10))
import random
random.seed()
random.randrange(1, 11)
3
import random
random.choice(range(10, 11))
10
Usando la librería NumPy
import numpy as np
print(np.random.randint(1, 11, size=5)) # array de 5 elementos con repetición
np.random.randint(1, 11)
[8 2 8 7 5]
int
Utilizando una función.
import random
def generar_numero_aleatorio():
return random.randint(1, 10)
numero = generar_numero_aleatorio()
print(numero)
5
Utilizando POO.
import random
class GeneradorNumeroAleatorio:
def __init__(self):
self.numero_aleatorio = random.randint(1, 10)
def obtener_numero_aleatorio(self):
return self.numero_aleatorio
generador = GeneradorNumeroAleatorio()
numero = generador.obtener_numero_aleatorio()
print(numero)
6
Calcular los divisores de un número.
def frac(a,b): # función que calcula la parte fraccionaria
return (a/b) - int(a/b)
def main():
n = 10 # vamos a calcular los divisores de n
for i in range(1, n+1):
if frac(n, i) < 1e-9: #ponemos <1e-9 y no ==0 para evitar posibles errores de redondeo al dividir
print(i, end=", ")
main()
1, 2, 5, 10,
Cuando el módulo de dividir dos números es cero quiere decir que la división es exacta.
def divisores(n):
for i in range(1, n + 1):
if n % i == 0:
print(i)
divisores(10)
1 2 5 10
Utilizando POO.
class Divisores:
def __init__(self, n):
self.n = n
def calcular_divisores(self):
divisores = []
for i in range(1,self.n+1):
if self.n % i == 0:
divisores.append(i)
return divisores
d = Divisores(10)
print(d.calcular_divisores())
[1, 2, 5, 10]