Aca el problema:
Realizar un prog q permita calcular los importes que se les liquida a los 12 choferes de una empresa de colectivos de acuerdo a la cantidad de kilometros recorridos, y el tipo de vehiculo que conduce, en un dia.
Los datos a ingresar son:
Nombre (20 caracteres validos), patente (6 caracteres validos), KMinicial, KMfinal, y tipo
Los Kilomtros finales se calculan
KMfinal - KMinicial.
Luego a los km finales se calcula segun su tipo una tarifa segun
tipo=1 --->0.70$ x KM
tipo=2 ----> 0.90$ x KM
(Hay q validad tipo)
Se debe informar:
A- Cuantos ganan mas que el promedio y quienes son (Nombre y patente)
b- Cual es el porcentaje del total de la liquidaciones que le corresponde al ingresado en ultimo termino.
Nota: Se deben usar almenos 2 funciones, no usar variables, arrays, ni funciones globales.
Nota 2: Agregado por mi ya que el usuario es bueno, no hay overflow (Osea que el nombre no sobrepasa los 20 carateres, ni la patente).
PD: Lo agrego porq al porf tampoco quiere que lo controlemos. Se que se debe controlar, pero me acoto a lo que me piden.
Resolucion del problema con fallas :S
Código
ERROR
#include <stdio.h> int main () { char nomb [12][21], pat [12][7]; int veckm [12][3], vectipo [12] [1]; void ingresar(char nomb[12][21], char pat [12][7], int veckm [12][3], int vectipo [12][1] ); void calcular (char nomb[12][21], char pat[12][7], int veckm [12][3], int vectipo [12][1]); ingresar (nomb, pat, veckm, vectipo); calcular (nomb, pat, veckm, vectipo); return 0; } void ingresar (char nomb[12][21],char pat[12][7],int veckm[12][3],int vectipo [12][1]) //declaro variables temporales para el ingreso que luego son enviadas a los vectores { int i, tipo1, ki, kf char nombres[21]; char pate[7]; for (i=0; i<13; i++){ do{ }while (tipo1>1 && tipo1<2) //Cargo en el vector el tipo vectipo [i][1]=tipo1; //cargo en los dos vectores los 12 choferes segun la posicion de i nomb [i][]=nombres; pat [i][]=pate; //cargo en un vector de 15 por 3, para la col 0 ki, para col 1 kf, y en col 2 la dif de ambos veckm [i][0]=ki; veckm [i][1]=kf; veckm [i][2]=ki-kf; //hasta aca esta echo el ingreso } void calcular (char nomb[12][21],char pat[12][7],int veckm[12][3],int vectipo [12][1]) { int i=0; float prom, tot; for (i=0; i<13;i++){ if (vectipo[i][1]==1){ veckm [i][2]=veckm [i][2]*.70;} else { veckm [i][2]=veckm [i][2]*.90; } tot+=veckm[i][2]; } prom=tot/12; for (i=0;i<13;i++){ if (veckm [i][2]>prom) } printf ("El porsentaje que le coresponde al ultimo ingresado %s es:%f\a",nomb[12][],(veckm [12][2]*100)/tot); }
Citar
C:\Users\juanca\Desktop\Untitled11.c||In function `ingresar':|
C:\Users\juanca\Desktop\Untitled11.c|21|error: syntax error before "char"|
C:\Users\juanca\Desktop\Untitled11.c|26|error: `nombres' undeclared (first use in this function)|
C:\Users\juanca\Desktop\Untitled11.c|26|error: (Each undeclared identifier is reported only once|
C:\Users\juanca\Desktop\Untitled11.c|26|error: for each function it appears in.)|
C:\Users\juanca\Desktop\Untitled11.c|38|error: syntax error before "vectipo"|
C:\Users\juanca\Desktop\Untitled11.c|40|error: syntax error before ']' token|
C:\Users\juanca\Desktop\Untitled11.c|41|error: syntax error before ']' token|
C:\Users\juanca\Desktop\Untitled11.c||In function `calcular':|
C:\Users\juanca\Desktop\Untitled11.c|68|error: syntax error before ']' token|
C:\Users\juanca\Desktop\Untitled11.c|70|error: syntax error before ']' token|
||=== Build finished: 9 errors, 0 warnings ===|
C:\Users\juanca\Desktop\Untitled11.c|21|error: syntax error before "char"|
C:\Users\juanca\Desktop\Untitled11.c|26|error: `nombres' undeclared (first use in this function)|
C:\Users\juanca\Desktop\Untitled11.c|26|error: (Each undeclared identifier is reported only once|
C:\Users\juanca\Desktop\Untitled11.c|26|error: for each function it appears in.)|
C:\Users\juanca\Desktop\Untitled11.c|38|error: syntax error before "vectipo"|
C:\Users\juanca\Desktop\Untitled11.c|40|error: syntax error before ']' token|
C:\Users\juanca\Desktop\Untitled11.c|41|error: syntax error before ']' token|
C:\Users\juanca\Desktop\Untitled11.c||In function `calcular':|
C:\Users\juanca\Desktop\Untitled11.c|68|error: syntax error before ']' token|
C:\Users\juanca\Desktop\Untitled11.c|70|error: syntax error before ']' token|
||=== Build finished: 9 errors, 0 warnings ===|
Desde ya gracias, acepto sugerencias.
Y si es posible si dan alguna resolucion o comentario, que se adecue a mi logica o estructuracion, para poder entenderlo mejor yo.
Si no sigen mi logica o quieren hacerlo por su cuenta, pongan comentarios para poder entenderlo.
Saludos.