문제1 (화씨 → 섭씨)
import java.util.Scanner;
public class FtoC1 {
public static void main(String[] args) {
// 화씨 : F , 섭씨 는 C
double f;
double c;
// 1. 화씨의 온도를 받기
System.out.println(("화씨를 입력하세요."));
Scanner sc = new Scanner(System.in);
f = sc.nextDouble();
// 2. 화씨를 화씨 온도로 환산
c = 5.0 / 9 * (f - 32);
// 3. 모니터로 출력
System.out.println(c);
}
}
문제2 (섭씨 → 화씨)
import java.util.Scanner;
public class FtoC2 {
public static void main(String[] args) {
// 화씨 : F , 섭씨 는 C
double f;
double c;
// 1. 섭씨의 온도를 받기
System.out.println(("섭씨를 입력하세요."));
Scanner sc = new Scanner(System.in);
c = sc.nextDouble();
// 2. 섭씨를 화씨 온도로 환산
f = c * 1.8 + 32;
// 3. 모니터로 출력
System.out.println(f);
}
}
문제3
섭씨 와 화씨 중 어떤 걸 바꿀 건지 선택 후 반대로 바꾸는 문제
package ex02;
import java.util.Scanner;
public class FtoC3 {
public static void main(String[] args) {
// 1. 화씨 혹은 섭씨를 선택하는 로직
System.out.println("==============");
System.out.println("1. 섭씨 -> 화씨");
System.out.println("2. 화씨 -> 섭씨");
System.out.println("==============");
Scanner sc = new Scanner(System.in);
int selectedNum = sc.nextInt();
// 2. 온도 받아오기
System.out.println("온도를 입력하세요.");
double temp = sc.nextDouble();
// 3. 화씨 혹은 섭씨 온도를 받아서 변환
double result =
selectedNum == 1 ? (5.0 / 9 * (temp - 32)) : (temp * 1.8 + 32);
System.out.println("온도는" + result);
}
}
- 문제점 : 1과 2를 제외한 3~ 의 숫자를 입력했을 경우 2번이 선택 되어서 화씨 →를 섭씨로 바꾼다. if문을 알아보고 고쳐 보자
문제 4 if문 사용
1을 선택하면 섭씨 → 화씨로 변경
2를 선택하면 화씨 → 섭씨로 변경
1과 2를 제외한 숫자를 입력하면 프로그램 종료 후 ‘잘못 선택했습니다’ 출력
package ex02;
import java.util.Scanner;
public class FroC4 {
public static void main(String[] args) {
// 화씨 : F , 섭씨 는 C
double f;
double c;
// 화씨 혹은 섭씨 선택하여 받기
Scanner sc = new Scanner(System.in);
int selectedNum = 0;
System.out.println("==============");
System.out.println("1. 섭씨 -> 화씨");
System.out.println("2. 화씨 -> 섭씨");
System.out.println("==============");
selectedNum = sc.nextInt();
if (selectedNum == 1) {
// 화씨 받기
System.out.println(("화씨를 입력하세요."));
f = sc.nextDouble();
// 화씨를 섭씨 온도로 환산
c = 5.0 / 9 * (f - 32);
System.out.println(c);
} else if (selectedNum == 2) {
// 섭씨의 온도를 받기
System.out.println(("섭씨를 입력하세요."));
c = sc.nextDouble();
// 섭씨를 화씨 온도로 환산
f = c * 1.8 + 32;
System.out.println(f);
} else {
// 1과 2를 제외한 숫자를 받으면 프로그램 종료
System.out.println("잘못 선택하였습니다.");
}
}
}
- 문제점 : 너무 긴 문자를 입력하거나, 숫자가 아닌 문자를 입력하면 오류가 남.
문제 5. 위 문제점 고쳐서 만들기
Share article