백준 9498번 - 시험 성적

이설군·2022년 6월 15일
0

백준

목록 보기
8/52

문제

시험 점수를 입력받아 90 ~ 100점은 A, 80 ~ 89점은 B, 70 ~ 79점은 C, 60 ~ 69점은 D, 나머지 점수는 F를 출력하는 프로그램을 작성하시오.

입력

첫째 줄에 시험 점수가 주어진다. 시험 점수는 0보다 크거나 같고, 100보다 작거나 같은 정수이다.

출력

시험 성적을 출력한다.

예제 입력 1

100

예제 출력 1

A

제출

맞은 제출 1 (if문 이용)

let i = Int(readLine()!)!
if i >= 90 {
	print ("A")
}else if i >= 80 {
    print ("B")
}else if i >= 70 {
    print ("C")
}else if i >= 60 {
    print ("D")
}else {
    print ("F")
}

오답노트

틀린 제출 1

let i = Int(readLine()!)!; print(i>=90 ?"A":i>=80 ?"B":i>=70 ?"C":i>=60? "D":"F")

제일 먼저 생각난 코드인데 바로 컴파일 오류가 떴다.
=나 <=를 사용하면 (조건문) ? (T일때):(F일때 조건문)이 안되는것같다.
숏코딩중 아래와 같은 코드가 있다.

let input = Int(readLine()!)!
print(input >= 60 ? input >= 70 ? input >= 80 ? input >= 90 ? "A" : "B" : "C" : "D" : "F")

조건결과를 순서대로 나열하는것 모두다 해당하면 제일 왼쪽의 결과부터 나온다.
'>'으로는 되고 '>='으로는 안되는게 좀 의아했다.

숏코딩

숏코딩 예제 1

let i=Int(readLine()!)!;print(i>89 ?"A":i>79 ?"B":i>69 ?"C":i>59 ?"D":"F")
profile
티끌 모아 태산. 내가 가는 길이 옳은 길이라 믿으며 최선을 다해 걷는다.

0개의 댓글