Dev - C++ - Estaba haciendo un codigo para pasar numeros normales a romanos, pero al compilar no funciona

 
Vista:

Estaba haciendo un codigo para pasar numeros normales a romanos, pero al compilar no funciona

Publicado por Ayuda con un codigo que no funciona (2 intervenciones) el 13/01/2021 19:28:36
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
/* 9. Cambiar un numero entero con el mismo valor pero en romanos.
	M = 1000
	D = 500
	C = 100
	L = 50
	X = 10
	V = 5
	I = 1
*/
 
#include<iostream>
 
using namespace std;
 
int main (){
	int numero, unidades, decenas, centenas, millar;
 
	cout<<"Digite un numero: "; cin>>numero;
 
	//Suponiendo que el usuario elige el numero 2152: 2000 + 100 + 50 + 2
 
	numero = numero%10; numero /= 10; //unidades = 2 , numero = 215
	decenas = numero%10; numero /=10; //decenas = 5 , numero = 21
	centenas = numero%10; numero /=10; //centenas = 1 , numero = 2
	millar = numero %10; numero /=10; //millar = 2 , numero = 0
 
	switch(millar){
		case 1: cout<<"M"; break;
		case 2: cout<<"MM"; break;
		case 3: cout<<"MMM"; break;
	}
 
	switch(centenas){
		case 1: cout<<"C"; break;
		case 2: cout<<"CC"; break;
		case 3: cout<<"CCC"; break;
		case 4: cout<<"CD"; break;
		case 5: cout<<"D"; break;
		case 6: cout<<"DC"; break;
		case 7: cout<<"DCC"; break;
		case 8: cout<<"DCCC"; break;
		case 9: cout<<"CM"; break;
	}
 
	switch(decenas){
		case 1: cout<<"X"; break;
		case 2: cout<<"XX"; break;
		case 3: cout<<"XXX"; break;
		case 4: cout<<"XL"; break;
		case 5: cout<<"L"; break;
		case 6: cout<<"LX"; break;
		case 7: cout<<"LXX"; break;
		case 8: cout<<"LXXX"; break;
		case 9: cout<<"XC"; break;
	}
 
	switch(unidades){
		case 1: cout<<"I"; break;
		case 2: cout<<"II"; break;
		case 3: cout<<"III"; break;
		case 4: cout<<"IV"; break;
		case 5: cout<<"V"; break;
		case 6: cout<<"VI"; break;
		case 7: cout<<"VII"; break;
		case 8: cout<<"VIII"; break;
		case 9: cout<<"IX"; break;
	}
 
	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
Imágen de perfil de Rodrigo
Val: 1.755
Plata
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Estaba haciendo un codigo para pasar numeros normales a romanos, pero al compilar no funciona

Publicado por Rodrigo (539 intervenciones) el 13/01/2021 22:44:16
El programa no parece asignarle nunca nada a la variable "unidades".
Que error te da al compilar? En que linea?
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

Estaba haciendo un codigo para pasar numeros normales a romanos, pero al compilar no funcion

Publicado por Ayuda con un codigo que no funciona (2 intervenciones) el 14/01/2021 20:51:22
Tenés razón, eso era todo. Ahora que le asigné un valor funciona perfecto. 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