Tengo un error y no logro identificarlo, intento hacer "una calculadora" pero la app me lanza un error, les dejare el comando por si me ayudan: (Error expected unqualified-id before ´{´:
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#include<math.h>
//Ecuaciones cuadráticas (globals)
int num1=0, num2=0, num3=0, res=0, opc, respuesta;
//Escribir Ecuación
;void menu() ;
;void Suma () ;
;void Resta () ;
//menu
main ()
{
menu();
getch();
}
// Implementa Ecuacion
void menu();
{
do
{
Printf ("ºººººEcuacionººººº") ;
Printf ("\n\n1.- ecuacion ") ;
Printf ("2. - suma ") ;
Printf ("3.- resta ") ;
{
Printf ("\n\nElija su estilo de ecuación:\n\n") ;
scanf ("%d",&opc) ;
switch(opc)
{
case 1 :
Suma() ;
break ;
case 2 :
Resta() ;
break ;
default :
printf ("::::Esta maldita opcion no existe:::::") ;
break ;
}
}
printf ("\n\¿Desea hacer alguna otra operacion? Si=1 // No=2") ;
scanf ("%d" ,&respuesta) ;
}
while (respuesta=1) ;
}
void Suma ()
{
printf ("ººººSUMAºººº") ;
printf ("la primera parte de su ecuación (Ax^2)") ;
scanf ("%d", & num1) ;
printf ("Ahora escriba la segunda parte de su ecuación (Bx)") ;
scanf ("%d", & num2) ;
printf ("Escriba la tercera parte de la ecuacion (c)") ;
scanf ("%d", & num3) ;
printf ("La suma de %d y %d y %d es: %d",num1,num2,num3,res);
}
{
void Resta ()
printf ("ººººRESTAºººº") ;
printf ("La primera parte de su ecuación(Ax^2)") ;
scanf ("%d" , & num1) ;
printf ("Ahora escriba La tercera parte de su ecuación(Bx)");
scanf ("%d" , & num2);
printf ("Escriba la tercera parte de su ecuación(C)");
scanf ("%d" , & num3);
printf ("La resta de %d y %d y %d es: %d",num1,num2,num3,res);
}
Gracias por la ayuda.
Lo primero coloca tu código entre etiquetas de código GeSHi (encima del cuadro de texto tienes un menú desplegable para elegir el lenguaje en el que está el código)...
A ver tienes un par de errores y unas cuántas mejoras que puedes hacer.
Vamos a ver los errores que tienes:
- Antes de las declaraciones de las funciones <menu()>, <suma()> y <resta()> tienes un punto y coma que no debería estar ahí.
- En la implementación de la función <menu()> te sobra el punto y coma antes del corchete. Cuando declaras prototipos las funciones terminan en punto y coma, pero cuando implementas el cuerpo de la función, no se pone punto y coma.
- En la función <menu()> tienes escrito <Printf()> en lugar de <printf()>. En C/C++ hay distinción entre minúsculas y mayúsculas, es decir; la función <sumar()> no es la misma que la función <Sumar()> y la variable <numero> no es la misma que la variable <Numero>.
- En C/C++ las comparaciones se hacen con dos iguales "==" y las asignaciones con un igual "=". En el <while> de <menu()> estás usando un solo igual por lo que estás asignando a respuesta el valor 1 y entonces siempre se considera la condición como verdadera (ya que se entiende 0 = false y 1 = true).
- No haces operaciones sobre la variable <res>. Entonces el resultado siempre se muestra 0.
Y ahora vamos a ver algunos consejos:
- No usar la librería <conio.h>. La función <getch()> de <conio.h> se puede sustituir por <getchar()> de <stdio.h> (para C) o <cin.get()> de <iostream> para C++
- No usar variables globales innecesarias.
- Las funciones es mejor que retornen el resultado en vez de mostrarlo porque a veces querrás calcular muchas sumas y no querrás que todas se muestren por pantalla. Hay que darle generalidad a las funciones para poder reutilizarlas.
Suerte :-X