Guestex - 고개의 정보 즉,변수 입력 부분
변수 입력값에 리턴 값을 넣은 것
중요한 값을 리턴을 해서 다시 쓰기 위해 한번에 입력했던 것을 메소드를 여러개로 나눠야했다.
이런 식으로 하면 각각의 리턴을 받을 수 있고 클래스가 적어져서
하나에 길게 쓰는게 오류가 적어져서 지금 나한테는 더 좋은 것 같았다.
문제는 아직도 미완성이라는 점..^^... 두개 날짜 차이 계산을 넣었는데 오류는 없지만 어딘가 오류가 있는듯 하다.
package shm;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;
public class Guestex {
// 기본정보
public static void sub1() {
Scanner sc = new Scanner(System.in);
String gender;
int age;
double hight;
System.out.println("고객 정보 입력");
System.out.println("________________ ");
System.out.println("*주의 : 의사의 도움 없이 혼자 힘으로 다이어트 가능항 최대치 체중 감량은 월4Kg입니다.\n "
+ "그 이상은 단백질 손상으로 무리가 가며 심하면 부작용으로 응급실에 갈 수 있습니다\n" + "그 이상은 권하지 않으며 가장 이상적인 감량은 월2Kg 입니다.");
System.out.println("________________ ");
System.out.print("성별를 입력해주세요> ");
gender = sc.next();
System.out.print("나이를 입력해주세요> ");
age = sc.nextInt();
System.out.print("현재 키를 입력해주세요> ");
hight = sc.nextDouble();
}
// 몸무게
public static double sub2 () {
double currentlyweight;
double goalweight;
Scanner sc = new Scanner(System.in);
System.out.print("현재 몸무게를 입력해주세요> ");
currentlyweight = sc.nextDouble();
System.out.print("목표 몸무게를 입력해주세요> ");
goalweight = sc.nextDouble(); {
double result = currentlyweight - goalweight ;
return result;
}
}
// 두개 차이계산 = 감량체중계산
public void minus(double currentlyweight, double goalweight) {
double result1 = sub2();
System.out.println("감량체중은" + result1);
}
public static String sub3() {
String currentlydate;
Scanner sc = new Scanner(System.in);
System.out.println("오늘 날짜를 입력해주세요 > ");
System.out.print("예) 20201123 ");
{
currentlydate = sc.next();
return currentlydate;
}
}
public static String sub4() {
String goaldate;
Scanner sc = new Scanner(System.in);
System.out.println("목표 날짜를 입력해주세요> ");
System.out.print("예) 20201123 ");
{
goaldate = sc.next();
return goaldate;
}
}
// 다이어트 기간 계산
public void ddmain() {
String strStartDate11 = sub3();
String strEndDate11 = sub3();
String strFormat = "yyyyMMdd";
// strStartDate 와 strEndDate 의 format
// SimpleDateFormat 을 이용하여 startDate와 endDate의 Date 객체를 생성한다.
SimpleDateFormat sdf = new SimpleDateFormat(strFormat);
try{
Date startDate = sdf.parse(strStartDate11);
Date endDate = sdf.parse(strEndDate11);
// 두날짜 사이의 시간 차이(ms)를 하루 동안의 ms(24시*60분*60초*1000밀리초) 로 나눈다.
long diffDay = (startDate.getTime() - endDate.getTime()) / (24*60*60*1000);
System.out.println(diffDay+"일");
}catch(ParseException e){
e.printStackTrace();
}
}
//끼니수와 활동계수
public static void su4(String[] args) {
int meal;
double hg; // 활동계수
Scanner sc = new Scanner(System.in);
System.out.println("평소 하루에 총 몇끼를 하시나요?");
meal = sc.nextInt();
System.out.println("당신은 운동을 얼마나 하시나요??");
System.out.println("________________ ");
System.out.println("평일에 보통 앉아서 생활 예)사무직 회사원, 학생__1번 ");
System.out.println("어느정도 규칙적인 생활하며 하루에 운동 1번에서2번 정도__2번 ");
System.out.println("육체노동자 및 운동선수 처럼 신활동이 많으면_3번 ");
System.out.println("> ");
hg = sc.nextInt();
System.out.println("감사합니다 고객 분석중 ... 잠시만 기다리세요");
}
// 칼로리 계산
// public static void su5 () {
// double gdmealkal = (goalweight 24 hg) % meal;
// 활동계수는 1번은 1.3 , 2번은 1.5, 3번은 1.7, 로 계산한다.