elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Separar dígitos individuales de una cifra de 4
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Separar dígitos individuales de una cifra de 4  (Leído 8,919 veces)
TØtti

Desconectado Desconectado

Mensajes: 13


Ver Perfil
Separar dígitos individuales de una cifra de 4
« en: 5 Agosto 2016, 20:32 pm »

Muy buenas, soy nuevo en C++ asi que me estaba leyendo el libro de deitel (9novena edición) pero me ha mandado a realizar un ejercicio en la que no logro comprender como hacerlo. El siguiente post es lo mismo que yo busco y además le brindan una solución: http://foro.elhacker.net/programacion_cc/separar_numeros_en_digitos_individuales-t406137.0.html

Simplemente es separar cada numero o dígito de su cifra entera (1234 a 1-2-3-4). Yo vi el algoritmo que ponen allí en ese topic, pero no logro comprenderlo o el por qué. Es decir, yo entiendo sobre " C|D|U" pero no sobre lo otro.

Asi que si alguien tiene la bondad de brindarme otra explicación distinta a la que dan allí, estaré agradecido. Gracias.


En línea

ivandiaz

Desconectado Desconectado

Mensajes: 5



Ver Perfil WWW
Re: Separar dígitos individuales de una cifra de 4
« Respuesta #1 en: 5 Agosto 2016, 20:49 pm »

Es bastante simple en realidad:
Si n es un numero entero, entonces (n % 10) es su ultima cifra.

Ejemplo:
1235 % 10 == 5
12  % 10 == 2

Y (n /10) es el numero menos el ultimo digito (puesto que la operacion da entero)
1235 / 10 == 123
12 / 10 == 1

Entonces esto este codigo muestra los 6 digitos de n:

Código:
int n = 123456;

while (n != 0) {
    cout << n % 10 << endl;
    n = n/10;
}

Podes ver el ejemplo funcionando aca:
http://ideone.com/ELLiRB


En línea

TØtti

Desconectado Desconectado

Mensajes: 13


Ver Perfil
Re: Separar dígitos individuales de una cifra de 4
« Respuesta #2 en: 5 Agosto 2016, 21:51 pm »

ah vale. Aún no uso bucles, asi que la hice asi

Código
  1. int a,b,c,d;
  2. int valor;
  3.  
  4. main()
  5. {
  6.    cout<<"introduce un valor de 4 cifras: "<<endl;
  7.    cin>>valor;
  8.  
  9.    a = valor / 1000; // primer digito
  10.    b = (valor / 100) % 10; // segundo digito
  11.    c = (valor / 10) % 10; // tercer digito
  12.    d = valor % 10; // ultimo digito
  13.  
  14.    cout<<a<<b<<c<<d;
  15.  
  16.    return 1;
  17. }
  18.  

Muchas gracias.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Separar digitos de un numero
Programación C/C++
vaXy 6 36,356 Último mensaje 1 Diciembre 2012, 16:17 pm
por cypascal
Separar numeros en digitos individuales
Programación C/C++
dmacias 8 157,197 Último mensaje 14 Noviembre 2018, 02:45 am
por Beginner Web
Funcion Separar Digitos de un numero
Programación C/C++
Ja_90 3 7,204 Último mensaje 1 Octubre 2015, 01:21 am
por 0xFer
¿Cómo separar un numero binario en digitos?
Programación C/C++
Sherboc 7 9,843 Último mensaje 24 Junio 2016, 02:30 am
por AlbertoBSD
Separar digitos.
Programación C/C++
grossgore 1 2,206 Último mensaje 15 Febrero 2017, 01:16 am
por engel lex
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines