파의썬 문의입니다.
본문
안녕하세요 대학교에서 파이썬을 배우고있는 학생입니다.
시험 문제로 5~55 사이의 정수 하나를 입력 받은 다음에
그 값이 50이상이면 'A'를, 40이상 50미만이면 'B'를, 30이상 40미만이면 'C'를,
20이상 30미만이면 'D'를, 20미만이면 'F'를 출력하는 프로그램을 작성하시오.
라는 문제가 있었습니다.
저는 해당 문제를 읽고 랜덤 함수를 사용했지만 감점을 받았습니다.
교수님께 문의해보니 input을 사용해야하는 문제라고 하셨습니다.
혹시 해당 문제는 랜덤함수를 사용하면 안되는건가요?
답변 5
문제에 "정수 하나를 입력 받은 다음에" 라고 되어 있네요.
문제에
"5~55 사이의 정수 하나를 입력 받은 다음에 "
라고 했기 때문 아닐까요?
사용자에게 입력받은 점수에 대한 결과를 도출하는건데,
랜덤함수를 쓰면 입력받을 수 없으니까요...
개인적 생각입니다.
문제에 "입력 받은 다음"이란 문구에서 입력이 어디까지 해당하는가의 문제에
따라 다르겠죠.
그리고 함수로 작성해서 인자로 숫자를 받았다면 이게 입력이냐 전달이냐로 해석하냐에 따라
달라질 수도 있겠지만 그렇지 않다면 그냥 랜덤하게 숫자를 하나 골라 변수에 넣고
판단하는 것 만으로는 입력이라 하기 그렇네요.
그 담당교수는 시험범위 내에 input함수를 배웠고 그것을 활용할 수 있나를 물었던 모양입니다.
시험 문제로 5~55 사이의 정수 하나를 입력 받은 다음에
이 문제를 해결하기 위해서는
1. 입력한 값이 정수인지 여부(5점)
2. 최소값, 최대값 체크 코드(5점)
위의 두가지가 포함되어 있다고 봅니다.
두가지 로직이 빠졌다면, 감점입니다.
랜덤 생성 로직에도 위의 두가지 체크가 들어간다면 가점이 되었을것 같구요.
실무에서도 저렇게 잘못 이해하면
정수 하나를 입력 받은 다음에 <- 라는 문구가 사용자의 입장에서 입력을 받는다는거 같네요
윗분들이 설명을 너무나 잘해주셨어서요
저기 문제에 5~55라고 사이의 정수라고 되어있으니 그 이하 그 이상은 안되도록 최솟값 최댓값 설정도 하는게 당연히 맞는것 같습니다