Título: Problema con funciones (resuelto)
Publicado por: Gotttlieb en 10 Marzo 2011, 15:32 pm
Hola buenas a todos. Mi problema es el siguiente: En la funcion llamada Venta me dice que hay demasiados argumentos... os copio el codigo. Seguro que es una chorrada pero no consigo solucionarlo. Gracias por adelantado. #include <stdio.h> #include <stdlib.h> #include <ctype.h>
int menu () { int opcion;
printf("1.-Venda de bitllets\n"); printf("2.-Devolucio de bitllets\n"); printf("3.-Estat de venta\n"); printf("0.-Salir\n"); printf("Seleccione la opcion que desea\n"); scanf("%d",&opcion);
return(opcion); }
void venta () { printf("Introduzca el numero de billetes que quiere comprar el cliente\n"); scanf("%d",&billetes); printf("Introduzca el pvp de 1 billete\n"); scanf("%f",&precio); if (plazas-billetes<0 || (billetes+suma)>plazas) printf("Error; ha intentado comprar mas billetes que plazas hay en el bus\n"); else { printf(" Ha decidido comprar %d billetes, el precio total es de %.2f euros\n", billetes, billetes*precio); libres=plazas-billetes; suma=suma+billetes; } system("PAUSE");
}
void main()
{ int opcion, plazas, billetes, libres=0, suma=0, *P_suma, *P_libres,*P_billetes,*P_plazas; float precio, *P_precio; printf("Introduzca el numero de plazas del autobus\n"); scanf("%d",&plazas); libres=plazas; P_suma=&suma; P_libres=&libres; P_billetes=&billetes; P_plazas=&plazas; P_precio=&precio;
do { opcion=menu(); switch (opcion) { case 1: //aqui esta la funcion problematica venta( P_suma, P_libres, P_billetes, P_plazas, P_precio); break;
case 2: printf("Introduzca el numero de billetes que quiere devolver el cliente\n"); scanf("%d",&billetes); printf("Introduzca el pvp de 1 billete\n"); scanf("%f",&precio); if (suma-billetes<0 || (billetes-suma)<plazas) printf("Error; ha intentado devolver mas billetes que plazas compradas hay en el bus\n"); else { printf(" Ha decidido devolver %d billetes, a devolver %.2f euros\n", billetes, billetes*precio); suma=suma-billetes; libres=plazas+billetes; } system("PAUSE");
break;
case 3: printf("Las plazas del Autobus son: %d\n",plazas); printf("Las plazas libres del Autobus son: %d\n", plazas-suma); printf("Los billetes vendidos son: %d\n",suma); system("PAUSE"); break;
case 0: break;
default: { printf("La opcion seleccionada no existe; porfavor seleccione otra\n"); system("PAUSE"); } } system("CLS"); } while(opcion!=0);
}
Título: Re: Problema con funcones
Publicado por: RyogiShiki en 10 Marzo 2011, 15:37 pm
void venta ()
Mira como tienes venta, no le estás pasando ningún parametro! la lista de parametros eestá vacia. venta( P_suma, P_libres, P_billetes, P_plazas, P_precio)
Mientras que cuando la llamas le pasas 5 parametros, esos parametros deben estar declarados en la implementación y el prototipo de la funcion. Lo que te sugiero es que hagas y pongas los prototipos de las funciones antes de su implementación, así te evitas confusiones. Saludos
Título: Re: Problema con funciones
Publicado por: Gotttlieb en 10 Marzo 2011, 15:41 pm
Me olia alguna tonteria asi!!!! Muchissimas gracias .... a veces me desespero con estas cosas...
|