elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Necesito un poco de ayuda :$
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Necesito un poco de ayuda :$  (Leído 2,178 veces)
Carlos2210

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Necesito un poco de ayuda :$
« en: 18 Abril 2016, 01:09 am »

Hola a todos, termine de escribir supuestamente un programa que me lanza numeros capicua en intervalos definidos por el usuario; lo que pasa es que solo me lanza un valor que es el siguiente de la letra "a" poer de ahi acaba todo :c. Que mas le falta para que siga generando más valores ????

Código:
 #include <iostream>

using namespace std;

int main ()
{
    int a,b,s,c = 0,total = 0;
    
    cout << "Por favor ingrese el primer numero: ";
    cin >> a;
    
    cout << "Por favor ingrese el segundo numero: ";
    cin >> b;
    
    while ( a < b )
    {
        a += 1;
        s = a;
            while ( s > 0)
            {
                c = c * 10 + s%10;
                s /= 10;
            }
        if ( c == a)
        {
            ++total;
            cout << c ;
        }  
    }
     cout << "\nEl numero de terminos capicua es " << total << endl;
     return 0;
}


En línea

AlbertoBSD
Programador y
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.705


🏴 Libertad!!!!!


Ver Perfil WWW
Re: Necesito un poco de ayuda :$
« Respuesta #1 en: 18 Abril 2016, 20:06 pm »

supuestamente tu codigo esta incompleto, realmente no se aque te refieres cuando dices "a intervalos regulares definidos por el usuario"

Que representa a? que representa b?

al parecer el ciclo que hace el trabajo es este:

Código
  1. while ( s > 0) {
  2. c = c * 10 + s%10;
  3. s /=10;
  4. }
  5.  

Le agrege un:

Código
  1. printf("%i\n",c);
para visualizar cuando vale c en cada iteracion me da de salida cuando agrego 10000 y 10002 como numeros a y b respectivamente:

Código
  1. 1
  2. 10
  3. 100
  4. 1000
  5. 10001
  6. 10001
  7. 100012
  8. 1000120
  9. 10001200
  10. 100012000
  11. 1000120001
  12. El numero de terminos capicua es 1



En línea

HardForo

Desconectado Desconectado

Mensajes: 219


HardForo.com


Ver Perfil WWW
Re: Necesito un poco de ayuda :$
« Respuesta #2 en: 18 Abril 2016, 20:44 pm »

Yo lo haria asi:

Código
  1. #include <iostream>
  2. #include <stdio.h>
  3. #include <stdlib.h>
  4. #include <string.h>
  5.  
  6. using namespace std;
  7.  
  8. /*
  9. Capicupa (palindromo) ?
  10. */
  11.  
  12. const char* r_bool(bool b);
  13. bool es_capicua(int x);
  14. void print_capicua_rango(int a, int b);
  15.  
  16.  
  17. int main(void)
  18. {
  19. cout << r_bool(es_capicua(10000)) << endl; // false
  20. cout << r_bool(es_capicua(10001)) << endl; // true
  21. cout << r_bool(es_capicua(10501)) << endl; // true
  22. cout << r_bool(es_capicua(807)) << endl; // false
  23. cout << r_bool(es_capicua(808)) << endl; // true
  24.  
  25. print_capicua_rango(19,100);
  26.  
  27. }
  28.  
  29. void print_capicua_rango(int a, int b){
  30. int i,count=0;
  31. for (i=a; i<b; i++){
  32. if (es_capicua(i)){
  33. cout << i << endl;
  34. count++;
  35. }
  36. }
  37. cout << "El numero de terminos capicua es " << count;
  38. }
  39.  
  40. bool es_capicua(int x){
  41. char buffer [10];
  42. int i;
  43. bool exito = true;
  44.  
  45. itoa(x,buffer,10);
  46.  
  47. int len = strlen(buffer);
  48. for (i = 0; i<(int)len/2 && exito; i++)
  49. exito = buffer[i]==buffer[len-1-i];
  50.  
  51. return exito;
  52. }
  53.  
  54. const char* r_bool(bool b){
  55.  return (b ? "true" : "false");
  56. }
  57.  

« Última modificación: 19 Abril 2016, 13:30 pm por boctulus » En línea

HardForo:  foro de Hardware y programación

Se buscan Mods y colaboradores *
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Necesito un poco de ayuda
Multimedia
firw 1 1,746 Último mensaje 25 Octubre 2005, 06:55 am
por aNexos
Necesito 1 poco de ayuda con el pic... « 1 2 »
Electrónica
Hellhole 12 7,416 Último mensaje 3 Junio 2008, 20:37 pm
por skapunky
necesito un poco de su ayuda « 1 2 »
Programación Visual Basic
afdlkglfgfdgfhgf 11 5,048 Último mensaje 1 Agosto 2008, 21:34 pm
por SKL (orignal)
Necesito un poco de ayuda
Dudas Generales
peomn 1 2,355 Último mensaje 27 Diciembre 2015, 05:08 am
por engel lex
Necesito un poco de ayuda estaría muy agradecida
Seguridad
Lauritaxx 1 2,537 Último mensaje 3 Octubre 2016, 04:55 am
por El_Andaluz
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines