UTNianos

Versión completa: Ayuda con codigo c++
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Hola! Estoy haciendo la guia 1.5 de Pablo, pero estoy trabada en tres ejercicioswall, me los tomo en un parcialito y no los entendi y ahora me los encuentro en la guia, no se por donde empezar, como armarlo, alguien me tira aunque sea un centro?
Los ejercicios
A)Desarrollar y probar adecuadamente la siguiente funcion:
string ltrim (string s)
Retorna una copia de la cadena s pero recortando los espacios a la izquierda


B) Desarrollar y probar adecuadamente la siguiente funcion:
string rtrim (string s)
Retorna una copia de la cadena s pero recortando los espacios a la derecha


C) Desarrollar y probar adecuadamente la siguiente funcion:
string trim (string s)
Retorna una copia de la cadena s pero recortando los de los extremos

Gracias!
Para estos casos te viene muy bien leer la documentación de <string> y más que nada contenedores dinámicos como vectores aunque se puede tranquilamente hacerlo con array's.

Leyendo la documentación de <string> te vas a dar una idea por tu cuenta.

Suerte.
Yo lo hice asi, si te sirve =P

10)
string ltrim(string s)
{
int cont = 0;
int longitud = length(s);
while(s[cont]==' ')
{
cont++;
}
string sl = substring(s, cont, longitud);
return sl;
}

11)
string rtrim(string s)
{
int cont = 0;
int longitud = length(s)-1;
while(s[longitud]==' ')
{
longitud--;
}
string sr = substring(s, cont, longitud+1);
return sr;
}

12)
string trim(string s)
{
string sl = ltrim(s);
sl = rtrim(sl);
return sl;
}


#include <string>
string ltrim(string s) {
int cont = 0;
while(s[cont++] == ' ');
return substring(s, cont-1, length(s));
}


Pablo Sznajdleder???

Yo la cursé con él... Y según lo que tengo la hice así...

Cabe aclarar que pablo te hace hacer los algoritmos de las funciones de cadena, y no podes usar la biblioteca de C...

Tomate tu tiempo para comprenderlo...


string substring(string s, int i, int j)
{
string ret = "";
for (int cont = i; cont < j; cont++)
{
ret = ret + s[cont];
}

return ret;
}

string ltrim(string s)
{
int i, j;
string s_n;

for (i = 0; s[i] == ' '; i++);
for (j = i; s[j] != '\0'; j++);

s_n = substring(s, i, j);

return s_n;
}

string rtrim(string s)
{
int i;
string s_n;

for (i = length(s) - 1; s[i] == ' '; i--);
s_n = substring(s, 0, i + 1);

return s_n;
}

string trim(string s)
{
return ltrim(rtrim(s));
}


(11-06-2015 14:46)FMB89 escribió: [ -> ]


#include <string>
string ltrim(string s) {
int cont = 0;
while(s[cont++] == ' ');
return substring(s, cont-1, length(s));
}



Muy bueno!
URLs de referencia