java 조건문(if, grade)

limchard·2023년 10월 25일
0

java

목록 보기
22/48
int score=88;
if else 사용

if(score>=90)
System.out.println("학점은 A 입니다.");
else if(score>=80)
System.out.println("학점은 B 입니다.");
else if(score>=70)
System.out.println("학점은 C 입니다.");
else if(score>=60)
System.out.println("학점은 D 입니다.");
else
System.out.println("학점은 F 입니다.");

if(조건) 그리고 조건에 맞는 결과값은 syso로 기입한다.
조건이 여러개인 경우 else if로 추가 조건을 주고 그에대한 결과값을 syso로 기입한다.
마지막 조건의 경우 else만 가입하여 결과값을 syso로 기입하면 완료 된다.

grade 사용
String grade;

if(score>=90)
grade="A";
else if(score>=80)
grade="B";
else if(score>=70)
grade="C";
else if(score>=60)
grade="D";
else
grade=F";
System.out.println("학점은 "+grade+"입니다.");

위와 같이 syso대신 grade를 사용하면 소스코드 기입 량을 줄일 수 있다.

3가지 값을 비교하여 보자.

int x,y,z,max;

System.out.println("3개의 숫자를 입력하세요");
x=sc.nextInt();
y=sc.nextInt();
z=sc.nextInt();

System.out.println("입력한 수: "+x+","+y+","+z);

// if문
System.out.println("**if문**");
if(x>y&&x>z)
max=x;
else if(y>x&&y>z)
max=y;
else
max=z;
System.out.println("가장 큰 수는 "+max+"입니다");

// 삼항연산자
System.out.println("**삼항(조건)연산자**");
max=x>y&&x>z?x:y>x&&y>z?y:z;
System.out.println("가장 큰 수는 "+max+"입니다");

가장 큰 수를 구하는 방법이다.
처음 3가지 숫자를 비교한다는것 자체에 멘탈이 나갔다.
하지만 논리연산자를 사용하면 아주 간단하게 해결할 수 있다.
논리 연산자는 아래와 같다.
and : &&
or : ||

문제에 대해 너무 어렵게 생각하지 말고 차분하게 생각해보자.
간단한 산수 정도의 수준으로 많은 문제를 해결할 수 있다.

if의 경우 문자도 적용 가능하다.

canner sc=new Scanner(System.in);
String word;

System.out.println("영어단어를 입력하세요.");
System.out.println("입력예) happy,apple,angel,rose,cat,food");
word=sc.nextLine();

System.out.println("입력한 문자열 : "+word);

if(word.equals("angel")) // equals : 대소문자 모두 따질때 // equalsIgnoreCase : 대소문자 상관없이 단어만 볼때 사용
System.out.println("***천사***");
else if(word.equals("happy"))
System.out.println("**행복하다**");
else if(word.equals("rose"))
System.out.println("**장미**");
else if (word.equals("cat"))
System.out.println("**고양이**");
else
System.out.println("**한글단어가 등록됩지 않았습니다.");

word.equals / word.equiaslgnoreCase 두가지의 경우가 있다
전자는 대소문자 모두 비교하여 판단하고, 후자는 대소문자는 상관없이 단어 자체만으로 판단한다.

** 정지!

System.out.println("점수입력(1~100)");
score=sc.nextInt();

//잘못입력했을때 종료하는 법
if(score<1 || score>100) {
	System.out.println("잘못입력했습니다.");
	return; // 현재 메인함수 종료
	}else
	System.out.println("점수 :"+score);

함수를 입력 시 잘못 입력할때 return을 기입하면 종료 된다.
무한 굴레로 돌 가능성이 있는 경우 return을 기입하는것 같다.
위 예시에서 "return"을 없애고 실행했는데.. 솔직히 쓰는 이유를 아직은 모르겠다.
더 공부하다보면 이유를 알 수 있지 않을까?

profile
java를 잡아...... 하... 이게 맞나...

0개의 댓글