Guest User

Untitled

a guest
Apr 24th, 2018
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.42 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <ctype.h>
  4. #define MAX 4
  5. #include <strings.h>
  6. //PROTOTIPO DE FUNCIONES
  7. int captura();
  8. void imprime(int n);
  9. int agrega(int i);
  10. char buscaCodigo(char cod[], int n);
  11. int buscaSalario(float sal, int n);
  12.  
  13. //DECLARACI?N DE LA ESTRUCTURA (REGISTRO)
  14. struct info
  15. {
  16. char codigo[10], nombre[35];
  17. float salBruto, salNeto, pagoHora;
  18. int horas;
  19. }x[MAX];
  20.  
  21. int main()
  22. {
  23. //LLAMADA O INVOCACION A LA FUNCION
  24. char opc,cod[20], opc1;
  25. int n, sal;
  26. do{
  27. system("cls");
  28. printf("A) Captura datos del empleado\n");
  29. printf("B) Muestra nomina de la empresa\n");
  30. printf("C) Agrega un empleado\n");
  31. printf("D) Busca empleados con un determinado salario\n");
  32. printf("E) Busca un empleado por codigo\n");
  33. printf("F) Salir del programa\n");
  34. printf("Elige una opcion: ");
  35. fflush(stdin);
  36. opc=toupper(getchar());
  37. switch(opc)
  38. {
  39. case 'A':n=captura(); break;
  40. case 'B':imprime(n); break;
  41. case 'C':n=agrega(n); break;
  42. case 'D':printf("cual es su salario? ");
  43. scanf("%f",&sal);
  44. n=buscaSalario(sal,n);
  45. break;
  46. case 'E':printf("introduzca el codigo del empleado:\n");
  47. gets(cod);
  48. opc1=buscaCodigo(cod,n);
  49.  
  50. break;
  51.  
  52. case 'F':printf("\nGracias por usar el programa...\n");break;
  53. }
  54.  
  55. }while(opc!='F');
  56.  
  57. return 0;
  58. }
  59.  
  60. int captura()
  61. {
  62. int i,n;
  63. printf("Cuantos empleados son: ");
  64. scanf("%d",&n);
  65. for(i=0;i<n;i++)
  66. { printf("Empleado %d\n",i+1);
  67. printf("%s\n",x[i].codigo);
  68. printf("%s\n",x[i].nombre);
  69. printf("$%.2f\n",x[i].salBruto);
  70. printf("$%.2f\n",x[i].salNeto);
  71. printf("Nombre: ");
  72. fflush(stdin);
  73. gets(x[i].nombre);
  74. printf("Codigo de empleado: ");
  75. gets(x[i].codigo);
  76. printf("Horas trabajadas: ");
  77. scanf("%d",&x[i].horas);
  78. printf("%s ?cuanto te pagan por hora? ",x[i].nombre);
  79. scanf("%f",&x[i].pagoHora);
  80. x[i].salBruto=x[i].horas*x[i].pagoHora;
  81. x[i].salNeto=x[i].salBruto-x[i].salBruto*0.35;
  82. }
  83. return n;
  84. }
  85.  
  86. void imprime(int n)
  87. {
  88. int i;
  89. for(i=0;i<n;i++)
  90. {
  91. printf("Empleado %d\n",i+1);
  92. printf("%s\n",x[i].codigo);
  93. printf("%s\n",x[i].nombre);
  94. printf("$%.2f\n",x[i].salBruto);
  95. printf("$%.2f\n",x[i].salNeto);
  96. system("pause");
  97. }
  98. }
  99.  
  100. int agrega(int i)
  101. {
  102. if(i<MAX)
  103. {
  104. printf("Nombre: ");
  105. fflush(stdin);
  106. gets(x[i].nombre);
  107. printf("Codigo de empleado: ");
  108. gets(x[i].codigo);
  109. printf("Horas trabajadas: ");
  110. scanf("%d",&x[i].horas);
  111. printf("%s ?cuanto te pagan por hora? ",x[i].nombre);
  112. scanf("%f",&x[i].pagoHora);
  113. x[i].salBruto=x[i].horas*x[i].pagoHora;
  114. x[i].salNeto=x[i].salBruto-x[i].salBruto*0.35;
  115. i++;
  116. }
  117. else
  118. printf("Nomina esta completa\nNo se pueden agregar mas empleados");
  119. return i;
  120. }
  121.  
  122. int buscaSalario(float sal, int n)
  123. {
  124. int i,j,g=0;
  125. float k;
  126. k=sal;
  127. printf("Cuantos empleados son: ");
  128. scanf("%d",&n);
  129. for(i=0;i<j;i++)
  130. {
  131. if(k==x[i].salNeto)
  132. {
  133. printf("Empleado %d\n",i+1);
  134. printf("%s\n",x[i].codigo);
  135. printf("%s\n",x[i].nombre);
  136. printf("$%.2f\n",x[i].salBruto);
  137. printf("$%.2f\n",x[i].salNeto);
  138. g++;
  139. /*getch();*/
  140. }
  141. }
  142. if(g==0)
  143. printf("no encontrado");
  144. /*getch();*/
  145. return n;
  146. }
  147.  
  148. char buscaCodigo(char cod[],int n)
  149. {
  150. int i,y=-1;
  151. char opc1;
  152. /*printf("cual es el codigo que deseas buscar:\n");
  153. gets(cod);
  154. */
  155. for(i=0;i<=MAX;i++)
  156. {
  157. if(strcmp(cod,x[i].codigo)==0)
  158. {
  159. printf("%s", x[i].nombre);
  160. printf("%s", x[i].codigo);
  161. printf("%i", x[i].horas);
  162. printf("%i", x[i].salBruto);
  163. printf("%i", x[i].salNeto);
  164. i=y;
  165.  
  166. }
  167. if(y<0)
  168. {
  169. printf("no se encontro al empleado\n");
  170. }
  171. printf("deseas buscar otro empleado?\n");
  172. printf("si=1 .......... no=2");
  173. }
  174. return opc1;
  175. }
Add Comment
Please, Sign In to add comment