Можете оценить мой код? - Java

Узнай цену своей работы

Формулировка задачи:

package com.zar;
 
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.IOException;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.net.URI;
import java.net.URISyntaxException;
 
public class Main {
 
    public static void main(String[] args) {
        JFrame window = new JFrame("Калькулятор индекса массы тела");
        window.setSize(312, 252);
        window.setResizable(false);
        window.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
 
        BoxLayout boxLayout = new BoxLayout(window.getContentPane(), BoxLayout.PAGE_AXIS);
        window.setLayout(boxLayout);
 
        JLabel labelOfGrowth = new JLabel("Введите ваш рост (в сантиметрах)");
        window.add(labelOfGrowth);
 
        SpinnerNumberModel ModelOfSpinnerOfGrowth = new SpinnerNumberModel(1, 1, 285, 1);
 
        final JSpinner spinnerOfGrowth = new JSpinner(ModelOfSpinnerOfGrowth);
        window.add(spinnerOfGrowth);
 
        JLabel labelOfWeight = new JLabel("Введите ваш вес (в килограммах)");
        window.add(labelOfWeight);
 
        SpinnerNumberModel modelOfSpinnerOfWeight = new SpinnerNumberModel(1, 1, 727, 1);
 
        final JSpinner spinnerOfWeight = new JSpinner(modelOfSpinnerOfWeight);
        window.add(spinnerOfWeight);
 
        JButton buttonOfResult = new JButton("Рассчитать");
        window.add(buttonOfResult);
 
        JLabel labelOfResult = new JLabel("Результат");
        window.add(labelOfResult);
 
        final JTextField textFieldOfResult = new JTextField();
        textFieldOfResult.setEditable(false);
        window.add(textFieldOfResult);
 
        JLabel labelOfStatus = new JLabel("Состояние");
        window.add(labelOfStatus);
 
        final JTextField textFieldOfStatus = new JTextField();
        textFieldOfStatus.setEditable(false);
        window.add(textFieldOfStatus);
 
        JButton buttonOfComment = new JButton("Оставить отзыв");
        window.add(buttonOfComment);
 
        JButton buttonOfDonate = new JButton("Поддержать разработчика");
        buttonOfDonate.setEnabled(false);
        window.add(buttonOfDonate);
 
        buttonOfResult.addActionListener(new ActionListener() {
 
            public void actionPerformed(ActionEvent e) {
                double growth = (Integer) spinnerOfGrowth.getValue();
                double weight = (Integer) spinnerOfWeight.getValue();
                double result = weight / (growth / 100 * growth / 100);
                double roundedResult = new BigDecimal(result).setScale(2, RoundingMode.UP).doubleValue();
 
                if (roundedResult <= 16) {
                    textFieldOfStatus.setText("Выраженный дефицит массы тела");
                } else if (roundedResult >= 16 && roundedResult <= 18.5) {
                    textFieldOfStatus.setText("Недостаточная масса тела");
                } else if (roundedResult >= 18.5 && roundedResult <= 24.99) {
                    textFieldOfStatus.setText("Норма");
                } else if (roundedResult >= 25 && roundedResult <= 30) {
                    textFieldOfStatus.setText("Избыточная масса тела");
                } else if (roundedResult >= 30 && roundedResult <= 35) {
                    textFieldOfStatus.setText("Ожирение первой степени");
                } else if (roundedResult >= 35 && roundedResult <= 40) {
                    textFieldOfStatus.setText("Ожирение второй степени");
                } else if (roundedResult >= 40) {
                    textFieldOfStatus.setText("Ожирение третьей степени");
                }
 
                String stringResult = Double.toString(roundedResult);
                textFieldOfResult.setText(stringResult);
            }
        });
 
        buttonOfComment.addActionListener(new ActionListener() {
 
            public void actionPerformed(ActionEvent e) {
                try {
                    Desktop.getDesktop().browse(new URI("http://zar-site.tk/%D0%B3%D0%BE%D1%81%D1%82%D0%B5%D0%B2%D0%B0%D1%8F-%D0%BA%D0%BD%D0%B8%D0%B3%D0%B0/"));
                } catch (IOException e1) {
                    e1.printStackTrace();
                } catch (URISyntaxException e1) {
                    e1.printStackTrace();
                }
            }
        });
 
        window.setVisible(true);
    }
}

Решение задачи: «Можете оценить мой код?»

textual
Листинг программы
double result = weight * 10000 / growth / growth;

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 4.556 из 5