-
Lenguaje
PSeInt (Pseudocódigo)
-
Descripción
Pide un número entero y muestra su valor en letra
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
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
Algoritmo ProcesoLetra
Escribir Sin Saltar "Ingrese una cantidad:";
Leer cantidad;
Escribir "";
Si cantidad < 0 Entonces
Escribir Sin Saltar "menos ";
cantidad <- -cantidad;
FinSi
Si cantidad = 0 Entonces
Escribir Sin Saltar "cero";
Sino
millones_en_letra(cantidad);
FinSi
Escribir "";
FinAlgoritmo
SubProceso unidades_en_letra(cantidad)
Dimension unidades(9);
unidades[1] <- "uno";
unidades[2] <- "dos";
unidades[3] <- "tres";
unidades[4] <- "cuatro";
unidades[5] <- "cinco";
unidades[6] <- "seis";
unidades[7] <- "siete";
unidades[8] <- "ocho";
unidades[9] <- "nueve";
Dimension decimas(9);
decimas[1] <- "diez";
decimas[2] <- "veinte";
decimas[3] <- "treinta";
decimas[4] <- "cuarenta";
decimas[5] <- "cincuenta";
decimas[6] <- "sesenta";
decimas[7] <- "setenta";
decimas[8] <- "ochenta";
decimas[9] <- "noventa";
Dimension diez_y(5);
diez_y[1] <- "once";
diez_y[2] <- "doce";
diez_y[3] <- "trece";
diez_y[4] <- "catorce";
diez_y[5] <- "quince";
Dimension centenas(9);
centenas[1] <- "ciento";
centenas[2] <- "";
centenas[3] <- "";
centenas[4] <- "";
centenas[5] <- "quinientos";
centenas[6] <- "";
centenas[7] <- "setecientos";
centenas[8] <- "";
centenas[9] <- "novecientos";
unidad <- cantidad mod 10;
decima <- ((cantidad - cantidad mod 10)/ 10) mod 10;
centena <- ((cantidad - cantidad mod 100)/ 100) mod 10;
Si centena <> 0 Entonces
Si centenas[centena] = "" Entonces
Escribir Sin Saltar unidades[centena], "cientos";
Sino
Si centena <> 1 O unidad <> 0 O decima <> 0 Entonces
Escribir Sin Saltar centenas[centena];
Sino
Escribir Sin Saltar "cien";
FinSi
FinSi
FinSi
Si unidad <> 0 O decima <> 0 Entonces
Si centena <> 0 Entonces
Escribir Sin Saltar " ";
FinSi
Si decima = 0 Entonces
Escribir Sin Saltar unidades[unidad];
Sino
Si unidad = 0 Entonces
Escribir Sin Saltar decimas[decima];
Sino
Si decima = 1 Y unidad>=1 Y unidad<=5 Entonces
Escribir Sin Saltar diez_y[unidad];
Sino
Si decima = 1 Entonces
Escribir Sin Saltar "dieci", unidades[unidad];
Sino
Si decima = 2 Entonces
Escribir Sin Saltar "veinti", unidades[unidad];
Sino
Escribir Sin Saltar decimas[decima], " y ", unidades[unidad];
FinSi
FinSi
FinSi
FinSi
FinSi
FinSi
FinSubproceso
SubProceso millares_en_letra(cantidad)
unidades <- cantidad mod 1000;
miles <- ((cantidad - cantidad mod 1000)/ 1000) mod 1000;
Si miles>1 Entonces
unidades_en_letra(miles);
FinSi
Si miles <> 0 Entonces
Escribir Sin Saltar "mil";
FinSi
Si unidades <> 0 Y miles <> 0 Entonces
Escribir Sin Saltar " ";
FinSi
unidades_en_letra(unidades);
FinSubproceso
SubProceso millones_en_letra(cantidad)
unidades <- cantidad mod 1000000;
millares <- ((cantidad - cantidad mod 1000000)/ 1000000) mod 1000000;
Si millares>1 Entonces
millares_en_letra(millares);
Escribir Sin Saltar " millones";
Sino
Si millares <> 0 Entonces
Escribir Sin Saltar "un millón";
FinSi
FinSi
Si unidades <> 0 Y millares <> 0 Entonces
Escribir Sin Saltar " ";
FinSi
millares_en_letra(unidades);
FinSubproceso
Escribir Sin Saltar "Ingrese una cantidad:";
Leer cantidad;
Escribir "";
Si cantidad < 0 Entonces
Escribir Sin Saltar "menos ";
cantidad <- -cantidad;
FinSi
Si cantidad = 0 Entonces
Escribir Sin Saltar "cero";
Sino
millones_en_letra(cantidad);
FinSi
Escribir "";
FinAlgoritmo
SubProceso unidades_en_letra(cantidad)
Dimension unidades(9);
unidades[1] <- "uno";
unidades[2] <- "dos";
unidades[3] <- "tres";
unidades[4] <- "cuatro";
unidades[5] <- "cinco";
unidades[6] <- "seis";
unidades[7] <- "siete";
unidades[8] <- "ocho";
unidades[9] <- "nueve";
Dimension decimas(9);
decimas[1] <- "diez";
decimas[2] <- "veinte";
decimas[3] <- "treinta";
decimas[4] <- "cuarenta";
decimas[5] <- "cincuenta";
decimas[6] <- "sesenta";
decimas[7] <- "setenta";
decimas[8] <- "ochenta";
decimas[9] <- "noventa";
Dimension diez_y(5);
diez_y[1] <- "once";
diez_y[2] <- "doce";
diez_y[3] <- "trece";
diez_y[4] <- "catorce";
diez_y[5] <- "quince";
Dimension centenas(9);
centenas[1] <- "ciento";
centenas[2] <- "";
centenas[3] <- "";
centenas[4] <- "";
centenas[5] <- "quinientos";
centenas[6] <- "";
centenas[7] <- "setecientos";
centenas[8] <- "";
centenas[9] <- "novecientos";
unidad <- cantidad mod 10;
decima <- ((cantidad - cantidad mod 10)/ 10) mod 10;
centena <- ((cantidad - cantidad mod 100)/ 100) mod 10;
Si centena <> 0 Entonces
Si centenas[centena] = "" Entonces
Escribir Sin Saltar unidades[centena], "cientos";
Sino
Si centena <> 1 O unidad <> 0 O decima <> 0 Entonces
Escribir Sin Saltar centenas[centena];
Sino
Escribir Sin Saltar "cien";
FinSi
FinSi
FinSi
Si unidad <> 0 O decima <> 0 Entonces
Si centena <> 0 Entonces
Escribir Sin Saltar " ";
FinSi
Si decima = 0 Entonces
Escribir Sin Saltar unidades[unidad];
Sino
Si unidad = 0 Entonces
Escribir Sin Saltar decimas[decima];
Sino
Si decima = 1 Y unidad>=1 Y unidad<=5 Entonces
Escribir Sin Saltar diez_y[unidad];
Sino
Si decima = 1 Entonces
Escribir Sin Saltar "dieci", unidades[unidad];
Sino
Si decima = 2 Entonces
Escribir Sin Saltar "veinti", unidades[unidad];
Sino
Escribir Sin Saltar decimas[decima], " y ", unidades[unidad];
FinSi
FinSi
FinSi
FinSi
FinSi
FinSi
FinSubproceso
SubProceso millares_en_letra(cantidad)
unidades <- cantidad mod 1000;
miles <- ((cantidad - cantidad mod 1000)/ 1000) mod 1000;
Si miles>1 Entonces
unidades_en_letra(miles);
FinSi
Si miles <> 0 Entonces
Escribir Sin Saltar "mil";
FinSi
Si unidades <> 0 Y miles <> 0 Entonces
Escribir Sin Saltar " ";
FinSi
unidades_en_letra(unidades);
FinSubproceso
SubProceso millones_en_letra(cantidad)
unidades <- cantidad mod 1000000;
millares <- ((cantidad - cantidad mod 1000000)/ 1000000) mod 1000000;
Si millares>1 Entonces
millares_en_letra(millares);
Escribir Sin Saltar " millones";
Sino
Si millares <> 0 Entonces
Escribir Sin Saltar "un millón";
FinSi
FinSi
Si unidades <> 0 Y millares <> 0 Entonces
Escribir Sin Saltar " ";
FinSi
millares_en_letra(unidades);
FinSubproceso