Algoritmos con estructuras condicionales if y switch



1.- Hacer un programa que calcule el total a pagar por la compra de camisas. Si
se compran tres camisas o mas se aplica un descuento del 20%  sobre el total de
la compra y si son menos de tres camisas un descuento del 10%

 package p1_compra_camisas;
import java.util.Scanner;

public class P1_compra_camisas {

 public static void main(String[] args) {
  // TODO Auto-generated method stub
  Scanner leer= new Scanner(System.in);
  int cant;double precio,desc;
  System.out.print("Ingrese antida de camisas: ");
  cant = leer.nextInt();
  System.out.print("Ingrese el precio: ");
  precio = leer.nextInt();
  
  if (cant>=3) {
   desc = (precio*cant)*0.2;
  }else{
   desc = (precio*cant)*0.1;
  }
  System.out.println("EEl precio total por la compra de camisas es: "+(precio*cant-desc));
 }

}
2.- Que pida 3 números y los muestre en pantalla de menor a mayor.
package p2_numeros_menor_mayor;

import java.util.Scanner;

public class P2_numeros_menor_mayor {

 public static void main(String[] args) {
  // TODO Auto-generated method stub
  Scanner leer= new Scanner(System.in);
  int n1,n2,n3;
  System.out.print("Numero 1: ");
  n1 = leer.nextInt();
  System.out.print("Numero 2: ");
  n2 = leer.nextInt();
  System.out.print("Numero 3: ");
  n3 = leer.nextInt();
  
  int mayor,menor,central = 0;
        
        //numero mayor
        mayor=n1;
        if(n2>mayor)mayor=n2;
        if(n3>mayor)mayor=n3;
        //numero menor
        menor=n1;
        if(n2n2 && n1n3 ) central = n1;       
        else if(n2>n1 && n2n3) central = n2;       
        else if(n3>n1 && n3n2) central = n3;        
        else if(n1==n2)central=n1;
        else central=n3;
           
        System.out.println("Orden de menor a mayor: "+menor+""+central+""+mayor);
        
 }
}
3.- Una persona enferma, que pesa 70 kg, se encuentra en reposo y desea saber cuantas calorías consume su cuerpo durante todo el tiempo que realice una misma actividad. Las actividades que tiene permitido realizar son únicamente dormir o estar sentado en reposo. Los datos que tiene son que estando dormido consume 1.08 calorías por minuto y estando sentado en reposo consume 1.66 calorías por minuto.
package p3_Consumo_calorias;

import java.util.Scanner;

public class P3_Consumo_calorias {

 public static void main(String[] args) {
  // TODO Auto-generated method stub
  Scanner leer= new Scanner(System.in);
  double calorias = 0,tiempo;char actividad;
  
  System.out.print("Ingrese el tiempo en minutos: ");
  tiempo = leer.nextInt();
  System.out.print("Actividad: D = Dormido | S = Sentado: ");
  actividad = leer.next().charAt(0);
  String act = "";
  switch (actividad) {
  case 'D':
   calorias = tiempo*1.08;
   act = "Dormido";
   break;
  case 'S':
   calorias = tiempo*1.66;
   act = "Sentado en reposo";
   break;

  default:System.out.print("Ingrese: D = Dormido | S = Sentado: ");
   break;
  }
  System.out.print("Calorías  que consumen en estando "+act+" "+calorias);
 }

}

4.- comprobar si un número del 1 al 5 y diga si es primo o no.
package p4Numero_Primo;

import java.util.Scanner;

public class P4Numero_Primo {

 public static void main(String[] args) {
  // TODO Auto-generated method stub
  Scanner leer= new Scanner(System.in);
  
  int num,cont = 2;boolean primo =true;
  
  System.out.print("Ingrese el número menor a 6: ");
  num = leer.nextInt();
  
  while (primo & cont < num ) {
   if (num % cont == 0) {
    primo = false;
   }else{cont++;}
   
  }
  if (primo) {
   System.out.print("El número "+num+""+" si es primo");
  }else{System.out.print("El número "+num+""+" no es primo");} 
      
 }
}
5.- tomar dos números y demostrar si ambos son pares o impares.
package p5_numero_par_impar;

import java.util.Scanner;

public class P5_numero_par_impar {

 public static void main(String[] args) {
  // TODO Auto-generated method stub
  Scanner leer = new Scanner(System.in);
  int n1,n2;
  System.out.print("Ingrese numero 1: ");
  n1 =leer.nextInt();
  System.out.print("Ingrese numero 2: ");
  n2 =leer.nextInt();
  
  if (n1%2==0 & n2%2==0) {
   System.out.print("El número "+n1+" y "+n2+" son pares");
  }else{
   System.out.print("El número "+n1+" y "+n2+" son impares");
  }
 }

}
6.- Realizar un programa que lea por teclado dos números, si el primero es mayor al segundo informar su suma y diferencia, en caso contrario informar el producto y la división del primero respecto al segundo.
package p6_evaluar_dod_numeros;

import java.util.Scanner;

public class P6_evaluar_dod_numeros {

 public static void main(String[] args) {
  // TODO Auto-generated method stub
  Scanner leer = new Scanner(System.in);
  double n1,n2,ope1,ope2;
  System.out.print("Ingrese numero 1: ");
  n1 =leer.nextInt();
  System.out.print("Ingrese numero 2: ");
  n2 =leer.nextInt();
  if (n1>n2) {
   ope1 = n1+n2;
   ope2 = n1-n2;
   System.out.print("Suma: "+ope1+" Difrencia: "+ope2);
  }else{
   ope1 = n1*n2;
   ope2 = n1/n2;
   System.out.print("Producto: "+ope1+" División: "+ope2);
  }
  
 }
}
7.- Dos Atletas recorren la misma distancia y se registra sus tiempos en minutos y segundos. Se desea saber el tiempo total utilizando por ambos atletas en horas, minutos y segundos.
package p7_tiempo_dos_atletas;

import java.util.Scanner;

public class P7_tiempo_dos_atletas {

 public static void main(String[] args) {
  // TODO Auto-generated method stub
  Scanner leer = new Scanner(System.in);
  int m1=0,m2 = 0,s1,s2;
  System.out.print("Ingrese minutos del primer atleta: ");
  m1 =leer.nextInt();
  System.out.print("Ingrese segundos del primer atleta: ");
  s1 =leer.nextInt();
  System.out.print("Ingrese minutos del segundo atleta: ");
  m2 =leer.nextInt();
  System.out.print("Ingrese segundos del segundo atleta: ");
  s2 =leer.nextInt();
  
  int min,seg,hora = 0;
  
  min=m1+m2;
  seg=s1+s2;
  
  if (seg>60) {
   min=min+1;
   seg=seg-60;
   
   if (min>=60){
    hora = hora+1;
    min = min-60;
    }
  }
  if (min>=60){
   hora = hora+1;
   min = min-60;
   }
  System.out.println("H: "+hora+" M: "+min+" S: "+seg);  
 }
}
8.-Un supermercado ha puesto en oferta la venta al por mayor de cierto producto, ofreciendo un descuento del 15% por la compra de más de 3 docenas y 10% en caso contrario. Además por la compra de más de 3 docenas se obsequia una unidad del producto por cada docena en exceso. Desarrolle un programa que determine el monto de la compra, el monto del descuento, el monto a pagar y el número de unidades de obsequio por la compra de cierta cantidad de docenas del producto.
package p8_monto_compra;

import java.util.Scanner;

public class P8_monto_compra {

 public static void main(String[] args) {
  // TODO Auto-generated method stub
  Scanner leer = new Scanner(System.in);
  double precio,desc,monto_compra,monto_pagar;
  int doocena,obseqio;
  
  System.out.print("Ingrese lacantidad: ");
  doocena =leer.nextInt();
  System.out.print("Ingrese el precio: ");
  precio =leer.nextInt();
    
  monto_compra = doocena*precio;
  if (doocena>3) {
   desc = monto_compra*0.15;
   obseqio=doocena-3;
  }else{
   desc = monto_compra*0.10;
   obseqio = 0;
  }
  monto_pagar = monto_compra-desc;
  System.out.println("Monto dela compra: "+monto_compra);
  System.out.println("Descuento: "+desc);
  System.out.println("Monto a pagar : "+monto_pagar);
  System.out.println("Cantidad de Obseqios: "+obseqio);
 }
}
9.- Escriba un programa que, dado una fecha introducida por teclado (día y mes) correspondiente al año 2015, imprima por el número de días que han pasado desde el 1 de Enero de 2015 hasta la fecha dada, inclusive
package p9_calcular_dias_transcurridos;

import java.util.Scanner;

public class P9_calcular_dias_transcurrido {

 public static void main(String[] args) {
  // TODO Auto-generated method stub
  Scanner leer = new Scanner(System.in);
  int dia, mes, tiempo = 0;
  System.out.print("introdusca el día: "); 
  dia=leer.nextInt(); 
  System.out.print("introdusca el número de mes: "); 
  mes=leer.nextInt();
  
  if (dia<=31) {
   switch (mes) {
    case 1:tiempo=dia;break;//31    
    case 2:tiempo=28+dia;break;//28
    case 3: tiempo=59+dia;break;//31
    case 4:tiempo=89+dia;break;//30
    case 5:tiempo=120+dia;break;//31
    case 6:tiempo=150+dia;break;//30
    case 7:tiempo=181+dia;break;//31
    case 8:tiempo=212+dia;break;//31
    case 9:tiempo=242+dia;break;//30
    case 10:tiempo=273+dia;break;//31
    case 11:tiempo=303+dia;break;//30
    case 12:tiempo=334 +dia;break;//31
    default:System.out.print("el mes está fuera de rango"); break;
   }
  }else System.out.print("dias está fuera de rango"); 
   
  System.out.print("han transcurridos: "+ tiempo+" Días");
 }

}

Comentarios