Para mejorar tu eficiencia te recomiendo
-No usar conio.h (como dice el comentario de arriba es una librería no-estándar)
-Usa double en vez de float: En realidad no hay gran diferencia entre usar ambos en cuanto a memoria o rendimiento y se recomienda encarecidamente trabajar con double ya que tiene un nivel mas alto de precisión y evita así la perdida de valores, de la misma manera se recomienda trabajar siempre con int en vez de usar short y evitar los unsigned a menos que sea extremadamente necesario.
-Aprende a usar el switch
-Reusa tu codigo, si lees puedes encontrar que muchas veces repites el mismo codigo.
-Las opciones deberían ser un numero entero int.
Tu programa retocado quedaría así:
Código
P.D1: Asumo que no sabes crear funciones por eso no las utilizo al igual que el switch
#include <iostream> #include <math.h> using namespace std; int main(int argc, char** argv) { double suma=0, resta=0, multi=0, divi=0, a, b, resultado, B, P; int opcion; cout<<"¿CUAL ES TU OPREPACION?"<<endl; cout<<"\n1. Sumar"; cout<<"\n2. Restar"; cout<<"\n3. Multiplicar"; cout<<"\n4. Dividir"; cout<<"\n5. Potenciar"; cout<<"\n6. Raiz"<<endl; cin>>opcion; //Primero vez si es una potencia o raiz para evitar leer los valores una y otra vez if(opcion==5){ cout<<"Ingrese La Base"<<endl; cin>>B; cout<<"Ingrese La Potencia"<<endl; cin>>P; double resultado= pow(B,P); cout<<" El resultado De "<<B<<" Elevado A La "<<P<<" Es Igual A "<<resultado<<endl; cin.get(); return 1; } if(opcion==6){ cout<<"Ingrese El Tipo De Raiz"<<endl; cin>>B; cout<<"Ingrese El numero"<<endl; cin>>P; resultado= pow(P,(1/B)); cout<<" La raiz a la "<<B<<" De "<<P<<" Es Igual A "<<resultado<<endl; cin.get(); return 1; } // Si no es potencia ni raiz podemos leer los 2 valores siempre igual cout<<"Ingrese El Primer Numero"<<endl; cin>>a; cout<<"Ingrese El Segundo Numero"<<endl; cin>>b; if(opcion==1){ suma= a + b; cout<<"El resultado De La Suma Es:"<<suma<<endl; cin.get(); return 1; } if(opcion==2){ resta= a - b; cout<<"El resultado De La Resta Es:"<<resta<<endl; cin.get(); return 1; } if(opcion==3){ multi= a * b; cout<<"El resultado De La Multiplicacion Es:"<<multi<<endl; cin.get(); return 1; } if(opcion==4){ divi= a / b; cout<<"El resultado De La Divicion Es:"<<divi<<endl; cin.get(); return 1; } //Si el usuario coloca una opcion invalida cout << "Opcion invalidad por favor ingrese una entrada valida (del 1 al 6)"; cin.get(); return 0; }
P.D2: El uso de cin.get() aunque es mejor que el uso de getch() no estan vistos como buenas practicas, aunque para lo que buscas esta bien.