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

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


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

Desconectado Desconectado

Mensajes: 11


Ver Perfil
problema switch case
« en: 30 Mayo 2014, 18:36 pm »

Hola gente tengo una duda, tengo que hacer un programa que me pida ingresar 2 numeros, luego imprimir la suma, resta, mult y division pero el problema es que tengo que hacerlo con un menú, para eso utilize la estructura switch, se como hacerlo en general pero algo me falla creo que es falta de logica de mi parte, me agrada la programacion pero me cuesta entenderla

ingreso la opcion 1 del menu para ingresar los 2 numeros, pero una vez ingresados lo que quiero es que me devuelva al menu con los numeros ya ingresados para que me realize las operaciones, pero al ingresar los 2 numeros elprograma se cierra

Lo otro que quiero hacer es por ejemplo: si ingreso la opcion 3 sin haber ingresado los 2 numeros, que imprima un mensaje que diga opcion invalida o primero ingrese los numeros. ojala me entiendan

este es el cod que hice:

#include <stdio.h>
#include <stdlib.h>

main()
{
      int num1,num2,div,suma,resta,mult;
      int opc;
      
      printf("              INGRESE UNA OPCION DEL MENU    \n");
 

 printf("1.- ingrese 2 numeros \n");
 printf("2.- Imprima la suma \n");
 printf("3.- Imprimia la resta \n");
 printf("4.- Imprima la multiplicacion \n");
 printf("5.- Imprima la division \n");
 
 printf("ingrese una opcion");
 scanf("%d",&opc);
 
 switch(opc)
 { // inicio switch
        case 1: printf("ingrese el primer numero \n");
                scanf("%d",&num1);
                printf("ingrese el segundo numero \n");
                scanf("%d",&num2);
                break;
                
        case 2: suma=num1+num2;
                printf("la suma es %d \n",suma);
                break;
                
        case 3: resta=num1-num2;
                printf("la resta es %d \n",resta);
                break;
                
        case 4: mult=num1*num2;
                printf("la multiplicacion es %d \n",mult);
                break;
                
        case 5: div=num1/num2;
                printf("la division es %d \n",div);                
                break;
                
                }// fin switch      
                
                system("pause");
                
                }          

ojala me digan que tengo mal para asi sacar una solucion saludos
 


« Última modificación: 30 Mayo 2014, 18:46 pm por daniloops » En línea

El Benjo


Desconectado Desconectado

Mensajes: 392



Ver Perfil WWW
Re: problema switch case
« Respuesta #1 en: 30 Mayo 2014, 23:10 pm »

Necesitas añadir una última opción al menú, que será la opción para salir. Y tu sentencia switch junto con la presentación del munú la colocarás dentro de un bucle while():

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. main()
  5. {
  6.      int num1,num2,div,suma,resta,mult;
  7.      int opc = 0;
  8.  
  9.      printf("              INGRESE UNA OPCION DEL MENU    \n");
  10.  
  11. while(opc != 6)
  12. {
  13. printf("1.- ingrese 2 numeros \n");
  14. printf("2.- Imprima la suma \n");
  15. printf("3.- Imprimia la resta \n");
  16. printf("4.- Imprima la multiplicacion \n");
  17. printf("5.- Imprima la division \n");
  18. printf("6.- Salir \n");
  19.  
  20. printf("ingrese una opcion");
  21. scanf("%d",&opc);
  22.  
  23. switch(opc)
  24. { // inicio switch
  25.        case 1: printf("ingrese el primer numero \n");
  26.                scanf("%d",&num1);
  27.                printf("ingrese el segundo numero \n");
  28.                scanf("%d",&num2);
  29.                break;
  30.  
  31.        case 2: suma=num1+num2;
  32.                printf("la suma es %d \n",suma);
  33.                break;
  34.  
  35.        case 3: resta=num1-num2;
  36.                printf("la resta es %d \n",resta);
  37.                break;
  38.  
  39.        case 4: mult=num1*num2;
  40.                printf("la multiplicacion es %d \n",mult);
  41.                break;
  42.  
  43.        case 5: div=num1/num2;
  44.                printf("la division es %d \n",div);                
  45.                break;
  46.  
  47.                }// fin switch      
  48.  
  49.                system("pause");
  50.  
  51.        }
  52. }

El bucle while es para que tu código se siga ejecutando a menos que elijan la opción 6. Todavía no pruebo el código pero creo que debería funcionar sin problemas.


En línea

www.es.neftis-ai.com

Sí hay un mejor lenguaje de programación y es ese con el que puedes desarrollar tus objetivos.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
programando c++ con switch y case
Programación C/C++
nandeider 6 18,347 Último mensaje 25 Mayo 2011, 19:34 pm
por Norochii
Case label '#' not within a switch statement
Programación C/C++
mistaiker 4 12,298 Último mensaje 27 Agosto 2011, 15:35 pm
por Queta
alguien que explique. (sobre switch case)
Programación General
josco 2 3,544 Último mensaje 14 Octubre 2011, 04:40 am
por raul338
switch y case en que parte de mi codigo
Java
jelsir 1 2,852 Último mensaje 20 Septiembre 2013, 14:04 pm
por Mitsu
Switch y case
Programación C/C++
perujo 3 2,213 Último mensaje 8 Agosto 2017, 15:26 pm
por engel lex
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines