El problema planteado es que el usuario escribe un numero k igual al numero de n que quiere duplicar y los n que han de ser duplicados.
La entrada seria por ejemplo 2 3 4 y la salida debería ser 6 8. Y si la entrada es 4 la salida deberia ser nula y esperar una nueva k.
Bien antes de todo dejo lo que intenta ser mi solución a aquello que me piden:
Código c++:
Ver original
#include <iostream> #include <string> using namespace std; int main () { string st; while (getline(cin, st)) { int n=st[0]; int k=2; while (n>0 and k<st.size()) { cout << st[k]+st[k] << " "; n=n-1; k=k+2; } cout << endl; } }
Os prometo que lo he repasado más de una vez pero no encuentro el error, se que la clave está en que el numero st[k]+st[k] no se porque no puede salir y sale otro diferente (104,102 o cosas así...).
En cambio cuando quito el (+st[k]) funciona, aunque no lo duplica claro, no lo entiendo :(
Bueno, haber si me podéis echar un cable, no pido que me lo solucionéis pero haber si me podéis dar alguna pista o alguna ayuda os lo agradecería, que voy un poco perdido!
Muchas Gracias!