Python - ¿Por qué el algotimo que implemento no logra separar por dígitos del siguiente número?

 
Vista:
sin imagen de perfil
Val: 6
Ha disminuido su posición en 20 puestos en Python (en relación al último mes)
Gráfica de Python

¿Por qué el algotimo que implemento no logra separar por dígitos del siguiente número?

Publicado por Waldo Gustavo (2 intervenciones) el 20/03/2021 07:24:54
Soy nuevo en la programación, y estoy empezando en c++, muy seguido cuando necesito implementar un algoritmo para separar un numero entero por sus digitos utilizo el siguiente algoritmo, pero para un reciente problema que quería resolver implementando este algoritmo hubo un problema, y es que por algún motivo que hasta ahora no logro comprender al introducir el número 3030303030, el algoritmo me suelta otros números en vez de mostrar el número por sus correspondientes dígitos, lo curioso es que si elimino el último cero del número 303030303 el algoritmo funciona como debe. ¿Cuál es el problema, cómo lo arreglo?

Captura-de-pantalla-484
Captura-de-pantalla-485
Abajo dejo el algoritmo para que lo puedan revisar:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include <iostream>
 
using namespace std;
 
int main()
 
{
    int numero=0,temporal=0,divisor=1;
 
        cin>>numero;
        temporal=numero;
        while(temporal/10!=0)
        {
            temporal=temporal/10;
            divisor=divisor*10;
        }
        while(divisor!=0)
        {
            cout<<numero/divisor;
            if(divisor/10!=0)
            {
                cout<<",";
            }
            numero=numero%divisor;
            divisor=divisor/10;
        }
    cout<<"\n";
    return 0;
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 2.808
Oro
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

¿Por qué el algotimo que implemento no logra separar por dígitos del siguiente número?

Publicado por tincopasan (1082 intervenciones) el 20/03/2021 11:26:50
este es el foro de python, pero estás teniendo problemas con la asignación de las variables, deberías leer sobre el alcance de los valores en ellas, en este caso creo lo solucionarías al valor 3030303030 declarando así la variable:
1
long long numero=0;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 6
Ha disminuido su posición en 20 puestos en Python (en relación al último mes)
Gráfica de Python

¿Por qué el algotimo que implemento no logra separar por dígitos del siguiente número?

Publicado por Waldo Gustavo (2 intervenciones) el 21/03/2021 02:25:02
Gracias por el datos, XD también soy nuevo en la página así que recién me di cuenta con lo de los temas del foro, tu consejo ayudo, así que muchas gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar