El punto era emular algo asi:
entrada:
holaaaa muuundooo
salida:
hol3a m2und2o
Logre hacer esto:
Código
#include <iostream>El problema en el code radica en que utilizo un char para contar las veces y poder meterlo en la cadena sin problemas pero como en la tabla ascii solo existe espacio del 1 al 9 despues de esos sigue monstrando el caracter correspondiente en la tabla.
using namespace std;
int main()
{
char cadena[100],cadena_n[100], *aux = cadena-1;
char veces('0'); int i(0);
cout << "Cadena: ";
cin.getline(cadena,100);
while( *aux++ )
{
if(*aux == *(aux+1) )
{
veces++;
if( *(aux+1) != *(aux+2) )
{
cadena_n[i] = veces;
i++;
veces = '0';
}
continue;
}
cadena_n[i] = *aux;
i++;
}
cadena_n[i] = '\0';
cout << "\n\nCadena_n: " << cadena_n;
cout << "\n\nCadena: " << cadena;
setbuf(stdin, NULL);
cin.get();
return 0;
}
Me pregunto de que forma podria lograr meter el integer en la cadena?
Se me ocurre una forma de hacerlo pero es poco practico y muy engorroso. Pense en hacer uso de atoi y itoa pero no veo de q forma implementarlo correctamente para que me de el resultado q quiero. :/
Pues d q forma se podria hacer tambien? : )
un saludo y gracias!










Autor


En línea




