sábado, 26 de diciembre de 2015

fibonacci con recursividad.

#include<stdio.h>

int fibo(int n)//funcion recursiva que determina cada termino de la serie
{
    if(n == 0 || n == 1)
       return n;
    else
       return fibo(n - 2) + fibo(n - 1);
}

int main()
{
    printf("\n         FIBONACCI \n\n");
   
    int i, num ;
   
    do// a partir de aqui se empiezan a mostrar los términos de uno a no
    {
        printf("Ingrese un numero entero y positivo: ");
        scanf("%d",&num);
       
    } while(num < 0);
   
    printf("\nLa serie es: \n\n\t");
   
    for(i=0; i<num; i++)
    {
       if(fibo(i) != 0)
          printf(", ");
           printf("%d",fibo(i));      
    }
   
    //system("pause");
   
    return 0;
}

serie de fibonacci


  1. #include<stdio.h>
  2. int main()
  3. {
  4. int i,n,a=1,b=1,c;
  5. printf("ingrese el numero de terminos d ela serie: ");
  6. scanf("%d",&n);
  7. printf("%d  %d  ",a,b);
  8. for(i=3;i<=n;i++) //tomaremos los terminos a partir del tercer termino
  9. {
  10. c= a+b;
  11. printf("%d  ",c);
  12. a=b;     // a partir de aqui a y b toman nuevos valores
  13. b=c;
  14. }
  15.    return 0;
  16. }

miércoles, 23 de diciembre de 2015

la conjetura de legendre, se imprime solos los primos mayores entre dos cuadrados consecutivos


  1. #include<stdio.h>
  2. int primo(int n)
  3. {
  4. int i,k=0;
  5. for(i=1;i<=n;i++)
  6. {
  7. if(n%i==0)
  8. {
  9. k++;
  10. }
  11. }
  12. if(k==2)
  13. return 0;
  14. else
  15. return 1;
  16. }
  17. int main()
  18. {
  19. int n,i,A;
  20. printf("ingresar en valor de n: ");
  21. scanf("%d",&A);
  22. for(n=1;n<=A;n++)
  23. {
  24.    for(i=n*n;i<(n+1)*(n+1);i++)
  25.    {
  26.     if(primo(i)==0)
  27.     {
  28.     printf("%d ",i);break;
  29.   } 
  30.    }
  31.    printf(" <%d;%d>\n\n",n*n,(n+1)*(n+1));
  32.    }
  33.    
  34. return 0;  
  35. }

mcm y mcd


  1. #include<stdio.h>
  2. int mcd(int a, int b)
  3. {
  4.  int i;
  5.  int MCD;
  6.    for(i=1;i<a&&i<b;i++)
  7. {
  8. if(a%i==0&&b%i==0)
  9. {
  10. MCD=i;
  11. }
  12. }
  13. return MCD;
  14. }
  15. int mcm(int a,int b)
  16. {
  17. int MCM;
  18.    MCM=a*b/mcd(a,b);
  19.    return MCM;
  20. }
  21.    

  22. int main()
  23. {
  24. int a,b;
  25.    printf("insertar dos numeros:");
  26.    scanf("%d%d",&a,&b);
  27.    printf("\nMCD[%d,%d]=%d\n\n",a,b,mcd(a,b));
  28.    printf("MCM[%d,%d]=%d\n\n",a,b,mcm(a,b));
  29.    return 0;
  30. }

invertir numero con funciones recursivas


  1. #include<stdio.h>
  2. int cuentacifras(int n)
  3.     int j=0;
  4. while(n/10>0)
  5. {
  6. j++;
  7. n=n/10;
  8. }
  9. return (j+1);
  10. }
  11. int decimal(int n)
  12. {
  13. int i,b,a=1;
  14. for(i=1;i<=n;i++)
  15. {
  16. b=10;
  17. a=a*b;
  18. }
  19. return a;
  20. }
  21. int imv(int m,int n)
  22. {   
  23.     int a;
  24.     if(n<0)
  25.      {
  26. a=0;
  27.      }
  28.     else
  29. {
  30. a= (m%10)*decimal(n-1) + imv(m/10,n-1);
  31.         
  32.     }
  33. return a;
  34. }
  35. int main ()
  36. {  
  37.      int n,m;
  38.      printf("ingresar un numero:");
  39.     scanf("%d",&m);
  40.     printf("\n\nnumero\n\n%d",m);
  41.     n=cuentacifras(m);
  42.     printf("\nnumero invertido:\n\n\n");
  43. printf("%d",imv(m,n));
  44. return 0;
  45. }

la conjetura de legendre.

//numeros primos entre los cuadrados de n y n+1, para los n primeros números  enteros  ,el valor de n lo ingresa el usuario.

  1. #include<stdio.h>

  2. int primo(int n)//esta  fincion indentifica si un numero es primo o no.
  3. {
  4. int i,k=0;
  5. for(i=1;i<=n;i++)
  6. {
  7. if(n%i==0)
  8. k++;
  9. }
  10. if(k==2)
  11. return 1;
  12. else
  13. return 0;
  14. }
  15. int primos_entre_cuadrados_consecutivos(int A)
  16. {
  17. int i;
  18. printf("\n");
  19. for(i=A*A;i<=(A+1)*(A+1);i++)
  20. {
  21. if(primo(i)==1)
  22. printf("%d  ",i  );
  23. }
  24. }
  25. int main()
  26. {
  27. int i,n;
  28. printf("escribir numero:");
  29. scanf("%d",&n);
  30.   for(i=1;i<=n;i++)
  31.   {
  32.    primos_entre_cuadrados_consecutivos(i);
  33.    printf("<%d,%d>",i*i,(i+1)*(i+1));
  34.    printf("\n");
  35.   }
  36. return 0;
  37. }

rectangulo vacio

  1. #include<stdio.h>
  2. void imprimir_asteriscos_superiores(int n)
  3. {
  4. int i;
  5. for(i=1;i<=2*n-1;i++)
  6. {
  7. printf(" ");
  8. }
  9. }
  10. void imprimir_asteriscos_inferiores(int n)
  11. {
  12. int i;
  13. for(i=2*n-1;i>=1;i--)
  14. {
  15. printf(" ");
  16. }
  17. }
  18. void ordenar_asteriscos_superiores(int A)
  19. {
  20. int i,j,k;
  21. for(i=1;i<=A;i++)
  22. {
  23. for(j=1;j<=A-i;j++)
  24. {
  25. printf("*");
  26. }
  27. imprimir_asteriscos_superiores(i);
  28. for(k=1;k<=A-i;k++)
  29. {
  30. printf("*");
  31. }
  32. printf("\n");
  33. }
  34. }
  35. void ordenar_asteriscos_inferiores(int A) // función que ordena los asteriscos inferiores
  36. {
  37. int i,j,k;
  38. for(i=1;i<A;i++)
  39. {
  40. for(j=A-1;j>=A-i;j--)
  41. {
  42. printf("*");
  43. }
  44. imprimir_asteriscos_inferiores(A-i);
  45. for(k=A-1;k>=A-i;k--)
  46. {
  47. printf("*");
  48. }
  49. printf("\n");
  50. }
  51. }
  52. int main()
  53. {
  54. int A;
  55. printf("ingresar n: ");
  56. scanf("%d",&A);
  57. printf("\n\n");
  58. // llamando a las funciones
  59. ordenar_asteriscos_superiores(A+1);
  60. ordenar_asteriscos_inferiores(A+1);
  61. return 0;
  62. }

rombo de asteriscos

  1. #include<stdio.h>
  2. void imprimir_asteriscos_superiores(int n)
  3. {
  4. int i;
  5. for(i=1;i<=2*n-1;i++)
  6. {
  7. printf(" ");
  8. }
  9. }
  10. void imprimir_asteriscos_inferiores(int n)
  11. {
  12. int i;
  13. for(i=2*n-1;i>=1;i--)
  14. {
  15. printf(" ");
  16. }
  17. }
  18. void ordenar_asteriscos_superiores(int A)
  19. {
  20. int i,j,k;
  21. for(i=1;i<=A;i++)
  22. {
  23. for(j=1;j<=A-i;j++)
  24. {
  25. printf("*");
  26. }
  27. imprimir_asteriscos_superiores(i);
  28. for(k=1;k<=A-i;k++)
  29. {
  30. printf("*");
  31. }
  32. printf("\n");
  33. }
  34. }
  35. void ordenar_asteriscos_inferiores(int A)
  36. {
  37. int i,j,k;
  38. for(i=1;i<A;i++)
  39. {
  40. for(j=A-1;j>=A-i;j--)
  41. {
  42. printf("*");
  43. }
  44. imprimir_asteriscos_inferiores(A-i);
  45. for(k=A-1;k>=A-i;k--)
  46. {
  47. printf("*");
  48. }
  49. printf("\n");
  50. }
  51. }
  52. int main()
  53. {
  54. int A;
  55. printf("ingresar n: ");
  56. scanf("%d",&A);
  57. printf("\n\n");
  58. ordenar_asteriscos_superiores(A+1);
  59. ordenar_asteriscos_inferiores(A+1);
  60. return 0;
  61. }