Convesor de Unidades de Masa(Java)

in #spanish7 years ago

Hola denuevo, por aquí traigo un avance de una aplicación en la que estoy trabajando, esto es un borrado de lo que sera apenas una mini función para hacer conversiones de unidades de masa, la idea a largo plazo es hacer una gran aplicación que nos permitirá realizar cálculos,analisis, gráficas etc. de problemas de Física de Secundaria y Universitária.

EL ALGOTIRMO: es simple está basado en utilizacion de variables de tipo float, para ahorrar espacio de momoria, y la utilizacion de la estructura en caso, o "switch case".

tomé como referencia este gráfico que nos da una idea de que es lo que se está ejecutando.(no es para nada un diagrama de flujo, solo es la referencia gráfica para realizar los cálculos)

Imagen5.5.png
package conversor.de.unidades.de.masa;

import javax.swing.JOptionPane;

/**

  • @author ROBERT
    */
    public class ConversorDeUnidadesDeMasa {

    /**

    • @param args the command line arguments
      */
      public static void main(String[] args) {
      // TODO code application logic here

      float gramo,decigramo,centigramo,miligramo,decagramo,hectogramo,kilogramo,conversion;
      int opcion_p,opcion_kg,opcion_hg,opcion_dag,opcion_g,opcion_dg,opcion_cg,opcion_mg;

      opcion_p=Integer.parseInt(JOptionPane.showInputDialog(null, "Conversor de Unidades de Masa\n\n"
      +"1)Kilogramo\n"
      + "2)Hectogramo\n"
      + "3)Decagramo\n"
      + "4)Gramo\n"
      + "5)Decigramo\n"
      + "6)Centigramo\n"
      + "7)Miligramo\n"
      + "8)Salir"));

      switch(opcion_p) {
      case 1:kilogramo=Float.parseFloat(JOptionPane.showInputDialog(null, "Digite cantidad en kg"));
      opcion_kg=Integer.parseInt(JOptionPane.showInputDialog(null, "Convertir a: \n"
      + "1)Hectogramo\n"
      + "2)Decagramo\n"
      + "3)Gramo\n"
      + "4)Decigramo\n"
      + "5)Centigramo\n"
      + "6)Miligramo\n"));
      switch(opcion_kg) {
      case 1: conversion=kilogramo10;
      JOptionPane.showMessageDialog(null, +conversion+" hg");
      break;
      case 2:conversion=kilogramo
      100;
      JOptionPane.showMessageDialog(null, +conversion+" dag");
      break;
      case 3:conversion=kilogramo1000;
      JOptionPane.showMessageDialog(null, +conversion+" g");
      break;
      case 4:conversion=kilogramo
      10000;
      JOptionPane.showMessageDialog(null, +conversion+" dg");
      break;
      case 5:conversion=kilogramo100000;
      JOptionPane.showMessageDialog(null, +conversion+" cg");
      break;
      case 6:conversion=kilogramo
      1000000;
      JOptionPane.showMessageDialog(null, +conversion+" mg");
      break;
      default:
      JOptionPane.showMessageDialog(null, "Opcion Invalida");
      break;

      }
      case 2:hectogramo=Float.parseFloat(JOptionPane.showInputDialog(null, "Digite cantidad en hg"));
      opcion_hg=Integer.parseInt(JOptionPane.showInputDialog(null, "Convertir a: \n"
      + "1)Kilogramo\n"
      + "2)Decagramo\n"
      + "3)Gramo\n"
      + "4)Decigramo\n"
      + "5)Centigramo\n"
      + "6)Miligramo\n"));
      switch(opcion_hg) {
      case 1: conversion=hectogramo/10;
      JOptionPane.showMessageDialog(null, +conversion+" kg");
      break;
      case 2:conversion=hectogramo10;
      JOptionPane.showMessageDialog(null, +conversion+" dag");
      break;
      case 3:conversion=hectogramo
      100;
      JOptionPane.showMessageDialog(null, +conversion+" g");
      break;
      case 4:conversion=hectogramo1000;
      JOptionPane.showMessageDialog(null, +conversion+" dg");
      break;
      case 5:conversion=hectogramo
      10000;
      JOptionPane.showMessageDialog(null, +conversion+" cg");
      break;
      case 6:conversion=hectogramo100000;
      JOptionPane.showMessageDialog(null, +conversion+" mg");
      break;
      default:
      JOptionPane.showMessageDialog(null, "Opcion Invalida");
      break;
      }
      case 3:decagramo=Float.parseFloat(JOptionPane.showInputDialog(null, "Digite cantidad en dag"));
      opcion_dag=Integer.parseInt(JOptionPane.showInputDialog(null, "Convertir a: \n"
      + "1)Kilogramo\n"
      + "2)Hectogramo\n"
      + "3)Gramo\n"
      + "4)Decigramo\n"
      + "5)Centigramo\n"
      + "6)Miligramo\n"));
      switch(opcion_dag) {
      case 1: conversion=decagramo/100;
      JOptionPane.showMessageDialog(null, +conversion+" kg");
      break;
      case 2:conversion=decagramo/10;
      JOptionPane.showMessageDialog(null, +conversion+" hg");
      break;
      case 3:conversion=decagramo
      10;
      JOptionPane.showMessageDialog(null, +conversion+" g");
      break;
      case 4:conversion=decagramo100;
      JOptionPane.showMessageDialog(null, +conversion+" dg");
      break;
      case 5:conversion=decagramo
      1000;
      JOptionPane.showMessageDialog(null, +conversion+" cg");
      break;
      case 6:conversion=decagramo*10000;
      JOptionPane.showMessageDialog(null, +conversion+" mg");
      break;
      default:
      JOptionPane.showMessageDialog(null, "Opcion Invalida");
      break;
      }

      case 4:gramo=Float.parseFloat(JOptionPane.showInputDialog(null, "Digite cantidad en g"));
      opcion_g=Integer.parseInt(JOptionPane.showInputDialog(null, "Convertir a: \n"
      + "1)Kilogramo\n"
      + "2)Hectogramo\n"
      + "3)decagramo\n"
      + "4)Decigramo\n"
      + "5)Centigramo\n"
      + "6)Miligramo\n"));
      switch(opcion_g) {
      case 1: conversion=gramo/1000;
      JOptionPane.showMessageDialog(null, +conversion+" kg");
      break;
      case 2:conversion=gramo/100;
      JOptionPane.showMessageDialog(null, +conversion+" hg");
      break;
      case 3:conversion=gramo/10;
      JOptionPane.showMessageDialog(null, +conversion+" dag");
      break;
      case 4:conversion=gramo10;
      JOptionPane.showMessageDialog(null, +conversion+" dg");
      break;
      case 5:conversion=gramo
      100;
      JOptionPane.showMessageDialog(null, +conversion+" cg");
      break;
      case 6:conversion=gramo1000;
      JOptionPane.showMessageDialog(null, +conversion+" mg");
      break;
      default:
      JOptionPane.showMessageDialog(null, "Opcion Invalida");
      break;
      }
      case 5:decigramo=Float.parseFloat(JOptionPane.showInputDialog(null, "Digite cantidad en dg"));
      opcion_dg=Integer.parseInt(JOptionPane.showInputDialog(null, "Convertir a: \n"
      + "1)Kilogramo\n"
      + "2)Hectogramo\n"
      + "3)decagramo\n"
      + "4)gramo\n"
      + "5)Centigramo\n"
      + "6)Miligramo\n"));
      switch(opcion_dg) {
      case 1: conversion=decigramo/10000;
      JOptionPane.showMessageDialog(null, +conversion+" kg");
      break;
      case 2:conversion=decigramo/1000;
      JOptionPane.showMessageDialog(null, +conversion+" hg");
      break;
      case 3:conversion=decigramo/100;
      JOptionPane.showMessageDialog(null, +conversion+" dag");
      break;
      case 4:conversion=decigramo/10;
      JOptionPane.showMessageDialog(null, +conversion+" g");
      break;
      case 5:conversion=decigramo
      10;
      JOptionPane.showMessageDialog(null, +conversion+" cg");
      break;
      case 6:conversion=decigramo100;
      JOptionPane.showMessageDialog(null, +conversion+" mg");
      break;
      default:
      JOptionPane.showMessageDialog(null, "Opcion Invalida");
      break;
      }
      case 6:centigramo=Float.parseFloat(JOptionPane.showInputDialog(null, "Digite cantidad en cg"));
      opcion_cg=Integer.parseInt(JOptionPane.showInputDialog(null, "Convertir a: \n"
      + "1)Kilogramo\n"
      + "2)Hectogramo\n"
      + "3)decagramo\n"
      + "4)gramo\n"
      + "5)decigramo\n"
      + "6)Miligramo\n"));
      switch(opcion_cg) {
      case 1: conversion=centigramo/100000;
      JOptionPane.showMessageDialog(null, +conversion+" kg");
      break;
      case 2:conversion=centigramo/10000;
      JOptionPane.showMessageDialog(null, +conversion+" hg");
      break;
      case 3:conversion=centigramo/1000;
      JOptionPane.showMessageDialog(null, +conversion+" dag");
      break;
      case 4:conversion=centigramo/100;
      JOptionPane.showMessageDialog(null, +conversion+" g");
      break;
      case 5:conversion=centigramo/10;
      JOptionPane.showMessageDialog(null, +conversion+" dg");
      break;
      case 6:conversion=centigramo
      10;
      JOptionPane.showMessageDialog(null, +conversion+" mg");
      break;
      default:
      JOptionPane.showMessageDialog(null, "Opcion Invalida");
      break;
      }
      case 7:miligramo=Float.parseFloat(JOptionPane.showInputDialog(null, "Digite cantidad en mg"));
      opcion_mg=Integer.parseInt(JOptionPane.showInputDialog(null, "Convertir a: \n"
      + "1)Kilogramo\n"
      + "2)Hectogramo\n"
      + "3)Decagramo\n"
      + "4)Gramo\n"
      + "5)Decigramo\n"
      + "6)Centigramo\n"));
      switch(opcion_mg) {
      case 1: conversion=miligramo/1000000;
      JOptionPane.showMessageDialog(null, +conversion+" kg");
      break;
      case 2:conversion=miligramo/100000;
      JOptionPane.showMessageDialog(null, +conversion+" hg");
      break;
      case 3:conversion=miligramo/10000;
      JOptionPane.showMessageDialog(null, +conversion+" dag");
      break;
      case 4:conversion=miligramo/1000;
      JOptionPane.showMessageDialog(null, +conversion+" g");
      break;
      case 5:conversion=miligramo/100;
      JOptionPane.showMessageDialog(null, +conversion+" dg");
      break;
      case 6:conversion=miligramo/10;
      JOptionPane.showMessageDialog(null, +conversion+" cg");
      break;
      default:
      JOptionPane.showMessageDialog(null, "Opcion Invalida");
      break;
      }
      case 8:
      break;
      }

    }

}