String.format("%s이다", 변수); -> printf는 서식지정자와 함께 출력을 위해 사용되는 메소드임을 기억한다면 String.format은 기억하기 쉬움. 출력대신 변수데이터를 위한 메모리의 저장 메소드로 변경해서 기억하면 됨.
또한, 자주쓰는 형변환 메소드들 기억하기
if문 문제) 임의의 점수를 입력받아서 판정을 출력. 실행 예) 점수 입력(0~100)? 90 90~100 -> A 80~89 -> B 70~79 -> C 60~69 ~> D 0~59->F
입력된 점수 : 90 판정 결과 : A
import java.util.Scanner;
public class Test26 {
public static void main(String[] args) {
System.out.print("점수 입력(0~100)?"); Scanner sc = new Scanner(System.in); String num = sc.next();
//처리 int data = Integer.parseInt(num);
char score = 'F';
if (data>=90 && data<=100) { score = 'A'; } if (data>=80 && data<=89) { score = 'B'; } if (data>=70 && data<=79) { score = 'C'; } if (data>=60 && data<=69) { score = 'D'; }
/* 내가 짠 코드 // 가장 하단 if 문으로 인해 score변수를 String으로 선언 if (data>=60) { score = "D"; } if (data>=70) { score = "C"; } if (data>=80) { score = "B"; } if (data>=90) { score = "A"; } if (data<0 || data>100) { score = "0~100 사이 점수를 입력하세요"; } */
int data1 = Integer.parseInt(num1); int data2 = Integer.parseInt(num2); int data3 = Integer.parseInt(num3);
int max = 0;//지역변수는 초기화해야함! int min = 0;//지역변수는 초기화해야함!
//큰수 확인 후 변수 데이터 대입 if (data1 >= data2) { max = data1; } else { max = data2; }
if (max <= data3){ max = data3; }
//작은수확인 후 변수 데이터 대입 if (data1 <= data2) { min = data1; } else { min = data2; }
if (min >= data3) { min = data3; }
/* 교수님 작성 처리코드 * if (data1 >= data2) { * max = data1; * min = data2; * } else { * max = data2; * min = data1; * } * * if (max <= data3) { * max = data3; * } * * if (min >= data3) { * min = data3; * } */
//출력 System.out.printf("입력된 숫자 : %s %s %s%n", num1, num2, num3); System.out.printf("가장 큰 수 : %d %n", max); System.out.printf("가장 작은 수 : %d %n", min);
} }
//결과
숫자1?300 숫자2?80 숫자3?900 입력된 숫자 : 300 80 900 가장 큰 수 : 900 가장 작은 수 : 80
문제) 국,영,수 점수를 입력 받아서 판정 결과 출력. 판정 기준은 합격 -> 과목별로 40점 이상이면서, 평균이 60점 이상. 과락 -> 과목중 40점 미만이 있고, 평균이 60이상. 불합격 -> 평균이 60점 미만
평균이 60점 이상 -> 합격 또는 과락 -> 국영수 점수가 모두 40점 이상인지 확인. 평균이 60점 이하 -> 불합격
실행 예) 국어(0~100)?XX 영어(0~100)?YY 수학(0~100)?ZZ
입력받은 점수 : 국어 xx점, 영어 xx점, 수학 xx점 판정 결과 : 합격
import java.util.Scanner;
public class Test30 { public static void main (String [] args) {
Scanner sc = new Scanner(System.in); System.out.print("국어(0~100)?"); String kor = sc.next(); System.out.print("영어(0~100)?"); String eng = sc.next(); System.out.print("수학(0~100)?"); String mat = sc.next();
int data1 = Integer.parseInt(kor); int data2 = Integer.parseInt(eng); int data3 = Integer.parseInt(mat);