Cortar numeros

Iniciado por alexis33de, 20 Julio 2010, 04:29 AM

0 Miembros y 1 Visitante están viendo este tema.

alexis33de

Hola tengo una pequeña duda , alguien sabe algun algoritmo para cortar numeros es decir por ejm tengo esta sucecion de numeros 0123456789 y quisiera dividirla en grupos de a 3 o de a 4 quedando a si
(0123)
(4567)
(89) ,etc
alguien sabe de q manera podria cortarlos?
SALUDOS

.:BlackCoder:.

Pero lo estas guardando en una cadena? O en una variable int?
"No te esfuerzes por saber mas, esfuerzate por ser el mejor en lo que sabes... Y asi sabras mas" .:BlackCoder:. jajaja




do-while

¡Buenas!

Si trabajas con numeros enteros, tienes algunas opciones.

1- Los operadores aritmeticos (recuerda como funciona una division)
2- Pasar el numero a una cadena y posteriormente manipularlo (te tocara estudiar las cadenas)
3- (No se me ocurria otra opcion, pero por si la habia, no he dicho que fuesen dos)  :silbar:

¡Saludos!
- Doctor, confundo los números y los colores.
- Vaya marrón.
- ¿Marrón? ¡Por el culo te la hinco!

[L]ord [R]NA

almacenalos en un string o en un array de chars

.:BlackCoder:.

#4
A mi se me ocurre dividirlo entre 10 a la i, q seria la varable de un for que vaya de 4 en 4... Un ejemplo...

Código (cpp) [Seleccionar]
int x=12345678;
   int y=x/1000;
   cout<<y<<endl;


Saludos...

EDITO:

Eso no se entiende  :xD lo hice mas o menos como te dije... lo q pasa es que soy mejor en la practica  :xD No puedo ponerte el codigo...

Pero lo que hice fue que al numero le reste el resultado de dividir el numero entre 10 a la 4... Es decir entre 10000 y multiplicado nuevamente entre 10000... El casting lo hace todo  :xD

Me llevo como 5 lineas  :xD pero si no pones avance no puedo poner  el code

Saludos
"No te esfuerzes por saber mas, esfuerzate por ser el mejor en lo que sabes... Y asi sabras mas" .:BlackCoder:. jajaja




leogtz

Yo sin dudarlo sería transformarlo a un array de caracteres y así procesarlo.
Código (perl) [Seleccionar]

(( 1 / 0 )) &> /dev/null || {
echo -e "stderrrrrrrrrrrrrrrrrrr";
}

http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com

Og.

Código (cpp) [Seleccionar]
int* parte(int valor, short int longitud)
{
   int *pedazos, l = 1, s = valor;
   while(longitud--)
       l *= 10;
   longitud=1;
   while(s/=l)
       longitud++;
   pedazos = new int[longitud];
   while(longitud--)
   {
       pedazos[longitud] = valor % l;
       valor /= l;
   }
   return pedazos;
}


si la usas así:
Código (cpp) [Seleccionar]
parte(0123456789, 4);

te devolverá un arreglo así:

[0 ][1     ][2     ]
[1 ][2345][6789]

el que te lo devuelva alrrevez (como lo pediste):

[0     ][1     ][2]
[1234][5678][9]

ya tu lo deberás modificar :P

es solo una idea. Ojala te sirve de algo, Saludos!
|-

Littlehorse

Definitivamente, leer el contenido en una cadena y luego procesarlo previa validación es la forma mas eficiente, estable, y segura de hacerlo.

Saludos
An expert is a man who has made all the mistakes which can be made, in a very narrow field.