Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Error al compilar

Estas en el tema de Error al compilar en el foro de C/C++ en Foros del Web. Buenas, al compilar este programa me aparecen unos errores que nose porque se deben y no doy con la solución. Gracias de antemano por la ...
  #1 (permalink)  
Antiguo 26/11/2009, 12:38
 
Fecha de Ingreso: junio-2007
Mensajes: 53
Antigüedad: 17 años, 5 meses
Puntos: 0
Error al compilar

Buenas, al compilar este programa me aparecen unos errores que nose porque se deben y no doy con la solución. Gracias de antemano por la ayuda prestada.
errores al compilar
In function `cargarProductosVendedor':
syntax error before '*' token
in function `rankingVendedores':
`A' undeclared (first use in this function)

#include <stdio.h>
#include <stdlib.h>
#define MAX_PRODUCTOS 100
#define MAX_VEN 25
#define FINAL_SECUENCIA -3
#define FINAL_VEN -2
#define FINAL_ALBA -1
#define FINAL_SEC_SALIDA 0
typedef enum {FALSE, TRUE}bool;
typedef struct{
int idVen;
int IdProductoMasIngresos ;
float IngresosProductoMasIngresos;
}tResultadoVen;
typedef struct{
int idVenMasIngresos;
float IngresosVenMasIngresos;
tResultadoVen resultadosVen[MAX_VEN];
int nVen;
}tResultados;
typedef struct{
int idProducto ;
float ingresos;
}tProducto;
typedef struct{
tProducto productos[MAX_PRODUCTOS];
int nProductos;
}tProductosVen;
void inicializarResultadosVen(tResultados *A);
void cargarProductosVendedor(tProductosVen *B, tProducto p);
void resultadosVendedor(tProductosVen B, tResultadoVen *v, float *calculado);
void rankingVendedores(tResultados *A, tResultadoVen v, float calculado);
void escribirResultados(tResultados A);
float cuantoEs(float cantidad, float precio);
int main()
{
tResultados A;
tProductosVen B;
tResultadoVen v;
tProducto p;
int albaran;
float cantidad, precio, calculado;
cantidad = 0.0;
precio = 0.0;
inicializarResultadosVen(&A);
printf("Introduce codigo v: \n");
scanf("%d", &v.idVen);
while((v.idVen != FINAL_SECUENCIA) && (A.nVen < MAX_VEN)){
printf("Introduce codigo albaran: \n");
scanf("%d",&albaran);
B.nProductos = 0;
while((albaran != FINAL_VEN) && (B.nProductos < MAX_PRODUCTOS)){
printf("Introduce codigo p:\n");
scanf("%d", &p.idProducto);
while((p.idProducto != FINAL_ALBA) && (B.nProductos <= MAX_PRODUCTOS)){
printf("Introduce cantidad:\n");
scanf("%f",&cantidad);
printf("Introduce precio:\n");
scanf("%f",&precio);
p.ingresos = cuantoEs(cantidad, precio);
cargarProductosVendedor(&B,p);
printf("Introduce codigo p:\n");
scanf("%d", &p.idProducto);
}
printf("Introduce codigo albaran: \n");
scanf("%d",&albaran);
}
resultadosVendedor(B,&v,&calculado);
rankingVendedores(&A,v,calculado);
printf("Introduce codigo v: \n");
scanf("%d", &v.idVen);
}
escribirResultados(A);
printf("%d",FINAL_SEC_SALIDA);
system("PAUSE");
return 0;
}

void inicializarResultadosVen(tResultados *A)
{
A->nVen=0;
}
void cargarProductosVendedor(tProductosVen *B, tProducto p)
{
int i;
bool encontrado;
i=0;
encontrado = FALSE;
while((i < B->nProductos) && (!encontrado)){
if(p.idProducto == B->productos[i].idProducto){
B->productos[i].ingresos = B->productos[i].ingresos + p.ingresos;
encontrado=TRUE;
}else{
i = i + 1;
}
if(!encontrado){
B->productos[i].idProducto = p.idProducto;
B->productos[i].ingresos = p.ingresos;
B->nProductos = B->nProductos + 1;
}
}
void resultadosVendedor(tProductosVen B, tResultadoVen *v, float *calculado)
{
int i;
*calculado = 0.0;
for(i = 1; i < B.nProductos; i++){
if(v->IngresosProductoMasIngresos < B.productos[i].ingresos){
v->IdProductoMasIngresos = B.productos[i].idProducto;
v->IngresosProductoMasIngresos = B.productos[i].ingresos;
}
*calculado = *calculado + B.productos[i].ingresos;
}
}
void rankingVendedores(tResultado *A, tResultadoVen v, float calculado){
int i;
A->nVen = A->nVen + 1;
i = A->nVen;
if(calculado > A->IngresosVenMasIngresos){
A->IngresosVenMasIngresos = calculado;
A->idVenMasIngresos = v.idVen;
}
A->resultadoVen[i] = v;
}
void escribirResultados(tResultado A)
{
int i;
printf("%d ", A.idVenMasIngresos);
printf("%.2f ",A.IngresosVenMasIngresos);
for(i = 1;i < A.nVen; i++){
if(A.resultadoVen[i].ingresosProductoMasIngresos > 0){
printf("%d ",A.resultadoVen[i].idVen);
printf("%d ",A.resultadoVen[i].idProductoMasIngresos);
printf("%.2f ",A.resultadoVen[i].ingresosProductoMasIngresos);
}
}
}
float cuantoEs(float cantidad, float precio)
{
float ingresado;
ingresado = cantidad * precio;
return ingresado;
}
  #2 (permalink)  
Antiguo 26/11/2009, 12:59
Avatar de Anubis_Slash  
Fecha de Ingreso: mayo-2009
Ubicación: aqui y haya
Mensajes: 173
Antigüedad: 15 años, 6 meses
Puntos: 5
Respuesta: Error al compilar

tal vez sea por que es tResultados con la s al final....


te recomiendo que utlices alguna de las herramientas con las que cuenta el foro para ordenar el codigo, porque asi da flojera siquiera ponerse a leerlo...

saludos
__________________
Bienvenidos los karmas.
Quejas, sugerencias o dudas, se awantan......
  #3 (permalink)  
Antiguo 27/11/2009, 00:34
 
Fecha de Ingreso: junio-2007
Mensajes: 53
Antigüedad: 17 años, 5 meses
Puntos: 0
Respuesta: Error al compilar

Gracias Anubis, era eso. Hay veces que hay que colgar las cosas porque si no por mucho mirar no lo ves. Gracias de nuevo.

Saludos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:07.