convertir de C a JAVA
Publicado por angela perez (1 intervención) el 22/04/2020 22:42:21
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
#include< stdio.h >
#include< conio.h >
struct tiempo
{
int hor;
int min;
};
struct Cliente
{
int ced,pla;
char nom[50];
float val;
struct tiempo ent;
struct tiempo sal;
};
void portada(){
printf("...............................................................................\a\n");
printf("................******.*****.** **.*****.****.*****.*****..**................\a\n");
printf("................ ** .** **.*** ***.** **.** .** **.**.**.***................\a\n");
printf("................ ** .*****.*******.*****.****.*****.*****..**................\a\n");
printf("................ ** .** **.** * **.** .** .*** ....**..**................\a\n");
printf("................**** .** **.** **.** .****.** **....**.****...............\a\n");
printf("...............................jamper91.hostei.com.............................\a\n");
printf("\n");
};
void final(){
printf("-------------------------------------------------------------------------------\a\n");
printf ("******************************************************************************\a\n");
printf ("******************************************************************************\a\n");
printf("-------------------------------------------------------------------------------\a\n");
};
/*
-- Una función que registre la entrada de un vehÃculo, capturando todos los datos del cliente (excepto la hora de salida y el
valor a pagar) y almacenándolo en el vector en la posición correspondiente, según la llegada del cliente.
*/
void llenar(struct Cliente c[],int t)
{
for(int i=0;i< t;i++)
{
printf("\n\tDigite cedula %d:",i+1);
scanf("%d",&c[i].ced);
printf("\t %d\n",c[i].ced);
printf("\tDigite nombre %d:",i+1);
scanf("%s",&c[i].nom);
printf("\t %s\n",c[i].nom);
printf("\tDigite placa %d:",i+1);
scanf("%d",&c[i].pla);
printf("\t %d\n",c[i].pla);
printf("\tDigite Hora entrada %d:",i+1);
scanf("%d",&c[i].ent.hor);
printf("\t %d\n",c[i].ent.hor);
printf("\tDigite Minutos entrada %d:",i+1);
scanf("%d",&c[i].ent.min);
printf("\t %d\n",c[i].ent.min);
}
}
/*
Una función que dado un número de placa, retorne la posición dentro del vector donde se encuentra registrado dicho
vehÃculo.
*/
int buscarporPlaca(struct Cliente c[],int t,int p)
{
//Recorro todos los clientes
for(int i=0;i< t;i++)
{
if(c[i].pla==p)
return i;
}
return -1;
}
/*
Una función que registre la salida de un auto. Registre la hora y minutos de salida, Calcule el total a pagar (incluyendo
descuentos e iva) por parte de un cliente dando dentro de los parámetros la posición donde se encuentra ubicado el registro
respectivo, y el valor del minuto. Dentro de esta misma función se debe registrar este valor en el respectivo campo.
*/
void registrarSalida(struct Cliente c[],int t,int vM)
{
int p,h,m,pos;
//Variable que me acumulara el descuento
float des;
float total;
printf("Digite la placa del auto a Salir:");
scanf("%d",&p);
pos=buscarporPlaca(c,t,p);
if(p!=-1)
{
printf("Digite la hora de Salida:\n");
scanf("%d",&h);
printf("Digite los minutos de Salida:\n");
scanf("%d",&m);
//Guardo la informacion en el registro
c[pos].sal.hor=h;
c[pos].sal.min=m;
printf("Guarde la informacion\n");
//Determino si la placa es par
if((c[pos].pla%2)==0)
{
des=0.20;
}else{
des=0.0;
}
printf("Determine le descuento\n");
//Determino el total de hora que estuvo en el estacionamineto
int tH=h-c[pos].ent.hor;
//Determino el total de minutos que estuvo en el estacionamineto
int tM=m-c[pos].ent.min;
printf("Determine el total de horas: %d y el total de min:%d\n",tH,tM);
//Tengo que tener el total de minutos, para luego multiplicar ese total, por el valor por minuto (vM) y luego multiplicarle el descuento
//Recuerda que si el descuento es el 20% se hace (1-0.20)=0.80, ese valor es el que se multiplica por el total
c[pos].val=((((tH*60)+tM)*vM)*(1-des));
//Ahora le agrego el iva =16%
c[pos].val=c[pos].val+(c[pos].val*0.16);
}else{
printf("No se encontro esa placa");
}
}
/*
Una función que calcule y retorne el total recaudado por el parqueadero en un dÃa.
*/
float totalRecaudado(struct Cliente c[],int ta)
{
float t=0;
for(int i=0;i< ta;i++)
{
//Verifico que ya haya salio el carro,
if(c[i].val!=-1.0)
{
t=t+c[i].val;
}
}
printf("El total que recaudo el parqueadero en el dia fue: %.2f",t);
return t;
}
/*
En el main se debe, capturar el valor del minuto de parqueo, hacer uso adecuado de las funciones ya definidas y presentar
un menú con las siguientes opciones:
1. Registro de entrada
2. Registro de salida
3. Terminar dÃa
Este menú debe repetirse hasta que el administrador del parqueadero teclee la opción 3. En cuyo caso se debe imprimir en pantalla
el total recaudado en el dÃa
*/
main()
{
int n=1,vM,op=1;
portada();
printf("Valor del minuto:");
scanf("%d",&vM);
struct Cliente c[n];
while(op!=3)
{
printf("1. Registro de Entrada\n");
printf("2. Registro de Salida\n");
printf("3. Salir\n");
printf("Escoje:");
scanf("%d",&op);
if(op==1){
llenar(c,n);
}else if(op==2){
registrarSalida(c,n,vM);
}else if(op==3){
//En caso de que escrbia algun numero diferente de 1,2,3
}else {
printf("\n\t Opcion no valida \n");
}
}
totalRecaudado(c,n);
final();
getch();
return 0;
}
POR FAVORRR, ME AYUDAN
Valora esta pregunta


0