jueves, 2 de octubre de 2014

Ejercicios resueltos paso a paso del funcionamiento del condicional switch

15 ejercicios resueltos paso a paso sobre el uso del condicional if.

1.- Hacer un programa en C que pida un número del 1 al 12 y diga el nombre del mes correspondiente.

#include 

int main(void){

      int i;
      
      printf("Introduzca número del 1 al 12:");
      scanf("%d",&i);

      switch(i){
      case 1:
            printf ("Enero\n");
            break;
      case 2:
            printf ("Febrero\n");
            break;
      case 3:
            printf ("Marzo\n");
            break;
      case 4:
            printf ("Abril\n");
            break;
      case 5:
            printf ("Mayo\n");
            break;
      case 6:
            printf ("Junio\n");
            break;
      case 7:
            printf ("Julio\n");
            break;
      case 8:
            printf ("Agosto\n");
            break;
      case 9:
            printf ("Septiembre\n");
                   break;
      case 10:
            printf ("Octubre\n");
            break;
      case 11:
            printf ("Noviembre\n");
            break;
      case 12:
            printf ("Diciembre\n");
            break;
      default:
            printf ("Opción no válida\n");
            break;
      }

      system("PAUSE");     
      return 0;
}
2.- Hacer un programa en C que pida un número del 1 al 7 y diga a que día de la semana corresponde.
#include 

int main(void)
{
      int i;
     
      printf("Introduzca número del 1 al 7:");
      scanf("%d",&i);

      switch(i){
            case 1:
                  printf ("Lunes\n");
                  break;
            case 2:
                  printf ("Martes\n");
                  break;
            case 3:
                  printf ("Miércoles\n");
                  break;
            case 4:
                  printf ("Jueves\n");
                  break;
            case 5:
                  printf ("Viernes\n");
                  break;
            case 6:
                  printf ("Sábado\n");
                  break;
            case 7:
                  printf ("Domingo\n");
                  break;
            default:
                  printf ("Opción no válida\n");
                  break;
      }

      system("PAUSE");     
      return 0;
}
3.- Hacer un programa en C que pida una letra y detecte si es una vocal.
#include 

int main(void){
      char c;
            
      printf("Introduzca un carácter:");
      scanf("%c",&c);
   
      switch (c){
            case 'a':
                  printf ("Es vocal\n");
                  break;
            case 'e':
                  printf ("Es vocal\n");
                  break;
            case 'i':
                  printf ("Es vocal\n");
                  break;
            case 'o':
                  printf ("Es vocal\n");
                  break;
            case 'u': 
                  printf ("Es vocal\n");
                  break;             
            default:
                  printf ("No es vocal\n");
                  break;
      }

      system("PAUSE");     
      return 0;
}
4.- Hacer un programa en C que muestre un menú donde las opciones sean “Equilátero”, “Isósceles” y “Escaleno”, pida una opción y calcule el perímetro del triángulo seleccionado.
#include 

      int main(void){

      int lado, base, opcion;
           
      printf("Introduzca lado del triángulo:");
      scanf("%d",&lado);
      printf("Introduzca base del triángulo:");
      scanf("%d",&base);
           
      printf("Seleccione opción:\n");
      printf("1 - Equilátero\n");
      printf("2 - Isósceles\n");
      printf("3 - Escaleno\n");
    
      scanf("%d",&opcion);

      switch (opcion){
      case 1:
            printf("El perímetro es:%d\n",3*lado);
            break;
      case 2:
            printf("El perímetro es:%d\n",(2*lado)+base);
            break;
      case 3:
            printf("El perímetro es:%d\n",lado + lado + lado);
            break;
      default:
            printf("Opción no válida.");
            break;
      }
    
      system("PAUSE");     
      return 0;
}
5.- Hacer un programa en C que pase de Kg a otra unidad de medida de masa, mostrar en pantalla un menú con las opciones posibles.
#include 

int main(void){
      int peso;
           
      printf("Introduzca peso en kilogramos:");
      scanf("%d",&peso);
           
      printf("Seleccione opción:\n");
      printf("1 - Hectogramos\n");
      printf("2 - Decagramos\n");
      printf("3 - Gramos\n");
      printf("4 - Decigramos\n");
      printf("5 - Centigramos\n");
      printf("6 - Miligramos\n");
    
      scanf("%d",&opcion);

      switch (opcion){
            case 1:
                  printf("El peso es:%d\n",peso/10);
                  break;
            case 2:
                  printf("El peso es:%d\n",peso/100);
                  break;
            case 3:
                  printf("El peso es:%d\n",peso/1000);
                  break;
            case 4:
                  printf("El peso es:%d\n",peso/10000);
                  break;
            case 5:
                  printf("El peso es:%d\n",peso/100000);
                  break;
            case 6:
                  printf("El peso es:%d\n",peso/1000000);
                  break;
            default:
                  printf("Opción no válida.");
                  break;
      }
    
system("PAUSE");     
return 0;
}
6.- Hacer un programa en C que implemente una calculadora básica.
#include

int main(void){
      char opcion;
      float n1,n2,r;     
      do{
            printf("\ningrese el primer numero: ");
            scanf("%f",&n1);
            printf("\ningrese el segundo numero: ");
            scanf("%f",&n2); 
       
            printf("\nMENU DE OPCIONES");
            printf("\n1.SUMA\n2.RESTA\n3.MULTIPLICACION\n4.DIVISION\n5.SALIR ");
            printf("\nESCOGA SU OPCION: ");
            scanf("%s",&opcion); 
       
            switch(opcion){ 
                  case '1': {r=n1+n2;} 
                        break;  
                  case '2': {r=n1-n2;} 
                        break;  
                  case '3': {r=n1*n2;} 
                        break;  
                  case '4': {r=n1/n2;} 
                        break;  
                  case '5': {printf("salir");} 
                        break;
                  default:
                        printf("\nerror...opcion invalidada");
            }
            printf("el resultado de su opcion es: %.2f", r);
      
      }while(opcion!=5);
     
      return 1;
}
7.- Hacer un programa en C que pida un número del 1 al 9 y lo imprima en letra.
#include 
void main()
{
      int opcion;
      
      printf("Ingrese un numero entero: ");
      scanf("%d",&opcion);
      
      switch(opcion){
            case 1:
                  printf("Ha ingresado el numero uno\n");
                  break;
            case 2:
                  printf("Ha ingresado el numero dos\n");
                  break;
            case 3:
                  printf("Ha ingresado el numero tres\n");
                  break;
            case 4:
                  printf("Ha ingresado el numero cuatro\n");
                  break;
            case 5:
                  printf("Ha ingresado el numero cinco\n");
                  break;
            case 6:
                  printf("Ha ingresado el numero seis\n");
                  break;
            case 7:
                  printf("Ha ingresado el numero siete\n");
                  break;
            case 8:
                  printf("Ha ingresado el numero ocho\n");
                  break;
            case 9:
                  printf("Ha ingresado el numero nueve\n");
                  break;
            defalut:
                  printf("Ha ingresado un numero no valido\n");
                  break;
      }
}
8. Hacer un programa en C que pida una calificación y diga si es aprobatoria o no.
#include 
main(void){
      int nota;
      
      printf("introduce tu nota\n");
      scanf("%i",¬a);
      
      switch(nota){
            case 1:
            case 2:
            case 3: /*nótese que pueden estar desordenados*/
            case 0:
            case 4:
            case 5:
                  printf("Suspenso\n");
                  break;
            case 6:
                  printf("Aprobado\n");
                  break;
            case 9:
            case 10:
                  printf("Sobresaliente\n");
                  break;
            case 7:
            case 8:
                  printf("Notable\n");
      }
      system("pause");
}
9.- Hacer un programa en C que permita sumar, restar, dividir y multiplicar 2 números.
#include 
#include 

void main()
{
      int p=0;
      int op;
      int num1,num2;

      while(op!=4){
            printf("1.- Sumar\n");
            printf("2.- Restar\n");
            printf("3.- Multiplicar\n");
            printf("4.- Salir\n");
            printf("Indica la opcion: ");
            scanf("%d", &op);

      if(op!=4){printf("Introduce el primer numero: "){
            scanf("%d", &num1);
            printf("Introduce el segundo numero: ");
            scanf("%d", &num2);}

            switch(op){
                  case 1: printf("Suma: %d\n", (num1+num2));break;
                  case 2: printf("Resta: %d\n", (num1-num2));break;
                  case 3: printf("Multiplicacion: %d\n", (num1*num2));break;
                  case 4: break;
            }
    }
}
10.- Hacer un programa en C que convierta un numero decimal a numero romano.
#include
#include

int  num,m,ml,m2,m3,c3,p,c,cl,c2;
char res;
int main(){
      do{
            clrscr();
            printf("Dame el numero a convertir en romano: ");
            scanf ("%d",&num);

            if(num>0 && num<=1000){
                  printf("? La convercion del numero es : ");
                  m=num/1000;
                  c=num%1000;
                  
                  switch(m){
                        case 1 : printf(" M ");
                        break;
                  }

                  ml=c/100;
                  cl=c%100;
      
                  switch(ml){
                        case 1 : printf("C");
                              break;
                        case 2 : printf("CC");
                              break;
                        case 3 : printf("CCC");      
                              break;
                        case 4 : printf("CD");
                              break;
                        case 5 : printf("D");
                              break;
                        case 6 : printf("DC");
                              break;
                        case 7 : printf("DCC");
                              break;
                        case 8 : printf("DCCC");
                              break;
                        case 9 : printf("CM");
                              break;
                        default :
                              break;
                  }
      
                  m2=cl/10;
                  c2=cl%10;
   
                  switch(m2){
                        case 1 : printf("X");
                              break;
                        case 2 : printf("XX");
                              break;
                        case 3 : printf("XXX");
                              break;
                        case 4 : printf("XL");
                              break;
                        case 5 : printf("L");
                              break;
                        case 6 : printf("LX");
                              break;
                        case 7 : printf("LXX");
                              break;
                        case 8 : printf("LXXX");
                              break;
                        case 9 : printf("XC");
                              break;
                        default :
                              break;
                  }
   
                  switch(c2){
                        case 1 : printf("I");
                              break;
                        case 2 : printf("II");
                              break;
                        case 3 : printf("III");
                              break;
                        case 4 : printf("IV");
                              break;
                        case 5 : printf("V");
                              break;
                        case 6 : printf("VI");
                              break;
                        case 7 : printf("VII");
                              break;
                        case 8 : printf("VIII");
                              break;
                        case 9 : printf("IX");
                              break;
                        default :
                              break;
                  }
          }
            else{
                  printf(" ? Numero invalido ? ");
                  getch();
            }
       
            printf ("\n\nDesea acer otra consiulta...(s/n)");
            res=getch();
      
            }while (res!='n');
}
11.- Hacer un programa en C que calcule la suma o el producto de los números comprendidos entre los límites marcados por el usuario.
#include 
void main(){
      int sup,inf, opc;
      double suma,prod;
      printf("Bienvenido al programa de calculo con limites.\n\n");

      do{
            suma=0;
            prod=1;
            printf("Introduzca el limite superior: ");
            scanf("%d",&sup);
            printf("\nAhora, escriba el limite inferior: ");
            scanf("%d",&inf);
            printf("\n\nSeleccione una opcion:\n\n1.Suma\n2.Producto\n");
            scanf("%d",&opc);
           
             switch (opc){
                   case 1:
                         for(int i=inf;i<=sup;i++){
                               suma=suma+i;
                         }
                         printf("\n\nEl resultado es %f\n\n",suma);
                         break;
                   case 2:
                         for(int i=inf;i<=sup;i++){
                               prod=prod*i;
                               printf("%f",prod);
                         }
                         printf("\nEl resultado es %f\n\n",prod);
                         break;
                         default:printf("\nNo es un valor valido.\n\n");
                  }
      }while(sup!=0);
}
12.- Hacer un programa en C que implemente algunas funciones de una calculadora científica.
#include
#include

int main(void){
      int x; 
      float num;
 
      printf("\n1.El triple"); 
      printf("\n2.El cuadrado");
      printf("\n3.Logaritmo natural"); printf("\n4.Logaritmo decimal");
      printf("\n5.Seno");
      printf("\n6.Coseno");
      printf("\n\nEscriba el numero de la opcion que desee: "); 

      scanf("%d",&x);
      printf("\n\nEscribe el numero: ");
      scanf("%f",&num);

      switch(x){
            case 1: 
                  printf("\nEl triple de %f es: %f",num,3*num);
                  break; //Indica el fin de la sentencia
            case 2:
                  printf("\nEl cuadrado de %f es: %f",num,num*num);
                  break;
            case 3:
                  printf("\nEl logaritmo neperiano de %f es: %f",num,log(num));
                  break;
            case 4:
                  printf("\nEl logaritmo decimal de %f es: %f",num,log10(num));
                  break;
            case 5:
                  printf("\nEl seno de %f en radianes es: %f",num,sin(num));
                  break;
            case 6:
                  printf("\nEl coseno de %f en radianes es: %f",num,cos(num));
                  break;
            default:
                  printf("\n\nEsto no es ninguna opcion");
                  break;
            }
      return 0;
}
13.- Hacer un programa en C que pida el número de un mes y diga cuántos días tiene.
#include

int main(){
      int op; 

      printf("Ingrese el numero de mes (1-12)");        
      scanf("%i",&op); 

      switch(op){
      case 1: 
      case 3: 
      case 5: 
      case 7: 
      case 8: 
            case 10: 
            case 12: 
                  printf("El mes %i tiene 31 días",op); 
                  break; 
            case 4: 
            case 6: 
            case 9: 
            case 11: 
                  printf("El mes %i tiene 31 dias",op); 
                  break; 
            case 2: 
                  printf("El mes %i tiene 28 días, 29 si9 es bisieto",op); 
                  break; 
            defaul: 
                  printf("El mes ingresado no existe %i",op); 
      } 
 
      return 0; 
} 
14.- Hacer un programa en C que calcule la asignación familiar que le corresponda a una familia dependiendo del número de hijos que tenga.
#include

int main(){

     int hijos;
     printf("Ingrese la cantidad de hijos que usted tiene: \n"); 
     scanf("%d", &hijos);

     switch (hijos) {
          case 0: 
               printf("No le corresponde asignación familiar por hijo\n");
                        break;
          case 1:
               printf("50usd de asignación familiar por su único hijo\n");
               break;
          case 2:
               printf("75usd de asignación familiar por sus dos hijos\n");
               break;
          default:
               printf("100usd de asignación familiar por más de dos hijos\n");
               break;
     }
}
15.- Hacer un programa en C que pida un número y diga si es positivo, negativo o cero
#include

int main(){

      int x;
      printf("Ingresa un numero: "); 
      scanf("%d", &x);

      switch (x) {
            case > 0:
                  puts ("Positivo");
                  break;

            case < 0:
                  puts ("Negativo");
                  break;

            default:
                  puts ("Cero");
      }
}

0 comentarios:

Publicar un comentario