Advertisement
Guest User

Untitled

a guest
Jun 29th, 2016
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.56 KB | None | 0 0
  1. import java.awt.Button;
  2. import java.awt.Dimension;
  3. import java.awt.GridLayout;
  4. import java.awt.Toolkit;
  5. import java.awt.event.ActionEvent;
  6. import java.awt.event.ActionListener;
  7.  
  8. import javax.swing.ButtonGroup;
  9. import javax.swing.JButton;
  10. import javax.swing.JFrame;
  11. import javax.swing.JLabel;
  12. import javax.swing.JOptionPane;
  13. import javax.swing.JPanel;
  14. import javax.swing.JRadioButton;
  15. import javax.swing.JTextField;
  16.  
  17. public class BMI extends JFrame implements ActionListener {
  18.  
  19. private Dimension kep = Toolkit.getDefaultToolkit().getScreenSize();
  20. private JTextField magassag=new JTextField("");
  21. private JTextField testsuly=new JTextField("");
  22. private ButtonGroup buttonGroup=new ButtonGroup();
  23. private JRadioButton ferfi = new JRadioButton("Férfi");
  24. private JRadioButton no = new JRadioButton("Nő");
  25. private JButton button=new JButton("BMI szamitas");
  26.  
  27. public BMI() {
  28.  
  29. setDefaultCloseOperation(EXIT_ON_CLOSE);
  30. setTitle("Műveletek listaelemekkel");
  31. setBounds(kep.width / 2 - 200, kep.height / 2 - 100, 400, 200);
  32. setResizable(false);
  33.  
  34.  
  35. ferfi.setSelected(true);
  36. buttonGroup.add(ferfi);
  37. buttonGroup.add(no);
  38.  
  39.  
  40. JPanel panel = new JPanel(new GridLayout(3, 2));
  41. /*
  42. panel.add(new JLabel("Kérem jelölje be a megfelelőt"));
  43.  
  44. JPanel pb=new JPanel(new GridLayout(2, 1));
  45. pb.add(ferfi);
  46. pb.add(no);
  47. panel.add(pb);
  48. */
  49.  
  50. panel.add(new JLabel("Adja meg a testsúlyát(kg)"));
  51. panel.add(testsuly);
  52. panel.add(new JLabel("Adja meg a testmagasságát(cm)"));
  53. panel.add(magassag);
  54. panel.add(new JLabel(""));
  55. panel.add(button);
  56. add(panel);
  57.  
  58.  
  59. button.addActionListener(this);
  60.  
  61. setVisible(true);
  62. }
  63.  
  64. public static void main(String[] args) {
  65. new BMI();
  66. }
  67.  
  68. @Override
  69. public void actionPerformed(ActionEvent event) {
  70.  
  71. String textMagassag = magassag.getText();
  72. String textSuly = testsuly.getText();
  73. String selected="22";
  74.  
  75. if(event.getSource().equals(button)){
  76. System.out.println("btn pressed "+textMagassag+" - "+textSuly+" - "+selected);
  77.  
  78. boolean error=false;
  79. int m=0;
  80. int s=0;
  81. int fvn=0;
  82.  
  83. try{
  84. m=Integer.parseInt(textMagassag);
  85. }catch(NumberFormatException nme1){
  86. JOptionPane.showMessageDialog(this, "A test magasság formátuma nem megfelelő");
  87. error=true;
  88. }
  89.  
  90. try{
  91. s=Integer.parseInt(textSuly);
  92. }catch(NumberFormatException nme1){
  93. JOptionPane.showMessageDialog(this, "A testsúly formátuma nem megfelelő");
  94. error=true;
  95. }
  96.  
  97. if(!error){
  98. JOptionPane.showMessageDialog(this, "A kalkulat BMi szám: "+calculateBMIIndex(m, s, fvn));
  99. magassag.setText("");
  100. testsuly.setText("");
  101. }
  102. }
  103.  
  104.  
  105. }
  106.  
  107. //férfi:1, nő:0 paraméter
  108. public static String calculateBMIIndex(int testMagasság,int testTömeg,int ferfiVagyNo){
  109.  
  110.  
  111. boolean ok;
  112. do {
  113. ok=testMagasság>=100 && testMagasság<=200;
  114. if(testMagasság<100)
  115. return "Túl alacsony. Újra!";
  116. if(testMagasság>200)
  117. return "Túl magas. Újra!";
  118. } while(!ok);
  119.  
  120. double bmi=testTömeg/Math.pow(testMagasság/100.0, 2);
  121. while(bmi<20)
  122. bmi=testTömeg++/Math.pow(testMagasság/100.0, 2);
  123.  
  124. while(bmi<25)
  125. bmi=testTömeg++/Math.pow(testMagasság/100.0, 2);
  126.  
  127. while(bmi<30)
  128. bmi=testTömeg++/Math.pow(testMagasság/100.0, 2);
  129.  
  130. while(bmi<40)
  131. bmi=testTömeg++/Math.pow(testMagasság/100.0, 2);
  132.  
  133. return bmi+"";
  134.  
  135.  
  136. }
  137.  
  138. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement