bueno recien empiezo con esto del c y c++ ... tengo esta codificacion de saber si un año es bisiesto o no... y me tira un error de Declaration terminated incorrectly en la linea del segundo {
PORFAVOR AGRADECESERIA SU AYUDA ^^
aca dejo la codificacion:
#include <stdio.h>
#include <conio.h>
int bisiesto(int);
void main()
{
int B,año;
scanf("%d",&año);
B= bisiesto(año);
if(B==0)
printf("No es bisiesto");
getch();
}
int bisiesto(int a);
{
int b
if(a%4==0)
b=1
else b=0
return( b)
}
Más errores:
- La librería conio.h no es standard y no se recomienda para nada su uso. La función que utilizas de dicha librería es getch() que se puede sustituir por getchar() de stdio.
- Utilizas void main(). Pásate por aquí (http://foro.elhacker.net/programacion_cc/lo_que_no_hay_que_hacer_en_cc_nivel_basico-t277729.0.html).
- En vez de else utiliza else if() para hacer la comparación que igualmente también la tienes mal.
- Te falta un el punto y coma en toda la función.
- En el return te falta un punto y coma.
Saludos :P
EDITO: he ido a cenar y he modificado mi respuesta que está como la de
Lord R.N.A. porque no vi su publicación.
#include <stdio.h>
#include <conio.h>
int bisiesto(int)
void main()
{
int B,año;
scanf("%d",&año);
B= bisiesto(año);
if(B==0)
printf("No es bisiesto");
getch();
}
int bisiesto(int a)
{
int b;
if(a%4==0)
b=1
else b=0
return( b)
}
ahora me tira error de DECLARATION SYNTAX ERROR EN EL void main :-(
voy con mi respuesta:
1) No uses <conio.h>, no es standard.
2) No necesariamente necesitas la funcion, ocupa espacio y tiempo de memoria innecesario.
3) Puedes dar varias reglas a un if utilizando el operador || «OR».
4) No uses getch() porque esta en <conio.h>.
5) Te faltaron todos los ";" en la funcion.
Aqui esta un codigo de ejemplo:
#include <stdio.h>
void main()
{
int year;
scanf("%d",&year);
//La unica forma en la que el if es falso es si year%4=0 y year!=0.
if(year%4||year==0)printf("No es Bisiesto\n");
else printf("Es Bisiesto\n");
getchar();
}
#include <stdio.h>
int bisiesto(int);
void main()
{
int B,año;
scanf("%d",&año);
B= bisiesto(año);
if(B==0)
printf("No es bisiesto");
getchar();
}
int bisiesto(int a);
{
int b
if(a%4==0)
b=1
else if() b=0
return(b);
}
Ahi hice todo lo q me dijiste u.u, porq es segun la funcion q tengo , de hacer la codificacion ... podrias copiar y pegar eso en un compilador y sacarle o agregarle lo q falta plis ^^ porq hice todo y nada :(
Cita de: diego-4 en 1 Septiembre 2010, 21:56 PM
#include <stdio.h>
int bisiesto(int);
void main()
{
int B,año;
scanf("%d",&año);
B= bisiesto(año);
if(B==0)
printf("No es bisiesto");
getchar();
}
int bisiesto(int a);
{
int b
if(a%4==0)
b=1
else if() b=0
return(b);
}
Ahi hice todo lo q me dijiste u.u, porq es segun la funcion q tengo , de hacer la codificacion ... podrias copiar y pegar eso en un compilador y sacarle o agregarle lo q falta plis ^^ porq hice todo y nada :(
Mírate las soluciones que te dí. Y un libro no estaría nada mal.
http://foro.elhacker.net/programacion_cc/librospapers_c_and_c-t296234.0.html
Saludos :P
GRACIAS Horricreu y Lord... seguire leyendo la bibliografia de mis apuntes de programacion para encontrar el problema u.u... me fui tengo que ir a cursar TIS u.u chau gracias de nuevo
Codigo Corregido, no uses "ñ", el c++ no las reconocia. Faltaban bastantes ';' y te recomiendo qe siempre que uses IF abras y cierres { } asi queda mas ordenado, al igual que con el else.
Salu2!
PD: en la declaracion de la funcion bisiesto faltaba poner tambien la variable dentro de los parentesis!
#include <stdio.h>
#include <conio.h>
int bisiesto(int a);
int main(){
int B,ano;
scanf("%d",&ano);
B=bisiesto(ano);
if(B==0)
printf("No es bisiesto");
getch();
}
int bisiesto(int a){
int b;
if((a%4)==0){
b=1;
}
else {
b=0;
}
return(b);
}
me faltaba los corchetes y parentiesis nada mas :/ jejeje gracias LO ESTOY TENIENDO EN CUENTA PARA MIS TRABAJOS DE LA FACULTAD , y lo de la ñ lo se =D gracias de nuevo