Hola!

Registrándote como bakuno podrás publicar, compartir y comunicarte en privado con otros bakuos :D

Regístrame ya!

menu en c++ ( pero con signos )

  • Autor de tema Autor de tema NEF89
  • Fecha de inicio Fecha de inicio

NEF89

Becerro
Desde
8 Dic 2010
Mensajes
27
HOLA BAKUNOS !!! :comillas: espero puedan ayudarme con este proglema de programacion la vdd eske no soy muy bueno programando tengo un problema mi programa es una calculadora pero le coloque un menu de inicio con numeros PERO EL MAESTRO QUIERE que en lugar de numeros seha el signo de la operacion el que presione para que la computadora lo haga y la vdd no se como hacer eso les dejo mi programa para que le den una checada porcierto lo ice con if -else if (n==1) suma y asi hasta el 6 que te regresa a un numero valido espero puedan ayudarme

#include<stdlib.h>
#include<stdio.h>
#include<conio.h>
#include<math.h>

main ()

{
int n;
float a, b, c, d, f,e;
menu:
printf("\n\n SELECCIONE LA OPERACION QUE DESEA HACER :\n\n ");
printf("1.- Suma\n\n");
printf(" 2.- Resta\n\n");
printf(" 3.- Multiplicacion\n\n");
printf(" 4.- Division\n\n");
printf(" 5.- Ecuacion\n\n");
scanf("%d", &n);
printf("\t\tOpcion # %d\n\n",n);

if(n==1)
{
printf("\t\t *** SUMA *** \n\n ");
printf("Introduce el numero A : ");
scanf("%f", &a);
printf("Introduce el numero B : ");
scanf("%f", &b);
printf("\n\n A = %.2f \n\n",a);
printf(" B = %.2f \n\n",b);
c = a + b ;
printf("el resultado de la suma %.2f + %.2f = %.2f : \n\n",a,b,c);
printf("\t\t *** (>0_0)> GRACIAS POR SU VISITA <(0_0<) *** \n\n ");

}
else
{
}

if(n==2)
{
printf("\t\t *** RESTA *** \n\n ");
printf("Introduce el numero A : ");
scanf("%f", &a);
printf("Introduce el numero B : ");
scanf("%f", &b);
printf("\n\n A = %.2f \n\n",a);
printf(" B = %.2f \n\n",b);
c = a - b ;
printf("el resultado de la resta %.2f - %.2f = %.2f : \n\n",a,b,c);
printf("\t\t *** (>0_0)> GRACIAS POR SU VISITA <(0_0<) *** \n\n ");
}
else
{
}

if(n==3)
{
printf("\t\t *** MULTIPLICACION *** \n\n ");
printf("Introduce el numero A : ");
scanf("%f", &a);
printf("Introduce el numero B : ");
scanf("%f", &b);
printf("\n\n A = %.2f \n\n",a);
printf(" B = %.2f \n\n",b);
c = ( a * b );
printf("el resultado de la multiplicacion %.2f * %.2f = %.2f : \n\n",a,b,c);
printf("\t\t *** (>0_0)> GRACIAS POR SU VISITA <(0_0<) *** \n\n ");
}

else
{
}

if(n==4)
{
float a,b,c;
printf("\t\t+++ DIVISION +++\n\n");

printf("ingresa el valor A ");
scanf("%f",&a);
division:
printf("ingresa el valor B " );
scanf("%f",&b);
printf(" \n\nA = %.2f \n\n",a);
printf(" B = %.2f \n\n\n",b);
if (b==0)
{
printf ("ingresa otro valor valido para B \n\n");
goto division;
}
else
{}

c=a/b;
printf("el resultado de %.2f /%.2f = %.2f\n\n",a,b,c);
printf("\t\t *** (>0_0)> GRACIAS POR SU VISITA <(0_0<) *** \n\n ");
}
else
{
}

if(n==5)
{
printf("\t\t *** ECUACION *** \n\n ");

float a,b,c,x,x2,n,n2,i,i2;

printf("\t\t ax^2 + bx + c = 0 \n\n");
printf("\t\t ingresa valores numericos \n\n");


printf("ingresa el coeficiente A de tu ecuacion: ");
scanf("%f", &a);

printf("ingresa el coeficiente B de tu ecuacion: ");
scanf("%f", &b);

printf("ingresa el coeficiente C de tu ecuacion: ");
scanf("%f", &c);

printf("\n A = %.2f ""\n\n",a);
printf(" B = %.2f ""\n\n",b);
printf(" C = %.2f ""\n\n",c);





if(((b*b)-4*(a*c))<0)
{
printf("\t\t*** La raiz es imaginaria ***\n\n");
n =(b*b)-(4*(a*c)); //se declara la raiz con una variable
n2 = ((n*(-1))); // se elimina el signo negativo
i = (sqrt(n2))/(2*a);
i2 = -1*((sqrt(n2))/(2*a));
x = (-b)/(2*a);
x2 = (-b)/(2*a);

printf("los resultados de la ecuacion son\n\n ");
printf(" X = %.2f + %.2fi""\n\n",x,i);
printf(" X2 = %.2f + ( %.2fi )""\n\n\n",x2,i2);
printf("\t\t\a *** (>0_0)> GRACIAS POR SU VISITA <(0_0<) *** \n\n ");


}

else
{ }
if(((b*b)-4*(a*c))>0)
{
n =(b*b)-(4*(a*c));
x = (-b +(sqrt(n)))/(2*a);
x2 = (-b -(sqrt(n)))/(2*a);

printf("\t\t***La raiz es real*** \n\n");
printf("los resultados de la ecuacion son\n\n\n ");
printf(" X = %.2f ""\n\n",x);
printf(" X2 = %.2f ""\n\n",x2);
printf("\t\t\a *** (>0_0)> GRACIAS POR SU VISITA <(0_0<) *** \n\n ");
}
else
{ }
}
else
{

}
if(n>5)
{
printf("\t\t *** SELECCIONE UNA OPCION DEL 1 AL 5 *** \n\n ");
printf("\t\t *** (>0_0)> GRACIAS POR SU VISITA <(0_0<) *** \n\n ");
}
else
{

}






goto menu;
getche();



}
 
Mira tu usas un scanf para leer un numero, debes de usar una funcion de c para leer la tecla que presionar y esta es:

ch = getch();

ponle un ciclo infinito y lo que ch capture es el valor que guarda.

todo sigue igual en tu codigo. El objetivo del ciclo es que se va a estar ejecutando cuando presionas una tecla y ya con la condición le pones el valor en codigo ascii. y listo.

Analiza lo que te dije y checa en internet ejemplos de getch.

saludos.
 
Volver
Arriba