-
Lenguaje
PSeInt (Pseudocódigo)
-
Descripción
Calcular lo que hay que pagar por un conjunto de llamadas telefónicas. Por cada llamada se ingresa el tipo (Internacional, Nacional) y la duración en minutos. El criterio que se sigue para calcular el costo de cada llamada es el siguiente:
- Internacional: 3 primeros minutos $100.00
- Cada minuto adicional $60.00
- Nacional: 3 primeros minutos $25.00
- Cada minuto adicional $12.00
- Total de llamadas y minutos acumulados en la cantidad de llamadas.
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
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
Proceso LlamadaInternacionalYNacional
minutos_acumulados <- 0;
tota_de_llamadas <- 0;
Repetir
Escribir Sin Saltar "Ingresa el valor de duracion en minutos:";
Leer duracion_en_minutos;
pago_por_la_llamada <- 0;
Escribir "Selecciona el valor de tipo de llamada.";
Escribir " 1.- Internacional";
Escribir " 2.- Nacional";
Escribir Sin Saltar " :";
Repetir
Leer tipo_de_llamada;
Si tipo_de_llamada<1 O tipo_de_llamada>2 Entonces
Escribir Sin Saltar "Valor incorrecto. Ingrésalo nuevamente.: ";
FinSi
Hasta Que tipo_de_llamada>=1 Y tipo_de_llamada<=2;
Si tipo_de_llamada = 1 Y tipo_de_llamada<=3 Entonces
pago_por_la_llamada <- duracion_en_minutos*100;
FinSi
Si tipo_de_llamada = 1 Y tipo_de_llamada>3 Entonces
pago_por_la_llamada <- 3*100+(duracion_en_minutos-3)*60;
FinSi
Si tipo_de_llamada = 2 Y tipo_de_llamada<=3 Entonces
pago_por_la_llamada <- duracion_en_minutos*25;
FinSi
Si tipo_de_llamada = 2 Y tipo_de_llamada>3 Entonces
pago_por_la_llamada <- 3*25+(duracion_en_minutos-3)*12;
FinSi
tota_de_llamadas <- tota_de_llamadas+pago_por_la_llamada;
minutos_acumulados <- minutos_acumulados+duracion_en_minutos;
Escribir "Valor de pago por la llamada: ", pago_por_la_llamada;
Escribir "";
Repetir
Escribir Sin Saltar "¿Deseas repetir el proceso? (S/N):";
Leer tecla_repetir;
Hasta Que tecla_repetir='s' O tecla_repetir='n' O tecla_repetir='S' O tecla_repetir='N'
Hasta Que tecla_repetir='n' O tecla_repetir='N'
Escribir "Valor de minutos acumulados: ", minutos_acumulados;
Escribir "Valor de tota de llamadas: ", tota_de_llamadas;
FinProceso
minutos_acumulados <- 0;
tota_de_llamadas <- 0;
Repetir
Escribir Sin Saltar "Ingresa el valor de duracion en minutos:";
Leer duracion_en_minutos;
pago_por_la_llamada <- 0;
Escribir "Selecciona el valor de tipo de llamada.";
Escribir " 1.- Internacional";
Escribir " 2.- Nacional";
Escribir Sin Saltar " :";
Repetir
Leer tipo_de_llamada;
Si tipo_de_llamada<1 O tipo_de_llamada>2 Entonces
Escribir Sin Saltar "Valor incorrecto. Ingrésalo nuevamente.: ";
FinSi
Hasta Que tipo_de_llamada>=1 Y tipo_de_llamada<=2;
Si tipo_de_llamada = 1 Y tipo_de_llamada<=3 Entonces
pago_por_la_llamada <- duracion_en_minutos*100;
FinSi
Si tipo_de_llamada = 1 Y tipo_de_llamada>3 Entonces
pago_por_la_llamada <- 3*100+(duracion_en_minutos-3)*60;
FinSi
Si tipo_de_llamada = 2 Y tipo_de_llamada<=3 Entonces
pago_por_la_llamada <- duracion_en_minutos*25;
FinSi
Si tipo_de_llamada = 2 Y tipo_de_llamada>3 Entonces
pago_por_la_llamada <- 3*25+(duracion_en_minutos-3)*12;
FinSi
tota_de_llamadas <- tota_de_llamadas+pago_por_la_llamada;
minutos_acumulados <- minutos_acumulados+duracion_en_minutos;
Escribir "Valor de pago por la llamada: ", pago_por_la_llamada;
Escribir "";
Repetir
Escribir Sin Saltar "¿Deseas repetir el proceso? (S/N):";
Leer tecla_repetir;
Hasta Que tecla_repetir='s' O tecla_repetir='n' O tecla_repetir='S' O tecla_repetir='N'
Hasta Que tecla_repetir='n' O tecla_repetir='N'
Escribir "Valor de minutos acumulados: ", minutos_acumulados;
Escribir "Valor de tota de llamadas: ", tota_de_llamadas;
FinProceso