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

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


  Mostrar Mensajes
Páginas: 1 2 [3] 4 5 6
21  Programación / Programación C/C++ / Re: Como detectar un desbordamiento de enteros en: 24 Agosto 2014, 03:30 am
Excelente gracias por responder Blaster y rir3760 voy a probar los metódos que me proponieron

Saludos kutcher
22  Programación / Programación C/C++ / Como detectar un desbordamiento de enteros en: 23 Agosto 2014, 02:53 am
Buenas, quisiera saber algún método para detectar un posible desbordamiento de enteros al realizar una multiplicación de dos variables de tipo unsigned para asi almacenar con seguridad el resultado en otra, le estuve dando vueltas al asunto pero no encuentro como hacerlo

Saludos kutcher 
23  Programación / Programación C/C++ / Re: Palindromo C++ en: 23 Agosto 2014, 00:28 am
Como el programa no tiene que distinguir entre mayusculas y minusculas, no importa como lo puse, fue para que se viera al invertir la palabra, la otra mitad no hace falta comprobarla ya que lo que hace el bucle es tomar la primera letra y cambiarla con la ultima, luego la segunda con la penultima, etc..., al llegar a la mitad ya se habran intercambiado todas las letras necesarias para saber si la palabra es palindroma, ya que si es asi la otra mitad sera igual a la ya intercambiada y la comparacion dara true, de lo contrario dara false.

Es verdad no me tome el tiempo de leerlo con detalle jaja

Saludos kutcher
24  Programación / Programación C/C++ / Re: Palindromo C++ en: 22 Agosto 2014, 23:40 pm
el segundo es en esta linea "while (palabra[q] < p)", deberia ser "while (q < p)"

El código es muy inconsistente al copiar directamente la palabra a la cadena copia no lograras comprobar si es o no palíndromo y con la condición del while dispuesta de es manera solo copiara la mitad de la palabra a la cadena destino

Saludos kutcher
25  Programación / Programación C/C++ / Re: Palindromo C++ en: 22 Agosto 2014, 23:24 pm
La función debería quedar mas o menos así:

Código
  1. bool Palindromo(char palabra[40])
  2. {
  3.    char copia[40];
  4.    int q = 0, p;
  5.  
  6.    p = LongCad(palabra) - 1;
  7.  
  8.    while (palabra[q] != '\0')
  9.    {
  10.        copia[q] = palabra[p];
  11.        q++, p--;
  12.    }
  13.    copia[q] = '\0';
  14.  
  15.    if (strcmp(palabra, copia) == 0)
  16.        return true;
  17.    else
  18.        return false;
  19. }

Y en la función LongCad debes retornar i no cero
 
26  Programación / Programación C/C++ / Retos de programación C/C++ en: 16 Agosto 2014, 02:23 am
Buenas, abro este post para ir publicando una serie de retos a medida que vayan resolviendo los mismo, con el objetivo estimular a la comunidad a participar mediante la resolución de problemas que competen al mundo de la programación que tanto nos apasiona

RETO #1:

Los primeros dos números consecutivos para tener dos factores primos distintos son:

Código
  1. 14 = 2 x 7
  2. 15 = 3 x 5

Los primeros tres números consecutivos para tener tres factores primos distintos son:

Código
  1. 644 = 2² x 7 x 23
  2. 645 = 3 x 5 x 43
  3. 646 = 2 x 17 x 19.

Encuentra los primeros cuatro números enteros consecutivos para tener cuatro factores primos distintos. ¿Cuál es el primero de estos números?

Espero su participación
27  Programación / Programación C/C++ / Re: Ayuda..Problema Con Funcion Que Retorne Pares Positivos En Dev C++... en: 15 Agosto 2014, 15:45 pm
Este intento de asignación:

Código
  1. a[i] = prome1(n, a);

Me parece redundante e inapropiado,  porque al retornar de la función prome1() ya tienes todos lo números pares almacenados en la cadena a no entiendo el propósito de la reasignación; y ademas usas como indice una variable local para retornar un valor de la cadena a lo cual es incorrecto la variable i puede tomar cualquier valor al salir de la función.

Un Saludo
28  Programación / Programación C/C++ / Re: Ayuda..Problema Con Funcion Que Retorne Pares Positivos En Dev C++... en: 15 Agosto 2014, 04:04 am
Creo que tu código debería quedar de esta manera:

Código
  1. int *fibo(int n, int *a);
  2.  
  3. int main(void)
  4. {
  5.    int a[100] = {0};
  6.    int n = 0, i = 0;
  7.  
  8.    printf("\n\t\tNUMEROS PARES POSITIVOS\n\t\t");
  9.    printf("\n\t\tIngrese el Numero de terminos de la serie:\n\t\t");
  10.    scanf("%d",&n);
  11.    printf("\n");
  12.  
  13.    fibo(n, a);
  14.  
  15.    for(i = 0; i < n; i++)
  16.        printf("\n\t[%d]", a[i]);
  17.  
  18.    return 0;
  19. }
  20.  
  21. int *fibo(int n, int *a)
  22. {
  23.    int i;
  24.    printf("\n\tpresione una tecla para continuar");
  25.    for (i = 0; i < n; i++)
  26.        a[i] = (i + 1) * 2;
  27.  
  28.    return a;
  29. }
  30.  
  31.  


Un Saludo
29  Programación / Programación C/C++ / Re: Matriz con puntos de silla (lenguaje C) en: 12 Agosto 2014, 22:23 pm
Para ser un punto de silla debe cumplir una de estas dos condiciones:

1) Dentro de la fila son mínimos y dentro de la columna son máximos
2) Dentro de la fila son máximos y dentro de la columna son mínimos

En tu función solo verificas el primer punto si al generarse una matriz con estos elementos:

Código
  1. 2, 5, 12,
  2. 3, 2, 25,
  3. 8, 1, 20

Donde en la fila 0 y columna 2 existe un punto de silla, el cual el programa no procesa

30  Programación / Programación C/C++ / Re: [Aporte] Detector de números primos en C++ en: 12 Agosto 2014, 02:09 am
Hago un aporte con otro método bastante rápido :

Código
  1. #include <iostream>
  2. #include <cmath>
  3. #include <vector>
  4.  
  5. #define MAXIMO 100000000
  6.  
  7. using namespace std;
  8.  
  9. bool es_primo[MAXIMO] = {0};
  10. vector<int> primos;
  11.  
  12. void primo(int limite);
  13. void cargarPrimos(int limite);
  14.  
  15. int main(void)
  16. {
  17.    primo(MAXIMO);
  18.    //cargarPrimos(MAXIMO);
  19.  
  20.    return 0;
  21. }
  22.  
  23. void cargarPrimos(int limite)
  24. {
  25.    primos.push_back(2);
  26.    primos.push_back(3);
  27.  
  28.    for (int i = 5; i < limite; i++)
  29.    {
  30.        if (es_primo[i])
  31.        {
  32.            primos.push_back(i);
  33.        }
  34.    }
  35. }
  36. void primo(int limite)
  37. {
  38.    int raiz = ceil(sqrt(limite));
  39.  
  40.    for (int x = 1; x <= raiz; x++)
  41.    {
  42.       for (int y = 1; y <= raiz; y++)
  43.       {
  44.         int n = (4 * x * x) + (y * y);
  45.         if (n <= limite && (n % 12 == 1 || n % 12 == 5))
  46.            es_primo[n] = 1;
  47.         n = (3 * x * x) + (y * y);
  48.         if (n <= limite && n % 12 == 7)
  49.            es_primo[n] = 1;
  50.         n = (3 * x * x) - (y * y);
  51.         if (x > y && n <= limite && n % 12 == 11)
  52.            es_primo[n] = 1;
  53.        }
  54.    }
  55. }
  56.  



  
Páginas: 1 2 [3] 4 5 6
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines