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

 

 


Tema destacado: Introducción a la Factorización De Semiprimos (RSA)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Aportación. Programas en C básicos.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Aportación. Programas en C básicos.  (Leído 9,800 veces)
GROV

Desconectado Desconectado

Mensajes: 23



Ver Perfil WWW
Aportación. Programas en C básicos.
« en: 30 Junio 2012, 00:46 am »

Que tal, buen dia a todos, a continuación les traigo algunos programas que he hecho, son muy básicos la verdad, pero creo que para los que se inician en la programación les seran de mucha ayuda.

Almenos yo estuve buscando varios de estos programas cuando los estaba haciendo para darme una idea, y nunca los encontré, por eso se los pongo aquí.

Numero de Euler.

Código
  1. \\Calcula el numero de Euler
  2.  
  3. #include <stdio.h>
  4.  
  5. int main()
  6. {
  7.   int fact, n, i;
  8.   float e;
  9.  
  10.   e = 1;
  11.   fact = 1;
  12.  
  13.   printf("Introduzca la exactitud deseada de e: ");     \\Por ejemplo, si se introduce 5 calcula hasta 1/5!
  14.   scanf("%d", &n);
  15.  
  16.   i = n;
  17.  
  18.   while(n > 0){
  19.      fact *= n;
  20.      n--;
  21.   }
  22.  
  23.   while (i > 0){
  24.      e += 1/(float)fact;
  25.      fact /= i;
  26.      i--;
  27.   }
  28.  
  29.   printf("El valor aproximado de e es %f\n", e);
  30.  
  31.   return 0;
  32. }

Numero de Euler a la x.

Código
  1. \\ Calcula el valor de e elevado a la x.
  2.  
  3. #include <stdio.h>
  4. #include <math.h>
  5.  
  6. int main()
  7. {
  8.   int fact, n, i,a, x;
  9.   float e;
  10.  
  11.   e = 1;
  12.   fact = 1;
  13.  
  14.   printf("Introduzca la exactitud deseada de e: ");
  15.   scanf("%d", &n);
  16.   printf("Introduzca la potencia de e: ");
  17.   scanf("%d", &a);
  18.  
  19.   i = n;
  20.  
  21.   while(n > 0){
  22.      fact *= n;
  23.      n--;
  24.   }
  25.  
  26.   x = pow(a,i);
  27.  
  28.   while (i > 0){
  29.      e += x/(float)fact;
  30.      fact /= i;
  31.      x = x / a;
  32.      i--;
  33.   }
  34.  
  35.   printf("El valor de e elevado a la %d es %f\n", a, e);
  36.  
  37.   return 0;
  38. }

cifra un numero de 4 digitos.

Código
  1. \\ cifra un numero de 4 digitos.
  2.  
  3. #include <stdio.h>
  4.  
  5. int main()
  6. {
  7. int numero, a, b, c, d;
  8.  
  9. printf("Introduce un numero de 4 digitos para ser cifrado: ");
  10. scanf("%d", &numero);
  11.  
  12. d = numero % 10;
  13. numero /= 10;
  14. c = numero % 10;
  15. numero /= 10;
  16. b = numero % 10;
  17. numero /= 10;
  18. a = numero % 10;
  19.  
  20. a = (a + 7) % 10;
  21. b = (b + 7) % 10;
  22. c = (c + 7) % 10;
  23. d = (d + 7) % 10;
  24.  
  25. printf("Encriptacion Exitosa!!\n");
  26. printf("Numero generado: %d%d%d%d\n\n", c, d, a, b);
  27.  
  28. return 0;
  29. }

descifra numero de 4 digitos. cifrados con el programa de arriba.

Código
  1. \\ descifra un numero de 4 digitos.
  2.  
  3. #include <stdio.h>
  4.  
  5. int main()
  6. {
  7. int numero, a, b, c, d;
  8.  
  9. printf("Introduzca el numero a descifrar: ");
  10. scanf("%d", &numero);
  11.  
  12. d = numero % 10;
  13. numero /= 10;
  14. c = numero % 10;
  15. numero /= 10;
  16. b = numero % 10;
  17. numero /= 10;
  18. a = numero % 10;
  19.  
  20. if (a > 7)
  21. a -= 7;
  22. else
  23. a += 3;
  24. if (b > 7)
  25. b -= 7;
  26. else
  27. b += 3;
  28. if (c > 7)
  29. c -= 7;
  30. else
  31. c += 3;
  32. if (d > 7)
  33. d -= 7;
  34. else
  35. d += 3;
  36.  
  37. printf("Desencriptacion Exitosa!\n");
  38. printf("Numero descifrado: %d%d%d%d\n", c, d, a, b);
  39.  
  40. return 0;
  41. }

Crea un Cuadrado de n x n hueco.

Código
  1. #include <stdio.h>
  2.  
  3. int main()
  4. {
  5. int fila, columna, lado;
  6.  
  7. fila = 1;
  8.  
  9. printf("Introduce el tamaño del cuadrado: ");
  10. scanf("%d", &lado);
  11.  
  12. while (fila <= lado){
  13. columna = 1;
  14.  
  15. while (columna <= lado){
  16. if (fila == 1 || fila == lado)
  17. printf("*");
  18. else if (columna == 1 || columna == lado)
  19. printf("*");
  20. else
  21. printf(" ");
  22.  
  23. columna++;
  24. }
  25.  
  26. printf("\n");
  27. fila++;
  28. }
  29.  
  30. return 0;
  31. }

Crea un cuadrado de *.

Código
  1. #include <stdio.h>
  2.  
  3. int main()
  4. {
  5.   int lado, fila, columna;
  6.   fila = 1;
  7.  
  8.   printf("Introduzca el tamaño del lado: ");
  9.   scanf("%d", &lado);
  10.  
  11.   while (fila <= lado){
  12.      columna = 1;
  13.  
  14.      while (columna <= lado){
  15.         printf("*");
  16.         columna++;
  17.      }
  18.  
  19.   fila++;
  20.   printf("\n");
  21.   }
  22.  
  23.   return 0;
  24. }
  25.  

Determina si un numero de 5 digitos es un palindromo.

Código
  1. #include <stdio.h>
  2.  
  3. int main()
  4. {
  5. int numero, a, b, c, d;
  6.  
  7. printf("Introduce un numero de 5 digitos: ");
  8. scanf("%d", &numero);
  9.  
  10. a = numero % 10;
  11. numero /= 10;
  12. b = numero % 10;
  13. numero /= 100;
  14. c = numero % 10;
  15. numero /= 10;
  16. d = numero % 10;
  17.  
  18. if (a == d && b == c)
  19. printf("El numero es palindromo!\n");
  20. else
  21. printf("EL numero no es palindromo!\n");
  22.  
  23. return 0;
  24. }

Factorial con un ciclo while.
Código
  1. #include <stdio.h>
  2.  
  3. int main()
  4. {
  5. int fact, num;
  6.  
  7. printf("Ingrese un numero: ");
  8. scanf("%d", &num);
  9. fact = 1;
  10.  
  11. while (num >= 1){
  12. fact *= num;
  13. num--;
  14. }
  15.  
  16.  
  17. printf("El factorial es %d\n", fact);
  18.  
  19. return 0;
  20. }

Factorial con un ciclo for.

Código
  1. #include <stdio.h>
  2.  
  3. int main()
  4. {
  5. int fact, num, i;
  6.  
  7. printf("Ingrese un numero: ");
  8. scanf("%d", &num);
  9. fact = 1;
  10.  
  11. for (i = 1; i <= num; i++){
  12. fact *= i;
  13. }
  14.  
  15.  
  16. printf("El factorial es %d\n", fact);
  17.  
  18. return 0;
  19. }

Muestra el mayor de 10 numeros introducidos.

Código
  1. #include <stdio.h>
  2.  
  3. int main()
  4. {
  5. int count, number, largest;
  6.  
  7. count = 1;
  8. largest = 0;
  9.  
  10. while(count <= 10){
  11. printf("Introduzca el numero de unidades vendidas: ");
  12. scanf("%d", &number);
  13.  
  14. if (number > largest)
  15. largest = number;
  16.  
  17. count += 1;
  18. }
  19.  
  20. printf("\nEl mayor numero de unidades vendidas es de %d\n", largest);
  21.  
  22. return 0;
  23. }
  24.  

Al introducir un numero de 5 cifras, separa cifra por cifra con 3 espacios.

Código
  1. #include <stdio.h>
  2.  
  3. int main()
  4. {
  5.   int a, b, c, d, e, num;
  6.  
  7.   printf("Introduzca un numero de 5 digitos: ");
  8.   scanf("%d", &num);
  9.  
  10.   e = num % 10;
  11.   num /= 10;
  12.   d = num % 10;
  13.   num /= 10;
  14.   c = num % 10;
  15.   num /= 10;
  16.   b = num % 10;
  17.   num /= 10;
  18.   a = num;
  19.  
  20.   printf("%d   %d   %d   %d   %d\n", a, b, c, d, e);
  21.  
  22.   return 0;
  23. }

Conversor de Unidades. (Volumen, Area, Longitud, Peso).

Código
  1. #include <stdio.h>
  2.  
  3. int menu(void);
  4. void longitud(void);
  5. void volumen(void);
  6. void peso(void);
  7.  
  8. int main()
  9. {
  10. int opcion;
  11.  
  12. opcion = menu();
  13.  
  14. switch(opcion)
  15. {
  16. case 1:
  17. longitud();
  18. break;
  19. case 2:
  20. volumen();
  21. break;
  22. case 3:
  23. peso();
  24. break;
  25. default:
  26. puts("La opcion no es valida...");
  27. puts("\nFIN DEL PROGRAMA");
  28. break;
  29. }
  30.  
  31. return 0;
  32. }
  33.  
  34. int menu(void)
  35. {
  36. int opcion;
  37.  
  38. puts("Bienvenido al Conversor de Unidades\n");
  39. puts("Que tipo de conversion desea realizar:");
  40. puts("1.- Medidas de longitud y superficie");
  41. puts("2.- Medidas de volumen");
  42. puts("3.- Medidas de peso");
  43. puts("\nSeleccione una opcion: ");
  44. scanf("%d", &opcion);
  45.  
  46. return opcion;
  47. }
  48.  
  49. void longitud(void)
  50. {
  51. int opcion;
  52. float medida, resultado;
  53.  
  54. puts("Medidas de Longitud y Superficie\n");
  55. puts("Que tipo de conversion desea realizar:");
  56. puts("1.- Pulgadas a Milimetros");
  57. puts("2.- Yardas a Metros");
  58. puts("3.- Millas a Kilometros");
  59. puts("4.- Pulgadas cuadradas a Centimetros cuadrados");
  60. puts("5.- Pies cuadrados a Metros cuadrados");
  61. puts("6.- Acres a Hectareas");
  62. puts("7.- Millas cuadradas a Kilometros cuadrados");
  63. puts("\nSeleccione una opcion: ");
  64. scanf("%d", &opcion);
  65.  
  66. switch(opcion)
  67. {
  68. case 1:
  69. puts("Ingrese un numero de pulgadas: ");
  70. scanf("%f", &medida);
  71. resultado = medida * 25.40;
  72. printf("%.2f pulgadas = %.2f milimetros", medida, resultado);
  73. break;
  74. case 2:
  75. puts("Ingrese un numero de yardas: ");
  76. scanf("%f", &medida);
  77. resultado = medida * 0.9144;
  78. printf("%.2f yardas = %.2f metros", medida, resultado);
  79. break;
  80. case 3:
  81. puts("Ingrese un numero de millas: ");
  82. scanf("%f", &medida);
  83. resultado = medida * 1.6093;
  84. printf("%.2f millas = %.2f kilometros", medida, resultado);
  85. break;
  86. case 4:
  87. puts("Ingrese un numero de pulgadas cuadradas: ");
  88. scanf("%f", &medida);
  89. resultado = medida * 6.452;
  90. printf("%.2f pulgadas cuadradas = %.2f centimetros cuadrados", medida, resultado);
  91. break;
  92. case 5:
  93. puts("Ingrese un numero de pies cuadrados: ");
  94. scanf("%f", &medida);
  95. resultado = medida * 0.09290;
  96. printf("%.2f pies cuadrados = %.2f metros cuadrados", medida, resultado);
  97. break;
  98. case 6:
  99. puts("Ingrese un numero de yardas cuadradas: ");
  100. scanf("%f", &medida);
  101. resultado = medida * 0.8361;
  102. printf("%.2f yardas cuadradas = %.2f kilometros cuadrados", medida, resultado);
  103. break;
  104. case 7:
  105. puts("Ingrese un numero de acres: ");
  106. scanf("%f", &medida);
  107. resultado = medida * 0.4047;
  108. printf("%.2f acress = %.2f hectareas", medida, resultado);
  109. break;
  110. case 8:
  111. puts("Ingrese un numero de millas cuadradas: ");
  112. scanf("%f", &medida);
  113. resultado = medida * 2.59;
  114. printf("%.2f millas cuadradas = %.2f kilometros cuadrados", medida, resultado);
  115. break;
  116. default:
  117. puts("La opcion no es valida...");
  118. puts("\nFIN DEL PROGRAMA");
  119. break;
  120. }
  121. }
  122.  
  123. void volumen(void)
  124. {
  125. int opcion;
  126. float medida, resultado;
  127.  
  128. puts("Medidas de Volumen\n");
  129. puts("Que tipo de conversion desea realizar:");
  130. puts("1.- Pies cubicos a metros cubicos");
  131. puts("2.- Yardas cubicas a Metros cubicos");
  132. puts("3.- Pintas a Litros");
  133. puts("4.- Galones a Litros");
  134. puts("\nSeleccione una opcion: ");
  135. scanf("%d", &opcion);
  136.  
  137. switch(opcion)
  138. {
  139. case 1:
  140. puts("Ingrese un numero de pies cubicos: ");
  141. scanf("%f", &medida);
  142. resultado = medida * 0.02832;
  143. printf("%.2f pies cubicos = %.2f metros cubicos", medida, resultado);
  144. break;
  145. case 2:
  146. puts("Ingrese un numero de yardas cubicas: ");
  147. scanf("%f", &medida);
  148. resultado = medida * 0.7646;
  149. printf("%.2f yardas cubicas = %.2f metros cubicos", medida, resultado);
  150. break;
  151. case 3:
  152. puts("Ingrese un numero de pintas: ");
  153. scanf("%f", &medida);
  154. resultado = medida * 0.56826;
  155. printf("%.2f pintas = %.2f litros", medida, resultado);
  156. break;
  157. case 4:
  158. puts("Ingrese un numero de galones: ");
  159. scanf("%f", &medida);
  160. resultado = medida * 4.54609;
  161. printf("%.2f galones = %.2f litros", medida, resultado);
  162. break;
  163. default:
  164. puts("La opcion no es valida...");
  165. puts("\nFIN DEL PROGRAMA");
  166. break;
  167. }
  168. }
  169.  
  170. void peso(void)
  171. {
  172. int opcion;
  173. float medida, resultado;
  174.  
  175. puts("Medidas de Volumen\n");
  176. puts("Que tipo de conversion desea realizar:");
  177. puts("1.- Onzas a Gramos");
  178. puts("2.- Libras a Kilogramos");
  179. puts("3.- Tonelada inglesa a Toneladas");
  180. puts("\nSeleccione una opcion: ");
  181. scanf("%d", &opcion);
  182.  
  183. switch(opcion)
  184. {
  185. case 1:
  186. puts("Ingrese un numero de onzas: ");
  187. scanf("%f", &medida);
  188. resultado = medida * 28.35;
  189. printf("%.2f onzas = %.2f gramos", medida, resultado);
  190. break;
  191. case 2:
  192. puts("Ingrese un numero de libras: ");
  193. scanf("%f", &medida);
  194. resultado = medida * 0.45358;
  195. printf("%.2f libras = %.2f kilogramos", medida, resultado);
  196. break;
  197. case 3:
  198. puts("Ingrese un numero de toneladas inglesas: ");
  199. scanf("%f", &medida);
  200. resultado = medida * 1.0160;
  201. printf("%.2f toneladas inglesas = %.2f toneladas", medida, resultado);
  202. break;
  203. default:
  204. puts("La opcion no es valida...");
  205. puts("\nFIN DEL PROGRAMA");
  206. break;
  207. }
  208. }


Por el tiempo solo pongo estos, espero que les sean de ayuda.

Se que muchos programas no estan escritos de la mejor manera, pero funcionan bien. Y no es por excusarme ni nada de eso pero son de los primeros programas que comenze a escribir tal cual los puse aquí.

Espero sus comentarios, dudas, consejos, sugerencias, todo se agradece.

Saludos Afectuosos!!


« Última modificación: 26 Julio 2012, 21:27 pm por GROV » En línea

"Ningún problema debe de resolverse dos veces"
spoofman

Desconectado Desconectado

Mensajes: 3


Ver Perfil
Re: Aportación. Programas en C básicos.
« Respuesta #1 en: 26 Julio 2012, 17:13 pm »

Muchas gracias, creo que me sera de gran ayuda ya que quiero empezar con el lenguaje C. ;-)


En línea

:-)
dato000


Desconectado Desconectado

Mensajes: 3.034



Ver Perfil
Re: Aportación. Programas en C básicos.
« Respuesta #2 en: 26 Julio 2012, 18:51 pm »

Probe el ultimo (por cierto, falto agregar el "#" antes de include para que funcione.

Muy bueno el conversor, muy pero muy buen codigo.

En línea


GROV

Desconectado Desconectado

Mensajes: 23



Ver Perfil WWW
Re: Aportación. Programas en C básicos.
« Respuesta #3 en: 26 Julio 2012, 21:33 pm »

Gracias por sus comentarios, espero que te sirvan @spoofman, y ya corregi lo del

Código
  1. #include <stdio.h>

jejejeje un pequeño error de dedo, y me alegra que el conversor de unidades te haya agragado @dat000

Saludos Afectuosos!
En línea

"Ningún problema debe de resolverse dos veces"
david_BS

Desconectado Desconectado

Mensajes: 99



Ver Perfil WWW
Re: Aportación. Programas en C básicos.
« Respuesta #4 en: 27 Julio 2012, 01:55 am »

muy bueno tu aporte, le debe servir a muchos
agrego algo fácil que había hecho
http://www.etalking.com.ar/showthread.php?1439-remover-decimales

Código:
#include<iostream.h>
#include<stdio.h>


double RemDecimals(double dNum, unsigned int iCant){


    int inum = (int)dNum;
    unsigned int unidades =1;
    double resnum=dNum;
    if(inum>9){
        unidades++;//porque es de dos cifras ya
        while((inum/10)>9){//si es mayor a 99
            unidades++;
            inum/=10;
        }
        for(unsigned int i=0;i< iCant;i++) dNum*=10;
        //int cifras = unidades+iCant;
        int inum2 = (int)dNum;
        double newnum = (float)inum2;
        for(unsigned int j=0;j< iCant;j++) newnum/=10;
        resnum = (float)newnum;
    }


    return resnum;
}


int main(){


    double num = 93.161599;


    printf("num before: %f\n",num);


    num = RemDecimals(num,2);


    printf("num after: %f\n",num);


    cin.get();
    return 0;


}
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Mi primera aportacion
Ingeniería Inversa
FRONY 0 1,915 Último mensaje 26 Septiembre 2005, 00:29 am
por FRONY
Mas Programas Basicos Realizados en Borland c++
Programación C/C++
(¯`·.¸º|- POLIFORMIC -|º¸.·´¯) 1 44,234 Último mensaje 9 Agosto 2012, 01:50 am
por Jimmy_alpage
ejemplos de programas basicos en c++ para compilar en con wxDev-C++
Programación C/C++
netbios_hack1111111j 5 13,257 Último mensaje 11 Noviembre 2010, 13:03 pm
por flony
programas resueltos muy basicos
Programación C/C++
dvaid 0 7,460 Último mensaje 12 Agosto 2011, 14:55 pm
por dvaid
Programas básicos Haskell
Programación General
Juan Martinez 2 2,967 Último mensaje 17 Octubre 2017, 23:41 pm
por srWhiteSkull
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines