Paga en 4 cuotas sin intereses de $52.25

Antes:$249

Currency
$209

Paga en 4 cuotas sin intereses

Paga en 4 cuotas sin intereses
Suscríbete

Termina en:

18d

22h

28m

20s

1

Cómo contar cuantas veces aparece un número en otro número estilo histograma

“”"
Primero definimos una función que reciba un entero positivo y retorne un entero positivo acortado en un número es decir, si se recibe 7432 necesitamos que retorne 743, esto se logra haciendo la división entera del número entre 10, algebraicamente x // 10, por otro lado necesitamos almacenar cada número solo una vez, esto se logra con la operación x%10, por ejemplo el 7432%10 = 2, con esto podemos ir tomando los números a medida que van apareciendo, y con el método “get” del tipo dict podemos ir almacenando cada número solo una vez e ir contando su número de apariciones.

Está función aprovecha el hecho que los dict son mutables para hacer 3 operaciones a la vez, ir retornando los número recortados, buscar si aparece el número retirado, guardarlo si no existe y sumar uno cada vez que aparezca
"""
def contar(numero:int,diccionario:dict)->int:

digito = numero%10

diccionario[digito] = diccionario.get(digito,0)+1

return numero//10

“”"
Ahora usando la función definida creamos la interfaz con el usuario para pedir el número a validar:
-para esto pedimos el número y lo convertimos en entero.
-definimos nuestro diccionario (en el que se va a almacenar nuestro conteo.
-definimos un ciclo while en el que nos aseguramos que tomemos todos los números que componen el número a evaluar, puesto que cuando tengamos
una sola unidad su división entera entre 10 será 0, es decir 8//10 = 0, en ese momento nuestro ciclo se detendrá y habremos tomado cada número.
-en el cuerpo del while hacemos llamado de la función creada y usamos como parámetros el número ingresado por el usuario y el diccionario vacío
definido previamente
-esto nos retornará el número recortado, y por detrás habrá almacenado el primer número que apareció como llave y su valor será uno, ejemplo
si el usuario ingreso 4332, nuestra función en su primera iteración habrá guardado en la variable cuenta el 433 y en el diccionario habrá guardado el número “2” una vez, es decir, cuenta = 433 y conteo = {2:1)
-nuestro ciclo se repetirá hasta que contemos con la decena, porque el último número no entrará al ciclo por eso se añade la sentencia “conteo[cuenta] = conteo.get(cuenta,0)+1” como penúltima línea de código

  • por último ejecutamos un print de nuestro diccionario para evidenciar el resultado
  • por ejemplo si ingresamos el número 432843, nuestra respuesta debe ser {3:2,4:2,8:1,2:1}
    """
    cuenta = int(input("Digite cualquier numero para saber cuantas veces aparece cada número: "))

conteo = {}

while cuenta//10 >= 1:

cuenta = contar(cuenta,conteo)

conteo[cuenta] = conteo.get(cuenta,0)+1

print(conteo)

Escribe tu comentario
+ 2