Hola,<div><br></div><div>He hecho el siguiente codigo:</div><div><br></div><div><div>#include<iostream></div><div>using namespace std;</div><div><br></div><div>int iesimo(int N, int i){</div><div> int comparador,resultado;</div>
<div> comparador=1;</div><div> resultado=1;</div><div><br></div><div> for (int j=0;j<i;j++){</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>comparador*=10;</div><div> }</div><div> if (comparador/10<N){</div>
<div><span class="Apple-tab-span" style="white-space:pre"> </span>resultado=N%comparador;</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>comparador/=10;</div><div><span class="Apple-tab-span" style="white-space:pre"> </span> if (comparador!=0){</div>
<div><span class="Apple-tab-span" style="white-space:pre"> </span> resultado/=comparador;</div><div><span class="Apple-tab-span" style="white-space:pre"> </span> }</div><div><br></div><div> }else{</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>resultado=-1;</div>
<div> }</div><div> return resultado;</div><div>}</div><div><br></div><div>int main(){</div><div>int num,digitos;</div><div><br></div><div>cout<<"Introduzca un numero: \n";</div><div>cin>>num;</div>
<div><br></div><div>digitos=0;</div><div><br></div><div> while (iesimo(num,digitos)!=-1){</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>digitos++;</div><div> }</div><div>digitos--;</div><div><br>
</div><div>cout<<"Tiene "<<digitos<<" digitos\n";</div><div><br></div><div>return 0;</div><div>}</div><div><br></div><div><br></div><div>Lo que quiero que haga ese programa es en primer lugar, al insertar un numero cualquiera me diga cuantos digitos componen ese numero, por ejemplo 35435 son 5 digitos.</div>
<div>El problema que tengo es que cuando introduzco un numero de 9 o más digitos, el resultado que me devuelve es erroneo.</div><div><br></div><div>Una vez sepa los digitos que tiene, tengo que sumar las posiciones simetricas, (el primero con el ultimo, el segundo con penultimo) aunque para esto ya haré su implementación, pero primero necesitaria el resultado correcto de los digitos que forman ese numero.</div>
<div><br></div><div>Agradecería cualquier comentario o ayuda.</div><div><br></div><div>Saludos,</div><br>-- <br><img src="http://antoniosanchez.webcindario.com/images/Firma.jpg"><br><br>
</div>