-
Lenguaje
PSeInt (Pseudocódigo)
-
Descripción
La política de la compañía telefónica es que cuando se realiza una llamada, el cobro es por el tiempo que esta dura, de tal forma que los primeros 5 minutos cuestan $ 1.00 c/u , los siguientes 3, 80 c c/u los siguientes 2 minutos, 70 c c/u y a partir del décimo minuto 50 c c/u.
Además se cargan impuestos de 3% cuando es domingo y si es día hábil en turno matutino el 15% y en turno vespertino el 10%.
Realice un algoritmo para determinar cuánto debe pagar por cada concepto una persona que realiza una llamada.
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
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
Proceso PoliticaDescuentoEImpuestosDeUnaCompaniaTelefonica
Escribir Sin Saltar "Ingresa el valor de minutos:";
Leer minutos;
Escribir "Selecciona el valor de dia.";
Escribir " 1.- domingo";
Escribir " 2.- hábil";
Escribir " 3.- inhábil";
Escribir Sin Saltar " :";
Repetir
Leer dia;
Si dia<1 O dia>3 Entonces
Escribir Sin Saltar "Valor incorrecto. Ingrésalo nuevamente.: ";
FinSi
Hasta Que dia>=1 Y dia<=3;
Escribir "Selecciona el valor de turno.";
Escribir " 1.- matutino";
Escribir " 2.- vespertino";
Escribir Sin Saltar " :";
Repetir
Leer turno;
Si turno<1 O turno>2 Entonces
Escribir Sin Saltar "Valor incorrecto. Ingrésalo nuevamente.: ";
FinSi
Hasta Que turno>=1 Y turno<=2;
subtotal <- 0;
Si minutos<=5 Entonces
subtotal <- minutos;
FinSi
Si minutos>5 Y minutos<=8 Entonces
subtotal <- 5.0+(minutos-5)*0.8;
FinSi
Si minutos>8 Y minutos<=10 Entonces
subtotal <- 5.0+3.0*0.8+(minutos-8)*0.7;
FinSi
Si minutos>10 Entonces
subtotal <- 5.0+3.0*0.8+2.0*0.7+(minutos-10)*0.5;
FinSi
impuestos <- 0;
Si dia = 1 Entonces
impuestos <- subtotal*0.03;
FinSi
Si dia = 2 Y turno = 1 Entonces
impuestos <- subtotal*0.15;
FinSi
Si dia = 2 Y turno = 1 Entonces
impuestos <- subtotal*0.1;
FinSi
total <- subtotal+impuestos;
Escribir "Valor de impuestos: ", impuestos;
Escribir "Valor de subtotal: ", subtotal;
Escribir "Valor de total: ", total;
FinProceso
Escribir Sin Saltar "Ingresa el valor de minutos:";
Leer minutos;
Escribir "Selecciona el valor de dia.";
Escribir " 1.- domingo";
Escribir " 2.- hábil";
Escribir " 3.- inhábil";
Escribir Sin Saltar " :";
Repetir
Leer dia;
Si dia<1 O dia>3 Entonces
Escribir Sin Saltar "Valor incorrecto. Ingrésalo nuevamente.: ";
FinSi
Hasta Que dia>=1 Y dia<=3;
Escribir "Selecciona el valor de turno.";
Escribir " 1.- matutino";
Escribir " 2.- vespertino";
Escribir Sin Saltar " :";
Repetir
Leer turno;
Si turno<1 O turno>2 Entonces
Escribir Sin Saltar "Valor incorrecto. Ingrésalo nuevamente.: ";
FinSi
Hasta Que turno>=1 Y turno<=2;
subtotal <- 0;
Si minutos<=5 Entonces
subtotal <- minutos;
FinSi
Si minutos>5 Y minutos<=8 Entonces
subtotal <- 5.0+(minutos-5)*0.8;
FinSi
Si minutos>8 Y minutos<=10 Entonces
subtotal <- 5.0+3.0*0.8+(minutos-8)*0.7;
FinSi
Si minutos>10 Entonces
subtotal <- 5.0+3.0*0.8+2.0*0.7+(minutos-10)*0.5;
FinSi
impuestos <- 0;
Si dia = 1 Entonces
impuestos <- subtotal*0.03;
FinSi
Si dia = 2 Y turno = 1 Entonces
impuestos <- subtotal*0.15;
FinSi
Si dia = 2 Y turno = 1 Entonces
impuestos <- subtotal*0.1;
FinSi
total <- subtotal+impuestos;
Escribir "Valor de impuestos: ", impuestos;
Escribir "Valor de subtotal: ", subtotal;
Escribir "Valor de total: ", total;
FinProceso