
Ayuda,ejercicio para aprender Pascal
Publicado por yo (1 intervención) el 05/04/2014 19:07:00
Hola me podríais ayudar a resolver este ejercicio, he buscado tanto por internet que cada vez estoy mas liada, estoy aprendiendo Pascal y se me hace muy difícil, todo es nuevo para mi. Gracias de ante mano.
hacer un programa más completo, que clasifique las llamadas en nacionales, provinciales y locales (N, P, L) y realizar los cálculos anteriores para cada tipo de llamadas.
El resultado debe ser parecido a:
Símbolo de MS - DOS
Duracion de la llamada (0 para terminar): 10
Tipo de llamada (N/P/L) N
Duracion de la llamada (0 para terminar): 20
Tipo de llamada (N/P/L) P
Duracion de la llamada (0 para terminar): 30
Tipo de llamada (N/P/L) L
Duracion de la llamada (0 para terminar): 40
Tipo de llamada (N/P/L) l
Duracion de la llamada (0 para terminar): 0
>> Nacional
> Llamadas: 1 Duracion: 10.0 > Media: 10.0
>> Provincial
> Llamadas: 1 Duracion: 20.0 > Media: 20.0
>> Local
> Llamadas: 2 Duracion: 70.0 > Media: 35.0
>> Total
> Numero de llamadas: 4
> Duracion total: 100.0
> Duracion media: 25.0
y mi programa es este, que he modificado tantas veces, que ya estoy liadísima con todo.
hacer un programa más completo, que clasifique las llamadas en nacionales, provinciales y locales (N, P, L) y realizar los cálculos anteriores para cada tipo de llamadas.
El resultado debe ser parecido a:
Símbolo de MS - DOS
Duracion de la llamada (0 para terminar): 10
Tipo de llamada (N/P/L) N
Duracion de la llamada (0 para terminar): 20
Tipo de llamada (N/P/L) P
Duracion de la llamada (0 para terminar): 30
Tipo de llamada (N/P/L) L
Duracion de la llamada (0 para terminar): 40
Tipo de llamada (N/P/L) l
Duracion de la llamada (0 para terminar): 0
>> Nacional
> Llamadas: 1 Duracion: 10.0 > Media: 10.0
>> Provincial
> Llamadas: 1 Duracion: 20.0 > Media: 20.0
>> Local
> Llamadas: 2 Duracion: 70.0 > Media: 35.0
>> Total
> Numero de llamadas: 4
> Duracion total: 100.0
> Duracion media: 25.0
y mi programa es este, que he modificado tantas veces, que ya estoy liadísima con todo.
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
Program perfil_llamadas;
var
duracion:integer;
duracionN,duracionP,duracionL:integer;
respuesta:char;
llamadasN,llamadasP,llamadasL:integer;
duracion_total:integer;
duracionTN,duracionTP,duracionTL:integer;
Tllamadas,TllamadasN,TllamadasP,TllamadasL:integer;
Tmedia:real;
mediaN,mediaP,mediaL:real;
TmediaN,TmediaP,TmediaL:real;
(*-- Programa Principal -- *)
begin
duracionTN:=0;
duracionTP:=0;
duracionTL:=0;
duracion_total:=0;
Tllamadas:=0;
llamadasN:=0;
TllamadasP:=0;
TllamadasL:=0;
TllamadasN:=0;
llamadasN:=0;
llamadasP:=0;
llamadasL:=0;
TmediaN:=0;
TmediaP:=0;
TmediaL:=0;
writeln('Duracion de la llamada (0 para terminar): ',duracion);
readln(duracion);
write('Tipo de llamada (N/P/L) ',respuesta);
readln(respuesta);
while(duracion>0)do
begin
writeln('Duracion de la llamada (0 para terminar): ',duracion);
readln(duracion);
write('Tipo de llamada (N/P/L) ',respuesta);
readln(respuesta);
if(respuesta='N')then
begin
duracionN:=duracionN+duracion;
llamadasN:=llamadasN+1;
duracionTN:=duracionN+duracionTN;
TllamadasN:=llamadasN+TllamadasN;
mediaN:=duracionN/llamadasN;
TmediaN:=mediaN+TmediaN;
readln;
end;
if(respuesta='P')then
begin
duracionP:=duracionP+duracion;
llamadasP:=llamadasP+1;
duracionTP:=duracionP+duracionTP;
TllamadasP:=llamadasP+TllamadasP;
mediaP:=duracionP/llamadasP;
TmediaP:=mediaP+TmediaP;
readln;
end;
if(respuesta='L')then
begin
duracionL:=duracionL+duracion;
llamadasL:=llamadasL+1;
duracionTL:=duracionL+duracionTL;
TllamadasL:=llamadasL+TllamadasL;
mediaL:=duracionL/llamadasL;
TmediaL:=mediaL+TmediaL;
readln;
end;
end;
Tllamadas:=(TllamadasN+TllamadasP+TllamadasL);
duracion_total:=duracion_total+duracion;
Tmedia:=duracion_total/Tllamadas;
if(duracion=0)then
begin
write(' >> Nacional');
write('> Llamadas: ',TllamadasN,'Duracion: ',duracionTN,'> Media: ',TmediaN:0:2);
readln;
write('>> Provincial');
write('> Llamadas: ',TllamadasP,'Duracion: ',duracionTP,'> Media: ',TmediaP:0:2);
readln;
write('>> Local');
write('> Llamadas: ',TllamadasL,'Duracion: ',duracionTL,'> Media: ',TmediaL:0:2);
readln;
writeln('>> Total');
write('> Numero de llamadas: ',Tllamadas);
readln(Tllamadas);
write('> Duracion total: ',duracion_total);
readln(duracion_total);
write('> Duracion media: ',Tmedia:0:2);
readln(Tmedia);
end;
end.
Valora esta pregunta


0