Java/method

메서드(5) - 비만도를 측정하는 카우프 지수 프로그램

은찡안찡 2023. 4. 5. 20:43
package com.dream.method;

import java.util.Scanner;

//비만도를 측정하는 카우프 지수 프로그램
//카우프 지수 = 체중(kg)/키(신장,m)*키(신장,m)
//건강상태
//30 이상 : 비만
//25~29.9 : 과체중
//20~24.9 : 정상
//15~19.9 : 저체중
//12~14.9 : 여윔
//10~11.9 : 영양 실조증
//10 미만 : 소모증
public class BodyMassMachine {
	//사용자로 부터 신장과 체중을 입력받는 weight( )와 height( )를 정의한다.
	//신장과 체중 데이터를 기자고 카우프 지수 값을 구하는 kaup( )를 정의한다.
	//카우프 지수 값으로 건강상태를 출력하는 getResult( )를 정의한다.
	public double weight(Scanner scan) { //사용자에게 체중을 입력받는다. > Scanner 객체(입력 스트림 객체)
		double weight = 0;
		System.out.print("몸무게(kg) 입력: ");
		weight = scan.nextDouble();
		
		return weight; //결괏값은 weight( )를 호출한 곳으로 반환한다.
	}
	public double height(Scanner scan) { //사용자에게 체중을 입력받는다. > Scanner 객체(입력 스트림 객체)
		double height = 0;
		System.out.print("키(m) 입력: ");
		height = scan.nextDouble();
		
		return height; //결괏값은 height( )를 호출한 곳으로 반환한다.
	}
	public double kaup(double weight, double height) { //카우프 지수 값을 구할 때 반드시 필요한 필수 데이터: 몸무게, 키
		double result = weight / (height * height);
		
		return result; //결괏값은 kaup( )를 호출한 곳으로 반환한다.
	}
	public String getResult(double kaupValue) { //카우프 지수 값: 필수 데이터
		String health = null;
		
		if(kaupValue > 30) {
			health = "비만";
		}else if(kaupValue >= 25) {
			health = "과체중";
		}else if(kaupValue >= 20) {
			health = "정상";
		}else if(kaupValue >= 15) {
			health = "저체중";
		}else if(kaupValue >= 12) {
			health = "여윔";
		}else if(kaupValue >= 10) {
			health = "영양 실조증";
		}else {
			health = "소모증";
		}
		
		return health;
	}
}
package com.dream.method;

import java.util.Scanner;

public class BodyMassMachineMain {
	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in); //입력 스트림 객체 생성
		BodyMassMachine bmm = new BodyMassMachine();
		
		double weight = bmm.weight(scan);
		double height = bmm.height(scan);
		double kaup = bmm.kaup(weight, height);
		String str = bmm.getResult(kaup);
		
		System.out.println("당신의 건강상태는 "+str+"입니다.");
	}
}

'Java > method' 카테고리의 다른 글

메서드(6)  (0) 2023.04.05
메서드(4)  (0) 2022.10.27
메서드(3)  (0) 2022.10.26
메서드 알고리즘(2)  (0) 2022.10.24
메서드(1)  (0) 2022.10.18