Título: ayuda en turbo C++ Publicado por: Alisayli en 30 Noviembre 2012, 04:34 am :huh: Bueno, soy nueva en este foro y quisiera que me pudieran ayudar y sacarme de dudas sobre este codigo para un programa en c++. Mi problema es que no se donde meter el Do y while para qe me regrese al menu principal y al terminar cada caso que me regrese a su respectivo menu, y para la opción Salir tampoco se como ponerla... Alguien podria ayudarme? se lo agradeceria y mucho x3!!
#include<iostream.h> #include<conio.h> float captura() { float res = 0.0; cin>>res; return res; } void Pulgada_CM() { float res = 0.0; res=captura(); res=res*6.4516; cout<<"CM: "<<" "<<res; } void Pie_M() { float res = 0.0; res=captura(); res=res*0.0929; cout<<"M: "<<" "<<res; } void Yarda_M() { float res = 0.0; res=captura(); res=res*0.8361; cout<<"M: "<<" "<<res; } void Acre_M() { float res = 0.0; res=captura(); res=res*4046.9; cout<<"M: "<<" "<<res; } void Milla_KM() { float res = 0.0; res=captura(); res=res*2.59; cout<<"KM: "<<" "<<res; } void CM_Pulgadas() { float res = 0.0; res=captura(); res=res*0.1550; cout<<"Pulgadas: "<<" "<<res; } void M_Yarda() { float res = 0.0; res=captura(); res=res*1.1960; cout<<"Yarda: "<<" "<<res; } void Hect_Acre() { float res = 0.0; res=captura(); res=res*2.4711; cout<<"Acre: "<<" "<<res; } void KM_Milla() { float res = 0.0; res=captura(); res=res*0.3861; cout<<"Milla: "<<" "<<res; } void Onzas_Gramos() { float res = 0.0; res=captura(); res=res*28.35; cout<<"Gramos: "<<""<<res; } void Libra_Kilogramos() { float res = 0.0; res=captura(); res=res*0.4536; cout<<"Kilogramos: "<<""<<res; } void Stone_Kilogramos() { float res = 0.0; res=captura(); res=res*6.3503; cout<<"Kilogramos: "<<""<<res; } void HundredWeight_Kilogramos() { float res = 0.0; res=captura(); res=res*50.802; cout<<"Kilogramos: "<<""<<res; } void Tonelada_ToneladaM() { float res = 0.0; res=captura(); res=res*1.016; cout<<"ToneladaM: "<<""<<res; } void Pulgadas_CM() { float res = 0.0; res=captura(); res=res*16.387; cout<<"CM: "<<" "<<res; } void Pies_M() { float res = 0.0; res=captura(); res=res*0.0283; cout<<"M: "<<" "<<res; } void OnzaLiquida_Mililitros() { float res = 0.0; res=captura(); res=res*28.413; cout<<"Mililitros: "<<" "<<res; } void Pinta_Litros() { float res = 0.0; res=captura(); res=res*0.5683; cout<<"Litros: "<<" "<<res; } void Galon_Litros() { float res = 0.0; res=captura(); res=res*4.5461; cout<<"Litros: "<<" "<<res; } void Miligramos_Gramos() { float res = 0.0; res=captura(); res=res*0.0154; cout<<"Gramos: "<<" "<<res; } void Gramos_Onzas() { float res = 0.0; res=captura(); res=res*0.0353; cout<<"Onzas: "<<" "<<res; } void Kilogramos_Libras() { float res = 0.0; res=captura(); res=res*2.2046; cout<<"Libras: "<<" "<<res; } void Toneladas_Toneladas() { float res = 0.0; res=captura(); res=res*0.9842; cout<<"Toneladas: "<<" "<<res; } void Centigrados_Fahrenheit() { int res = 0; res=captura(); res=res*9 / 5 + 32; cout<<"Fahrenheit: "<<" "<<res; } void Fahrenheit_Centigrados() { int res = 0; res=captura(); res=res-32*5 / 9; cout<<"Centigrados: "<<" "<<res; } void main() { int x; cout<<"~ MENU CONVERSIONES DE UNIDADES ~"<<endl; cout<<""<<endl; cout<<"1. Imperial-Metrico"<<endl; cout<<"2. Metrico-Imperial"<<endl; cout<<"3. Temperatura"<<endl; cout<<"4. Salir"<<endl; cin>>x; switch(x) { case 1:cout<<""<<endl; cout<<"Imperial-Metrico"<<endl; cout<<""<<endl; cout<<"Elige una opcion"<<endl; cout<<""<<endl; cout<<"1. Longitud"<<endl; cout<<"2. Peso"<<endl; cout<<"3. Volumen"<<endl; cout<<"4. Menu Principal "<<endl; x = 0; cin>>x; switch(x) { case 1:cout<<""<<endl; cout<<"1. Longitud"<<endl; cout<<""<<endl; cout<<"Elige una opcion"<<endl; cout<<""<<endl; cout<<"1. Convierte Pulgadas - CM"<<endl; cout<<"2. Convierte Pie - M"<<endl; cout<<"3. Convierte Yarda - M"<<endl; cout<<"4. Convierte Acre - M"<<endl; cout<<"5. Convierte Milla - Km"<<endl; cout<<"6. Imperial-Metrico "<<endl; x = 0; cin>>x; switch(x) { case 1: cout<<"Ingrese PULGADA"<<endl; cout<<""<<endl; cout<<"Ingresa un numero"<<endl; Pulgada_CM(); break; case 2: cout<<"Ingrese Pie"<<endl; cout<<"Ingresa un numero"<<endl; Pie_M(); break; case 3: cout<<"Ingrese Yarda"<<endl; cout<<"Ingresa un numero"<<endl; Yarda_M(); break; case 4: cout<<"Ingrese Acre"<<endl; cout<<"Ingresa un numero"<<endl; Acre_M(); break; case 5: cout<<"Ingrese Milla"<<endl; cout<<"Ingresa un numero"<<endl; Milla_KM(); break; } break; case 2:cout<<""<<endl; cout<<"2. Peso"<<endl; cout<<""<<endl; cout<<"Elige una opcion"<<endl; cout<<""<<endl; cout<<"1. Convierte Onzas-Gramos"<<endl; cout<<"2. Convierte Libra-Kilogramos"<<endl; cout<<"3. Convierte Stone-Kilogramos"<<endl; cout<<"4. Convierte HundredWeight-Kilogramos"<<endl; cout<<"5. Convierte Tonelada-ToneladaM"<<endl; cout<<"6. Imperial-Metrico "<<endl; x = 0; cin>>x; switch(x) { case 1: cout<<"Ingrese CM"<<endl; cout<<"Ingresa un numero"<<endl; CM_Pulgadas(); break; case 2: cout<<"Ingrese M"<<endl; cout<<"Ingresa un numero"<<endl; M_Yarda(); break; case 3: cout<<"Ingrese Hectarea"<<endl; cout<<"Ingresa un numero"<<endl; Hect_Acre(); break; case 4: cout<<"Ingrese KM"<<endl; cout<<"Ingresa un numero"<<endl; KM_Milla(); break; } break; case 3: cout<<""<<endl; cout<<"3. Volumen"<<endl; cout<<""<<endl; cout<<"Elige una opcion"<<endl; cout<<""<<endl; cout<<"1. Convierte Pulgadas - CM"<<endl; cout<<"2. Convierte Pie - M"<<endl; cout<<"3. Convierte OnzaLiquida - Mililitros"<<endl; cout<<"4. Convierte Pinta - Litros"<<endl; cout<<"5. Convierte Galon - Litros"<<endl; cout<<"6. Imperial-Metrico "<<endl; x = 0; cin>>x; switch(x) { case 1: cout<<"Ingrese Pulgada"<<endl; cout<<"Ingresa un numero"<<endl; Pulgadas_CM(); break; case 2: cout<<"Ingrese Pie"<<endl; cout<<"Ingresa un numero"<<endl; Pies_M(); break; case 3: cout<<"Ingrese OnzaLiquida"<<endl; cout<<"Ingresa un numero"<<endl; OnzaLiquida_Mililitros(); break; case 4: cout<<"Ingrese Pinta"<<endl; cout<<"Ingresa un numero"<<endl; Pinta_Litros(); break; case 5: cout<<"Ingrese Galon"<<endl; cout<<"Ingresa un numero"<<endl; Galon_Litros(); break; } break; } switch(x) { case 2: cout<<""<<endl; cout<<"Metrico-Imperial"<<endl; cout<<""<<endl; cout<<"Elige una opcion"<<endl; cout<<""<<endl; cout<<"1. Longitud"<<endl; cout<<"2. Peso"<<endl; cout<<"3. Menu Principal "<<endl; x = 0; cin>>x; switch(x) { case 1:cout<<""<<endl; cout<<"1. Longitud"<<endl; cout<<""<<endl; cout<<"Elige una opcion"<<endl; cout<<""<<endl; cout<<"1. Convierte CM_Pulgadas"<<endl; cout<<"2. Convierte M_Yarda"<<endl; cout<<"3. Convierte Hect_Acre"<<endl; cout<<"4. Convierte Km_Milla"<<endl; cout<<"5. Metrico-Imperial"<<endl; x = 0; cin>>x; switch(x) { case 1: cout<<"Ingrese CM"<<endl; cout<<"Ingresa un numero"<<endl; CM_Pulgadas(); break; case 2: cout<<"Ingrese M"<<endl; cout<<"Ingresa un numero"<<endl; M_Yarda(); break; case 3: cout<<"Ingrese Hectarea"<<endl; cout<<"Ingresa un numero"<<endl; Hect_Acre(); break; case 4: cout<<"Ingrese KM"<<endl; cout<<"Ingresa un numero"<<endl; KM_Milla(); break; } break; case 2:cout<<""<<endl; cout<<"2. Peso"<<endl; cout<<""<<endl; cout<<"Elige una opcion"<<endl; cout<<""<<endl; cout<<"1. Convierte Miligramos-Gramos"<<endl; cout<<"2. Convierte Gramos-Onzas"<<endl; cout<<"3. Convierte Kilogramos-Libras"<<endl; cout<<"4. Convierte Toneladas-Toneladas"<<endl; cout<<"5. Metrico-Imperial"<<endl; x = 0; cin>>x; switch(x) { case 1: cout<<"Ingrese Milgramos"<<endl; cout<<"Ingresa un numero"<<endl; Miligramos_Gramos(); break; case 2: cout<<"Ingrese Gramos"<<endl; cout<<"Ingresa un numero"<<endl; Gramos_Onzas(); break; case 3: cout<<"Ingrese Kilogramos"<<endl; cout<<"Ingresa un numero"<<endl; Kilogramos_Libras(); break; case 4: cout<<"Ingrese Toneladas"<<endl; cout<<"Ingresa un numero"<<endl; Toneladas_Toneladas(); break; } break; } case 3: cout<<""<<endl; cout<<"3. Temperatura"<<endl; cout<<""<<endl; cout<<"Elige una opcion"<<endl; cout<<""<<endl; cout<<"1. Centígrados a Fahrenheit "<<endl; cout<<"2. Fahrenheit a Centígrados"<<endl; cout<<"3. Temperatura"<<endl; x = 0; cin>>x; switch(x) { case 1: cout<<"Ingrese Centígrados"<<endl; cout<<"Ingresa un numero"<<endl; Centigrados_Fahrenheit(); break; case 2: cout<<"Ingrese Fahrenheit"<<endl; cout<<"Ingresa un numero"<<endl; Fahrenheit_Centigrados(); break; } break; } getch(); } } Título: Re: ayuda en turbo C++ Publicado por: someRandomCode en 30 Noviembre 2012, 23:07 pm Dios Mio!
Vas a escribir codigo hasta por los caños cuando seas mayor.. Mira, te voy a apuntar... Para hacer la conversion podes usar una sola funcion. Y estas mezclando C con C++ lo cual no siempre es una buena idea si no se sabe lo que se esta haciendo. Yo haria un par de #define al principio con el valor de acre, pulgada, y de mas en relacion a una unidad de medida. Despues simplemente llamaria a una funcion que retorne un float y que tome dos argumentos float, uno lo que te ingresaron (sacalo de las funciones) y lo otro si es transformarlo a acres o que cosa. Otra cosa mas: Tecnicamente cada vez que pones cout tendrias que poner std::cout. O bien, poner una sentencia al comienzo diciendo Código: using std::cout; Título: Re: ayuda en turbo C++ Publicado por: leosansan en 30 Noviembre 2012, 23:39 pm :huh: Bueno, soy nueva en este foro y quisiera que me pudieran ayudar y sacarme de dudas sobre este codigo para un programa en c++. Mi problema es que no se donde meter el Do y while para qe me regrese al menu principal y al terminar cada caso que me regrese a su respectivo menu, y para la opción Salir tampoco se como ponerla... Alguien podria ayudarme? se lo agradeceria y mucho x3!! Estaban mal las librerías faltaba el using namespace std; y te sobraba la librería conio y el comando getch, no deben usarse ya que no forman parte del estándar de C++- ni de C.He incluido un do while para que la introducción de la opción inicial sea la correcta y un goto al final para que vuelvas al menú principal, no es lo más elegante pero bastante cargado está ya el código.La vuelta a los menus secundarios puedes hacerlas igualmente con un do while o con un goto, pero sería cargar más el código. ¡AH!, por cierto, tienes que "encapsular" mejor los submenus o switch ya que algunos no funcionan correctamente, como el de temperatura. Todo es fijarte un poco más en donde los colocas y donde abres y cierras las llaves. Lo que no me cuadra es que hayas hecho tu todo este código y que no te funcionara por lo que comente al principio:raro, raro. Pero en fin, te lo dejo funcionando pendiente y de que hagas los ajustes comentados: Código Saluditos!. |