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

 

 


Tema destacado: Recopilación Tutoriales y Manuales Hacking, Seguridad, Privacidad, Hardware, etc


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Ayuda con un switch
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda con un switch  (Leído 2,989 veces)
ZeroMiku

Desconectado Desconectado

Mensajes: 3


Ver Perfil
Ayuda con un switch
« en: 10 Febrero 2016, 15:26 pm »

Buen dia, soy nuevo y necesito ayuda tengo este programa y no se como ponerlo en switch, ya lo intente y me salio error no se que estoy haciendo mal, voy a poner el programa sin el switch, lo que busco es dividir los procesos captura y moneda en 2 case pero no se como, si alguie puede hacerlo o darme alguna idea le estare agradecido.
el ejercicio:
Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <conio.h>
  4. int main(void);
  5. void moneda(void);
  6. void captura(void);
  7. void monedas(int);
  8.  
  9. int main(){
  10. captura();
  11. moneda();
  12.  
  13. }
  14.  
  15. void captura(){
  16. float monto,pago;
  17. float cambio;
  18. printf("Programa que calcula el cambio con monedas");
  19. printf("\nInserte el total a pagar >");
  20. scanf("%f",&monto);
  21. printf("Inserte el dinero recibido >");
  22. scanf("%f",&pago);
  23. cambio=(float)(pago*100)-(float)(monto*100);
  24. printf("Su cambio es %f",cambio);
  25. monedas(cambio);
  26. }
  27. void monedas(int x){
  28. int c50=0,c25=0,c10=0,c5=0,c1=0;
  29. while(x>=50){
  30. x-=50;
  31. c50++;
  32. }
  33. printf("\n\nRegresar %d monedas de 50 centavos",c50);
  34. while(x>=25){
  35. x-=25;
  36. c25++;
  37. }
  38. printf("\nRegresar %d monedas de 25 centavos",c25);
  39. while(x>=10){
  40. x-=10;
  41. c10++;
  42. }
  43. printf("\nRegresar %d monedas de 10 centavos",c10);
  44. while(x>=5){
  45. x-=5;
  46. c5++;
  47. }
  48. printf("\nRegresar %d monedas de 5 centavos",c5);
  49. while(x>=1){
  50. c1++;
  51. x-=1;
  52. }
  53. printf("\nRegresar %d monedas de 1 centavos",c1);
  54.  
  55. }
  56.  
  57.  
  58.  
  59.  
  60. void moneda(){
  61. int salir,saliryesno;
  62. salir=0;
  63. while(salir==0){
  64.  
  65. printf("\n\tCANTIDAD DE DINERO Y TRANSFORMACION A OTRA MONEDA\n");
  66. int cambiarmoneda;
  67. float total_bill1,total_bill5,total_bill10,total_bill20,total_bill50,total_bill100,total_cent1,total_cent5,total_cent10,total_cent25,total_cent50,total_bill,total_cent,total_dinero,yen,peso_mexicano,euro;
  68. printf("\nCantidad de billetes a ingresar: ");
  69. scanf("%f",&total_bill1);
  70. while(total_bill1<0){
  71. printf("\nCantidad de billetes ingresdos: ");
  72. scanf("%f",&total_bill1);
  73. }
  74.  
  75. total_bill=(total_bill1*(1));
  76. printf("Cantidad de monedas de un centavo: ");
  77. scanf("%f",&total_cent1);
  78. while(total_cent1<0){
  79. printf("Cantidad de monedas de un centavo: ");
  80. scanf("%f",&total_cent1);
  81. }
  82. printf("Cantidad de monedas de cinco centavos: ");
  83. scanf("%f",&total_cent5);
  84. while(total_cent5<0){
  85. printf("Cantidad de monedas de cinco centavos: ");
  86. scanf("%f",&total_cent5);
  87. }
  88. printf("Cantidad de monedas de diez centavos: ");
  89. scanf("%f",&total_cent10);
  90. while(total_cent10<0){
  91. printf("Cantidad de monedas de diez centavos: ");
  92. scanf("%f",&total_cent10);
  93. }
  94. printf("Cantidad de monedas de veinticinco: ");
  95. scanf("%f",&total_cent25);
  96. while(total_cent25<0){
  97. printf("Cantidad de monedas de veinticinco centavos: ");
  98. scanf("%f",&total_cent25);
  99. }
  100. total_cent=(total_cent1*(0.01)+total_cent5*(0.05)+total_cent10*(0.10)+total_cent25*(0.25));
  101. printf("\nLA CANTIDAD DE DINERO QUE HAY EN BILLETES ES: $%.2f\n",total_bill);
  102. printf("LA CANTIDAD DE DINERO QUE HAY EN MONEDAS ES: $%.2f\n",total_cent);
  103. total_dinero=(total_bill+total_cent);
  104. printf("LA CANTIDAD TOTAL DE DINERO QUE HAY ES: $%.2f\n\n",total_dinero);
  105. printf("\t\tMONEDA\t\tCODIGO\n");
  106. printf("\t\tYen Japones\t\t 1\n");
  107. printf("\t\tPeso Mexicano\t\t 2\n");
  108. printf("\t\tEuro\t\t\t 3\n\n");
  109. printf("Introduzca el codigo de la moneda a la que desea convertir los $%.2f: ",total_dinero);
  110. scanf("%d",&cambiarmoneda);
  111. while(cambiarmoneda<0 || cambiarmoneda>3){
  112. printf("Introduzca el codigo de la moneda a la que desea convertir los $%.2f: ",total_dinero);
  113. scanf("%d",&cambiarmoneda);
  114. }
  115. yen=total_dinero* 114.97;
  116. peso_mexicano=total_dinero*18.41;
  117. euro=total_dinero*0.89;
  118. switch(cambiarmoneda){
  119. case 1:
  120. printf("\n$%.2f EQUIVALE A %.2f YENES\n\n",total_dinero,yen);
  121. break;
  122. case 2:
  123. printf("\n$%.2f EQUIVALE A %.2f PESOS MEXICANOS\n\n",total_dinero,peso_mexicano);
  124. break;
  125. case 3:
  126. printf("\n$%.2f EQUIVALE A %.2f EUROS\n\n",total_dinero,euro);
  127. }
  128. printf("SI DESEA SALIR PRESIONE 1 O DE LO CONTRARIO PRESIONE OTRO NUMERO: ");
  129. scanf("%d",&saliryesno);
  130. switch(saliryesno){
  131. case 1:
  132. salir=1;
  133. }
  134. }
  135. }


« Última modificación: 14 Febrero 2016, 16:59 pm por Eternal Idol » En línea

abaadoon

Desconectado Desconectado

Mensajes: 19



Ver Perfil
Re: Ayuda con un switch
« Respuesta #1 en: 10 Febrero 2016, 20:50 pm »

ejemplo
Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #define uno 10
  4. #define personas 99
  5. #define nombres 50
  6. int i, opc, cont;
  7. float  suma;
  8. struct empleado{
  9.  int dt;
  10.  float pd, cs;
  11.  char x[personas][nombres]; /*99 para almacenar el numero de personas y 50 para los nombres*/
  12. };
  13. struct empleado datos[uno];
  14. void menu();
  15. void dato();
  16. void resultado();
  17. void pagototal();
  18. void error();
  19. void menu(){
  20. system("reset");
  21. printf("----Menu------\n");
  22. printf("1- ingresar datos\n");
  23. printf("2- resultado\n");
  24. printf("3- resultado de todos los empleados \n");
  25. printf("4- salir\n");
  26. printf("ingrese la opcion: \n");
  27. scanf("%d",&opc);
  28. switch(opc){
  29. case 1: dato();
  30. break;
  31. case 2: resultado();
  32. break;
  33. case 3: pagototal();
  34. break;
  35. case 4: system("exit");
  36. break;
  37. default: error();
  38. break;
  39. }
  40. }
  41.  
  42. void dato(){
  43.  system("clear");
  44.  printf("cuantas personas hay (max 99): ");
  45.  scanf("%d",&cont);
  46.  for(i=0;i<cont;i++){
  47.    printf("nombre la persona [%d]: \n",i+1);
  48.    setbuf(stdin,NULL);
  49.    fgets(datos[i].x[i],nombres,stdin);
  50.    printf("dias trabajados de la persona %d: \n",i+1);
  51.    scanf("%d",&datos[i].dt);
  52.    printf("pago por dia de la persona %d: \n",i+1);
  53.    scanf("%f",&datos[i].pd);
  54.  }
  55.  system("read -p 'presione enter para continuar' var ");
  56.  menu();
  57. }
  58.  
  59. void resultado(){
  60. system("reset");
  61. for(i=0;i<cont; i++){
  62. datos[i].cs=datos[i].dt*datos[i].pd;
  63.     printf("persona %d nombre: %s y salario %f \n", i+1, datos[i].x[i], datos[i].cs);
  64.   }
  65.   system("read -p 'presione enter para continuar' var ");
  66.   menu();
  67. }
  68. void pagototal(){
  69. system("reset");
  70.  
  71. for(i=0;i<cont; i++){
  72. datos[i].cs=datos[i].dt*datos[i].pd;
  73. suma=suma+datos[i].cs;
  74. }
  75. printf("el salario total es: %f\n",suma);
  76.   system("read -p 'presione enter para continuar' var ");
  77.   menu();
  78. }
  79. void error(){
  80. system("reset");
  81. printf("error opcion no valida\n");
  82. system("read -p 'presione enter para continuar' var ");
  83. menu();
  84. }
  85.  
  86. int main(){
  87. menu();
  88. }
  89.  


« Última modificación: 14 Febrero 2016, 16:59 pm por Eternal Idol » En línea

BlackM4ster


Desconectado Desconectado

Mensajes: 499


Error, el teclado no funciona. Pulse F1 para continuar


Ver Perfil WWW
Re: Ayuda con un switch
« Respuesta #2 en: 10 Febrero 2016, 21:20 pm »

geshi please
« Última modificación: 14 Febrero 2016, 21:42 pm por BlackM4ster » En línea

- Pásate por mi web -
https://codeisc.com
ZeroMiku

Desconectado Desconectado

Mensajes: 3


Ver Perfil
Re: Ayuda con un switch
« Respuesta #3 en: 11 Febrero 2016, 22:44 pm »

abaadoon, muchisimas gracias me sirvo completamente, estaba preocupado porque era mi trabajo de examen y solo me faltaba eso, otra vez: muchas gracias. :D ;-)
En línea

abaadoon

Desconectado Desconectado

Mensajes: 19



Ver Perfil
Re: Ayuda con un switch
« Respuesta #4 en: 12 Febrero 2016, 04:28 am »

de nada un gusto en ayudar
En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.788



Ver Perfil
Re: Ayuda con un switch
« Respuesta #5 en: 14 Febrero 2016, 16:47 pm »

¿Ustedes no saben que en todos los foros de programación hay que respetar sus reglas de formato de código?.

Usen las etiquetas GeShi.
« Última modificación: 14 Febrero 2016, 20:36 pm por Eleкtro » En línea

Eternal Idol
Kernel coder
Moderador
***
Desconectado Desconectado

Mensajes: 5.935


Israel nunca torturó niños, ni lo volverá a hacer.


Ver Perfil WWW
Re: Ayuda con un switch
« Respuesta #6 en: 14 Febrero 2016, 17:01 pm »

Gente traten de usar el bendito GeSHi (seleccionan el codigo, clickean en el combobox que dice GeSHi y seleccionan el lenguaje en cuestion) de ahora en adelante por favor, hacerlo es gratis, no les vamos a cobrar.
En línea

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón
abaadoon

Desconectado Desconectado

Mensajes: 19



Ver Perfil
Re: Ayuda con un switch
« Respuesta #7 en: 14 Febrero 2016, 18:57 pm »

si si disculpen  :(
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
ayuda en un menu en switch « 1 2 3 »
Programación C/C++
poisonkhriz 27 22,732 Último mensaje 20 Marzo 2011, 19:40 pm
por Akai
Ayuda con switch(urgente)
Programación C/C++
eltyh 3 2,742 Último mensaje 5 Junio 2011, 00:17 am
por eltyh
ayuda con red+switch+router
Redes
SystemLinux 0 2,669 Último mensaje 7 Noviembre 2011, 01:53 am
por SystemLinux
Ayuda con el switch
Programación C/C++
MGMR 2 1,515 Último mensaje 31 Marzo 2015, 03:23 am
por MGMR
AYUDA simulacion de un switch sin un break
Programación C/C++
mc275 4 2,665 Último mensaje 22 Septiembre 2016, 16:40 pm
por dato000
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines