Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Ayuda, mi contador no va de 1 en 1
#1
Estimados, recurro nuevamente a ustedes.
Estoy tratando de resolver un problema en un ejercicio que consta de dos partes.
La primera es ver si cumple con la condicion de ser pandigital, es decir, si cuenta con los numeros del 0 al 9.
Hasta ahi no hay problema.
La segunda parte es ver si los ultimos 3 digitos componen un numero primo.
El asunto aqui es que hago el contador para probar dividirlo y el contador aumenta en forma exponencial y no 1 + 1.
Copio y pego lo que he hecho a ver si alguien detecta mi error.

# pandigital - contiene todos los numeros del 0 al 9 *- 0123456789 -*
# ver si n es pandigital, y si sus ultimas 3 cifras con primos


def panprimo(n):
    # a parir de aca validar si es pandigital
    numero = str(n)
    if len(numero) < 10:
        pandigital = False
    else:
        lista = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"]
        for x in numero:
            if x in lista:
                lista.remove(x)
        if len(lista) == 0:
            pandigital = True
        else:
            pandigital = False
    print("Pandigital ", pandigital)
    numpri = n%1000
    i = 2
    print(numpri)
    while i<= numpri:
        if (numpri % i) == 0:
            print ("i vale ", i)
            primo = False
        else:
            primo = True
        i+=1
    print("primo ", primo)
    if pandigital and primo is True:
        return True
    else:
        return False
print(panprimo(12340567894))


a continuacion pego lo que arrojan los print

Pandigital  True
894

i vale  2

i vale  3

i vale  6

i vale  149

i vale  298

i vale  447

i vale  894

primo  False
False



Desde ya muchas gracias!!!!!
Responder


Mensajes en este tema
Ayuda, mi contador no va de 1 en 1 - por AlexBo - 08-09-2021, 08:54 PM
RE: Ayuda, mi contador no va de 1 en 1 - por AlexBo - 09-09-2021, 11:06 PM

Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)