Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: daxelmejor en 17 Mayo 2010, 14:35 pm



Título: ayuda como puedo reducir esta codificacion
Publicado por: daxelmejor en 17 Mayo 2010, 14:35 pm
ector de 10 posiciones e ingresar x teclado ese vector y en otro vector hacer q se asignen el numero ingresado en letras es de 1 al 100
quiero reducirlo porqeu esta muy largo ojala me puedan ayudar
int main() {
const int d=10;
const char x=20;
char m1
  • ="Uno";
char m2
  • ="Dos";
char m3
  • ="Tres";
char m4
  • ="Cuatro";
char m5
  • ="Cinco";
char m6
  • ="Seis";
char m7
  • ="Siete";
char m8
  • ="Ocho";
char m9
  • ="Nueve";
char m10
  • ="Diez";
char m11
  • ="Once";
char m12
  • ="Doce";
char m13
  • ="Trece";
char m14
  • ="Catorce";
char m15
  • ="Quince";
char m16
  • ="Diesiseis";
char m17
  • ="Diesisiete";
char m18
  • ="Diesiocho";
char m19
  • ="Diesinueve";
char m20
  • ="Veinte";
char m21
  • ="Veinte y Uno";
char m22
  • ="Veinte Y dos";
char m23
  • ="Veinte y Tres";
char m24
  • ="Veinte y Cuatro";
char m25
  • ="Veinte y Cinco";
char m26
  • ="Veinte y Seis";
char m27
  • ="Veinte y Siete";
char m28
  • ="Veinte y Ocho";
char m29
  • ="Veinte y Nueve";
char m30
  • ="Treinta";
char m31
  • ="Treinta y Uno";
char m32
  • ="Treinta Y dos";
char m33
  • ="Treinta y Tres";
char m34
  • ="Treinta y Cuatro";
char m35
  • ="Treinta y Cinco";
char m36
  • ="Treinta y Seis";
char m37
  • ="Treinta y Siete";
char m38
  • ="Treinta y Ocho";
char m39
  • ="Treinta y Nueve";
char m40
  • ="Cuarenta";
char m41
  • ="Cuarenta y Uno";
char m42
  • ="Cuarenta Y dos";
char m43
  • ="Cuarenta y Tres";
char m44
  • ="Cuarenta y Cuatro";
char m45
  • ="Cuarenta y Cinco";
char m46
  • ="Cuarenta y Seis";
char m47
  • ="Cuarenta y Siete";
char m48
  • ="Cuarenta y Ocho";
char m49
  • ="Cuarenta y Nueve";
char m50
  • ="Cincuenta";
char m51
  • ="Cincuenta y Uno";
char m52
  • ="Cincuenta Y dos";
char m53
  • ="Cincuenta y Tres";
char m54
  • ="Cincuenta y Cuatro";
char m55
  • ="Cincuenta y Cinco";
char m56
  • ="Cincuenta y Seis";
char m57
  • ="Cincuenta y Siete";
char m58
  • ="Cincuenta y Ocho";
char m59
  • ="Cincuenta y Nueve";
char m60
  • ="Sesenta";
char m61
  • ="Sesenta y Uno";
char m62
  • ="Sesenta Y dos";
char m63
  • ="Sesenta y Tres";
char m64
  • ="Sesenta y Cuatro";
char m65
  • ="Sesenta y Cinco";
char m66
  • ="Sesenta y Seis";
char m67
  • ="Sesenta y Siete";
char m68
  • ="Sesenta y Ocho";
char m69
  • ="Sesenta y Nueve";
char m70
  • ="Setenta" ;
char m71
  • ="Setenta y Uno";
char m72
  • ="Setenta Y dos";
char m73
  • ="Setenta y Tres";
char m74
  • ="Setenta y Cuatro";
char m75
  • ="Setenta y Cinco";
char m76
  • ="Setenta y Seis";
char m77
  • ="Setenta y Siete";
char m78
  • ="Setenta y Ocho";
char m79
  • ="Setenta y Nueve";
char m80
  • ="Ochenta"  ;
char m81
  • ="Ochenta y Uno";
char m82
  • ="Ochenta Y dos";
char m83
  • ="Ochenta y Tres";
char m84
  • ="Ochenta y Cuatro";
char m85
  • ="Ochenta y Cinco";
char m86
  • ="Ochenta y Seis";
char m87
  • ="Ochenta y Siete";
char m88
  • ="Ochenta y Ocho";
char m89
  • ="Ochenta y Nueve";
char m90
  • ="Noventa";
char m91
  • ="Noventa y Uno";
char m92
  • ="Noventa Y dos";
char m93
  • ="Noventa y Tres";
char m94
  • ="Noventa y Cuatro";
char m95
  • ="Noventa y Cinco";
char m96
  • ="Noventa y Seis";
char m97
  • ="Noventa y Siete";
char m98
  • ="Noventa y Ocho";
char m99
  • ="Noventa y Nueve";
char m100
  • ="Cien";
int j;
int n;
int m[d];
for (j=0;j<=9;j++) {
cin>>n;
m[j]=n;
}
for (j=0;j<=9;j++) {
   if (m[j]==1) {
   cout<< m[j] <<" "  <<m1 <<endl;
   }
   if (m[j]==2) {
   cout<< m[j] <<" " <<m2 <<endl;
   }
   if (m[j]==3) {
   cout<< m[j] <<" "  <<m3 <<endl;
   }
   if (m[j]==4) {
   cout<< m[j] <<" " <<m4 <<endl;
   }
   if (m[j]==5) {
   cout<< m[j] <<" " <<m5 <<endl;
   }
   if (m[j]==6) {
   cout<< m[j] <<" " <<m6 <<endl;
   }
   if (m[j]==7) {
   cout<< m[j] <<" " <<m7 <<endl;
   }
   if (m[j]==8) {
   cout<< m[j] <<" " <<m8 <<endl;
   }
   if (m[j]==9) {
   cout<< m[j] <<" " <<m9 <<endl;
   }
   if (m[j]==10) {
   cout<< m[j] <<" " <<m10 <<endl;
   }

   if (m[j]==11) {
   cout<< m[j] <<" "  <<m11 <<endl;
   }
   if (m[j]==12) {
   cout<< m[j] <<" " <<m12 <<endl;
   }
   if (m[j]==13) {
   cout<< m[j] <<" "  <<m13 <<endl;
   }
   if (m[j]==14) {
   cout<< m[j] <<" " <<m14 <<endl;
   }
   if (m[j]==15) {
   cout<< m[j] <<" " <<m15 <<endl;
   }
   if (m[j]==16) {
   cout<< m[j] <<" " <<m16 <<endl;
   }
   if (m[j]==17) {
   cout<< m[j] <<" " <<m17 <<endl;
   }
   if (m[j]==18) {
   cout<< m[j] <<" " <<m18 <<endl;
   }
   if (m[j]==19) {
   cout<< m[j] <<" " <<m19 <<endl;
   }
   if (m[j]==20) {
   cout<< m[j] <<" " <<m20 <<endl;
   }

   if (m[j]==21) {
   cout<< m[j] <<" "  <<m21 <<endl;
   }
   if (m[j]==22) {
   cout<< m[j] <<" " <<m22 <<endl;
   }
   if (m[j]==23) {
   cout<< m[j] <<" "  <<m23 <<endl;
   }
   if (m[j]==24) {
   cout<< m[j] <<" " <<m24 <<endl;
   }
   if (m[j]==25) {
   cout<< m[j] <<" " <<m25 <<endl;
   }
   if (m[j]==26) {
   cout<< m[j] <<" " <<m26 <<endl;
   }
   if (m[j]==27) {
   cout<< m[j] <<" " <<m27 <<endl;
   }
   if (m[j]==28) {
   cout<< m[j] <<" " <<m28 <<endl;
   }
   if (m[j]==29) {
   cout<< m[j] <<" " <<m29 <<endl;
   }
   if (m[j]==30) {
   cout<< m[j] <<" " <<m30 <<endl;
   }
   if (m[j]==31) {
   cout<< m[j] <<" " <<m31 <<endl;
   }
   if (m[j]==32) {
   cout<< m[j] <<" " <<m32 <<endl;
   }
   if (m[j]==33) {
   cout<< m[j] <<" " <<m33 <<endl;
   }
   if (m[j]==34) {
   cout<< m[j] <<" " <<m34 <<endl;
   }
   if (m[j]==35) {
   cout<< m[j] <<" " <<m35 <<endl;
   }
   if (m[j]==36) {
   cout<< m[j] <<" " <<m36 <<endl;
   }
   if (m[j]==37) {
   cout<< m[j] <<" " <<m37 <<endl;
   }
   if (m[j]==38) {
   cout<< m[j] <<" " <<m38 <<endl;
   }
   if (m[j]==39) {
   cout<< m[j] <<" " <<m39 <<endl;
   }
   if (m[j]==40) {
   cout<< m[j] <<" " <<m40 <<endl;
   }

   if (m[j]==41) {
   cout<< m[j] <<" " <<m41 <<endl;
   }
   if (m[j]==42) {
   cout<< m[j] <<" " <<m42 <<endl;
   }
   if (m[j]==43) {
   cout<< m[j] <<" " <<m43 <<endl;
   }
   if (m[j]==44) {
   cout<< m[j] <<" " <<m44 <<endl;
   }
   if (m[j]==45) {
   cout<< m[j] <<" " <<m45 <<endl;
   }
   if (m[j]==46) {
   cout<< m[j] <<" " <<m46 <<endl;
   }
   if (m[j]==47) {
   cout<< m[j] <<" " <<m47 <<endl;
   }
   if (m[j]==48) {
   cout<< m[j] <<" " <<m48 <<endl;
   }
   if (m[j]==49) {
   cout<< m[j] <<" " <<m49 <<endl;
   }
   if (m[j]==50) {
   cout<< m[j] <<" " <<m50 <<endl;
   }

   if (m[j]==51) {
   cout<< m[j] <<" " <<m51 <<endl;
   }
   if (m[j]==52) {
   cout<< m[j] <<" " <<m52 <<endl;
   }
   if (m[j]==53) {
   cout<< m[j] <<" " <<m53 <<endl;
   }
   if (m[j]==54) {
   cout<< m[j] <<" " <<m54 <<endl;
   }
   if (m[j]==55) {
   cout<< m[j] <<" " <<m55 <<endl;
   }
   if (m[j]==56) {
   cout<< m[j] <<" " <<m56 <<endl;
   }
   if (m[j]==57) {
   cout<< m[j] <<" " <<m57 <<endl;
   }
   if (m[j]==58) {
   cout<< m[j] <<" " <<m58 <<endl;
   }
   if (m[j]==59) {
   cout<< m[j] <<" " <<m59 <<endl;
   }
   if (m[j]==60) {
   cout<< m[j] <<" " <<m60 <<endl;
   }

   if (m[j]==61) {
   cout<< m[j] <<" " <<m61 <<endl;
   }
   if (m[j]==62) {
   cout<< m[j] <<" " <<m62 <<endl;
   }
   if (m[j]==63) {
   cout<< m[j] <<" " <<m63 <<endl;
   }
   if (m[j]==64) {
   cout<< m[j] <<" " <<m64 <<endl;
   }
   if (m[j]==65) {
   cout<< m[j] <<" " <<m65 <<endl;
   }
   if (m[j]==66) {
   cout<< m[j] <<" " <<m66 <<endl;
   }
   if (m[j]==67) {
   cout<< m[j] <<" " <<m67 <<endl;
   }
   if (m[j]==68) {
   cout<< m[j] <<" " <<m68 <<endl;
   }
   if (m[j]==69) {
   cout<< m[j] <<" " <<m69 <<endl;
   }
   if (m[j]==70) {
   cout<< m[j] <<" " <<m70 <<endl;
   }

   if (m[j]==71) {
   cout<< m[j] <<" " <<m71 <<endl;
   }
   if (m[j]==72) {
   cout<< m[j] <<" " <<m72 <<endl;
   }
   if (m[j]==73) {
   cout<< m[j] <<" " <<m73 <<endl;
   }
   if (m[j]==74) {
   cout<< m[j] <<" " <<m74 <<endl;
   }
   if (m[j]==75) {
   cout<< m[j] <<" " <<m75 <<endl;
   }
   if (m[j]==76) {
   cout<< m[j] <<" " <<m76 <<endl;
   }
   if (m[j]==77) {
   cout<< m[j] <<" " <<m77 <<endl;
   }
   if (m[j]==78) {
   cout<< m[j] <<" " <<m78 <<endl;
   }
   if (m[j]==79) {
   cout<< m[j] <<" " <<m79 <<endl;
   }
   if (m[j]==80) {
   cout<< m[j] <<" " <<m80 <<endl;
   }

   if (m[j]==81) {
   cout<< m[j] <<" " <<m81 <<endl;
   }
   if (m[j]==82) {
   cout<< m[j] <<" " <<m82 <<endl;
   }
   if (m[j]==83) {
   cout<< m[j] <<" " <<m83 <<endl;
   }
   if (m[j]==84) {
   cout<< m[j] <<" " <<m84 <<endl;
   }
   if (m[j]==85) {
   cout<< m[j] <<" " <<m85 <<endl;
   }
   if (m[j]==86) {
   cout<< m[j] <<" " <<m86 <<endl;
   }
   if (m[j]==87) {
   cout<< m[j] <<" " <<m87 <<endl;
   }
   if (m[j]==88) {
   cout<< m[j] <<" " <<m88 <<endl;
   }
   if (m[j]==89) {
   cout<< m[j] <<" " <<m89 <<endl;
   }
   if (m[j]==90) {
   cout<< m[j] <<" " <<m90 <<endl;
   }

   if (m[j]==91) {
   cout<< m[j] <<" " <<m91 <<endl;
   }
   if (m[j]==92) {
   cout<< m[j] <<" " <<m92 <<endl;
   }
   if (m[j]==93) {
   cout<< m[j] <<" " <<m93 <<endl;
   }
   if (m[j]==94) {
   cout<< m[j] <<" " <<m94 <<endl;
   }
   if (m[j]==95) {
   cout<< m[j] <<" " <<m95 <<endl;
   }
   if (m[j]==96) {
   cout<< m[j] <<" " <<m96 <<endl;
   }
   if (m[j]==97) {
   cout<< m[j] <<" " <<m97 <<endl;
   }
   if (m[j]==98) {
   cout<< m[j] <<" " <<m98 <<endl;
   }
   if (m[j]==99) {
   cout<< m[j] <<" " <<m99 <<endl;
   }
   if (m[j]==100) {
   cout<< m[j] <<" " <<m100 <<endl;
   }
}

return 0;
}


Título: Re: ayuda como puedo reducir esta codificacion
Publicado por: bigfu en 17 Mayo 2010, 16:29 pm
Yo lo que haria sería declarar un tipo enumerado, desde el primer numero hasta el ultimo. Creas una funcion SUC (sucesor) que te indique el siguiente enumerado, (va en el orden en el que tu lo has declarado) y lo vas metiendo en el array. Aunque no me ha quedado muy claro qué es lo que tienes que hacer, si lo puedes volver a explicar...


Título: Re: ayuda como puedo reducir esta codificacion
Publicado por: Gallu en 17 Mayo 2010, 17:30 pm

primero metes en un array de char todas las cadenas
Código
  1. char cadenas[100];
  2. cadenas[1] =* ="Uno";
  3. cadenas[2] =* ="Dos";
  4. cadenas[3] =* ="Tres";  ........
  5.  

luego usas dos bucles , y listo , lo único malo es tener que llenar el arrey de cadenas ....
Código
  1. for (j=0;j<=9;j++) {
  2. for(z=0;z<=100;z++) {
  3. if (m[j]==z) {
  4. cout<< m[j] <<" " <<cadenas[z] <<endl;
  5. }
  6. }
  7. }
  8.  
  9.  
haber si te sirve


Título: Re: ayuda como puedo reducir esta codificacion
Publicado por: nicolasblues86 en 17 Mayo 2010, 17:34 pm
siguiendo la logica que estas utilizando lo mejor seria hacer un vector de 100 elementos  que inicializas con los numeros de esta manera

Código
  1. numeros[] {"uno", "dos", "tres"} //..etc
  2.  
y despues haces un for de 1 a 10 y haces esta sentencia

Código
  1. printf ("el numero ingresado es : %s", numero[m[j] -1])
  2.  
Entonces si el primer elemento del array que el usuario carga es un dos se imprimira el elemento 2 - 1 del array numero  osea el elemento 1, es decir "dos"