여러분이 열심히 모은 point, 돌려 드립니다.
문제 설명
적립된 포인트를 최대한으로 사용하려고 합니다. 포인트를 사용하는 규칙은 다음과 같습니다.
- 포인트는 100포인트 단위로 사용합니다.
- 1000포인트 이상 있을 때만 포인트를 사용할 수 있습니다.
적립된 포인트 point가 매개변수로 주어질 때, 최대 몇 포인트를 쓸 수 있는지 return 하도록 solution 함수를 작성했습니다.
그러나, 코드 일부분이 잘못되어있기 때문에 올바르게 동작하지 않으므로 한 줄만 변경해서 올바르게 동작하도록 수정하세요.
예시
point | return |
2323 | 2300 |
수정해야 할 코드
int solution(int point) {
if (point < 1000)
return 0;
return point * 100 / 100;
}
수정
point * 100 / 100; → point / 100 * 100; |
수정 전 코드로 할 경우 2323 * 100 / 100 = 232300 / 100 = 2323으로 point값과 같아져 구하고자 하는 값과 다른 값이 나온다.
그래서 point를 100으로 나누고 곱해야지만 구하고자 하는 값이 나온다. 2323 / 100 * 100 = 23 * 100 = 2300
- 포인트는 100단위로 사용할 수 있기 때문에 10의 자리 밑의 수는 자른다 ( =/ 100)
- 10의 자리 밑의 수를 잘랐으므로 다시 0으로 붙여준다.
코드 해석 및 전체 코드
if ) 포인트는 1000 포인트 이상 사용할 수 있으므로 1000 미만 시 0을 반환한다.
if문을 만족하지 않을 경우 포인트가 1000 이상이란 의미이다. 2323 / 100 * 100 = 23 * 100 = 2300
>>수정<< 에서 해석 확인
#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>
int solution(int point) {
if (point < 1000)
return 0;
return point / 100 * 100;
}
int main() {
int point = 2323;
int ret = solution(point);
printf("solution 함수의 반환 값은 %d 입니다.\n", ret);
}
구름 goormedu COS PRO 2급 기출문제 - C언어
[4차] 문제6) 여러분이 열심히 모은 point, 돌려 드립니다.
'코딩 테스트 > [c언어] cos pro 2급 기출문제' 카테고리의 다른 글
[No. 38] / cos pro 2급 c언어 기출 문제 (0) | 2021.05.21 |
---|---|
[No. 37] 오른 점수와 떨어진 점수 구하기 / cos pro 2급 c언어 기출 문제 (0) | 2021.05.21 |
[No. 35] 다이어트하는 A씨의 추가 운동 여부 알려주기 / cos pro 2급 c언어 기출 문제 (1) | 2021.05.20 |
[No.34] 조교의 수 구하기 / cos pro 2급 c언어 기출 문제 (0) | 2021.05.19 |
[No.33] 획득 점수 구하기. 도박은 안돼요. / cos pro 2급 c언어 기출 문제 (0) | 2021.05.19 |
댓글