Publi

  • Generador de números primos en C

    Un ejercicio de estos típicos de lenguaje C, es la generación de números primos y la comprobación de éstos. Ni que decir tiene que esta es sólo una de las 13.485,72 maneras (o más) de solucionar este problema. Y es más estamos complicando un poco la cosa, ya que sólo generaremos 10 números, que se almacenarán en un fichero binario, y a la siguiente vez que ejecutamos el programa, se leerá ese último número y seguiremos generando primos a partir de ahí:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    #include <stdio.h>
    #include <math.h>

    // Comprobamos si un número es primo o no
    int es_primo(int numero)
    {
      int res=0;
      int divs=2;
      int mitad;
      if (numero>2)    // Si el número es mayor a 2, comprobamos si es primo.
    Leer artículo completo
  • Capicúa recursivo en C

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    #include <stdio.h>
    #include <stdlib.h>

    int alreves(int n, int digitos)
    {
      int resto, cocie;

      if (n<10)     // Si tenemos un número de dígitos menor a 2, devolvemos n
        return n;
      else
        {
          resto = n % 10;
          cocie = n / 10;
          return resto*digitos + alreves(cocie, digitos/10);
        }
    }

    int main()
    {
      int num, rev;
      int digitos = 1;
      int tmp;
      printf("Dame un numero: ");
      scanf("%d", &num);
      // Hacemos un número 10^(numero de cifras-1) con esto alreves determinará el
      // número de cifras que tiene el número dado.
    Leer artículo completo