programa que convierte mayúsculas en minúsculas no funciona en CodeBlocks
Publicado por Josema (1 intervención) el 24/10/2017 20:10:36
Buenas, hice un programa que convierte mayúsculas en minúsculas, y quita las tildes.
Pero no me funciona en Code Blocks a pesar de poner en Settings> Editor>Encodings Settings -> UTF 8
Las tildes no las quita, el programa es este:
Pero no me funciona en Code Blocks a pesar de poner en Settings> Editor>Encodings Settings -> UTF 8
Las tildes no las quita, el programa es este:
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
#include <iostream>
using namespace std;
string normalizar(string cadena)
{
string salida;
for (unsigned i= 0; i<cadena.length(); i++) {
if (cadena[i] >= 'A' && cadena[i] <= 'Z')
salida+= tolower(cadena[i]);
else if (cadena[i] == char(0xC3)) {
switch (cadena[++i]) {
case (char(0xA1)): case (char(0x81)): salida+= 'a'; break;
case (char(0xA9)): case (char(0x89)): salida+= 'e'; break;
case (char(0xAD)): case (char(0x8D)): salida+= 'i'; break;
case (char(0xB3)): case (char(0x93)): salida+= 'o'; break;
case (char(0xBA)): case (char(0x9A)): case (char(0xBC)): case (char(0x9C)): salida+= 'u'; break;
case (char(0xB1)): case (char(0x91)): salida+= "ñ"; break;
default: salida+= (char) cadena[i];
}
}
else salida+= cadena[i];
}
return salida;
}
int main (void) {
string palabra;
int contador= 1;
while (cin >> palabra)
cout << contador++ << ". " << palabra << " -> " << normalizar(palabra) << endl;
}
Valora esta pregunta


0