Ver Mensaje Individual
  #12 (permalink)  
Antiguo 16/05/2013, 23:10
henx
 
Fecha de Ingreso: mayo-2013
Mensajes: 1
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: IF no me hace caso

Lo que le falta a tu codigo son varias cosas:

1. Lo que menciona razpeitia de poner esas variables como string
2. Segun mi opinion una cadena para guardar lo que introdusca el usuario, y convertirla a mayusculas si es que la ingresaron como minusculas. Despues igualar la cadena leida y convertida a mayusculas (si fuera el caso de que estuviera en minusculas) al string correspondiente
3. Un while para que cada vez que pidas el color se repita si lo que ingresaron no es igual a ninguna de las opciones y dar un mensaje de error

El código que probé en Borland es el siguiente ... (Gracias por presentarme este problema, esta muy interezante)


Código C++:
Ver original
  1. #include<iostream.h>   //CPlayMas H
  2. #include<conio.h>
  3. #include<math.h>
  4. #include<string>
  5.  
  6.  
  7.  
  8. void main(){
  9. int valor1, valor2, RE;
  10. float valor3, tolerancia, VMax, VMin;
  11. string color1, color2, color3, color4;
  12. char color[8];
  13.  
  14.  
  15. cout<<"LOS COLORES DISPONIBLES A INGRESAR SON :\n\n";
  16. cout<<"NEGRO";
  17. cout<<"\nMARRON";
  18. cout<<"\nROJO";
  19. cout<<"\nNARANJA";
  20. cout<<"\nAMARILLO";
  21. cout<<"\nVERDE";
  22. cout<<"\nAZUL";
  23. cout<<"\nMORADO";
  24. cout<<"\nGRIS";
  25. cout<<"\nBLANCO";
  26. cout<<"\nDORADO";
  27. cout<<"\nPLATEADO";
  28. cout<<"\nNINGUNO";
  29. cout<<"\n\nBRINDE EL PRIMER COLOR (numero): ";cin>>color;
  30.  
  31.  
  32. for(int i=0; i<=8; i++)
  33. color[i]=toupper(color[i]);
  34.  
  35. color1=color;
  36.  
  37.  
  38.     if(color1=="NEGRO")
  39.     valor1=0;
  40.     else    if(color1=="MARRON")
  41.         valor1=1;
  42.          else   if(color1=="ROJO")
  43.                 valor1=2;
  44.                else if(color1=="NARANJA")
  45.                     valor1=3;
  46.                      else   if(color1=="AMARILLO")
  47.                             valor1=4;
  48.                            else if(color1=="VERDE")
  49.                                 valor1=5;
  50.                                  else   if(color1=="AZUL")
  51.                                         valor1=6;
  52.                                        else if(color1=="MORADO")
  53.                                             valor1=7;
  54.                                              else   if(color1=="GRIS")
  55.                                                     valor1=8;
  56.                                                    else if(color1=="BLANCO")
  57.                                                         valor1=9;
  58.                                                          else
  59.                                                          cout<<"dato erroneo";
  60.  
  61.  
  62.  
  63.  
  64. cout<<"\nBRINDE EL SEGUNDO COLOR (numero): ";cin>>color;
  65.  
  66. for(int i=0; i<=8; i++)
  67. color[i]=toupper(color[i]);
  68.  
  69. color2=color;
  70.  
  71.     if(color2=="NEGRO")
  72.     valor2=0;
  73.     else    if(color2=="MARRON")
  74.         valor2=1;
  75.          else   if(color2=="ROJO")
  76.                 valor2=2;
  77.                else if(color2=="NARANJA")
  78.                     valor2=3;
  79.                      else   if(color2=="AMARILLO")
  80.                             valor2=4;
  81.                            else if(color2=="VERDE")
  82.                                 valor2=5;
  83.                                  else   if(color2=="AZUL")
  84.                                         valor2=6;
  85.                                        else if(color2=="MORADO")
  86.                                             valor2=7;
  87.                                              else   if(color2=="GRIS")
  88.                                                     valor2=8;
  89.                                                    else if(color2=="BLANCO")
  90.                                                         valor2=9;
  91.                                                          else
  92.                                                          cout<<"dato erroneo";
  93.  
  94.  
  95. cout<<"\nBRINDE EL TERCER COLOR (numero): ";cin>>color;
  96.  
  97. for(int i=0; i<=8; i++)
  98. color[i]=toupper(color[i]);
  99.  
  100. color3=color;
  101.  
  102.     if(color3=="NEGRO")
  103.     valor3=1;
  104.     else    if(color3=="MARRON")
  105.         valor3=10;
  106.          else   if(color3=="ROJO")
  107.                 valor3=100;
  108.                else if(color3=="NARANJA")
  109.                     valor3=1000;
  110.                      else   if(color3=="AMARILLO")
  111.                             valor3=10000;
  112.                            else if(color3=="VERDE")
  113.                                 valor3=100000;
  114.                                  else   if(color3=="AZUL")
  115.                                         valor3=1000000;
  116.                                        else if(color3=="MORADO")
  117.                                             valor3=10000000;
  118.                                              else   if(color3=="GRIS")
  119.                                                     valor3=100000000;
  120.                                                    else if(color3=="BLANCO")
  121.                                                         valor3=1000000000;
  122.                                                          else   if(color3=="DORADO")
  123.                                                                 valor3=0.1;
  124.                                                                else if(color3=="PLATEADO")
  125.                                                                     valor3=0.01;
  126.                                                                      else
  127.                                                                                     cout<<"dato erroneo";
  128.  
  129. cout<<"\nBRINDE EL CUARTO COLOR (numero): ";cin>>color;
  130.  
  131. for(int i=0; i<=8; i++)
  132. color[i]=toupper(color[i]);
  133.  
  134. color4=color;
  135.  
  136.  
  137.     if(color4=="DORADO")
  138.    tolerancia=5;
  139.    else if(color4=="PLATEADO")
  140.         tolerancia=10;
  141.          else   if(color4=="NINGUNO")
  142.                 tolerancia=20;
  143.                else
  144.                cout<<"dato erroneo";
  145.  
  146. RE=valor1*valor3*10+valor2*valor3;
  147. VMax=RE+RE*tolerancia*0.01;
  148. VMin=RE-RE*tolerancia*0.01;
  149. cout<<"La resistencia electrica es de "<<RE<<" ohmios";
  150. cout<<"\nLa tolerancia es de +- "<<tolerancia<<" %";
  151. cout<<"\nEl valor maximo es "<<VMax;
  152. cout<<"\nEl valor minimo es "<<VMin;
  153.  
  154. cout<<"\n\nPresione algo...";
  155.  
  156. }