728x90
위와 같은 문제입니다.
이 문제는 40점 이하의 점수를 입력받으면 최소 점수인 40점으로 대체가 되어야 한다는 겁니다.
예제입력을 보면 10 + 65 + 100 + 30 +95 가 되어 평균점수를 내면 300/5 가 되어 60점이 되어야 하지만
10 점과 30점은 40점으로 대체되어야 하기에 40 + 65 + 100 + 40 + 95 가 되어야 합니다.
그래서 340/5 가 되어 68점이 되는 것입니다.
그래서 저는 일단 변수를 2개 선언하였습니다.
1. 변수/배열 선언
var student = ['원섭','세희','상근','숭이','강수']; // 점수를 입력받을 학생 수
var sum = 0; // 합계점수집계를 위한 변수선언
2. 학생 수 만큼 반복하며 점수를 입력 받고 그 점수가 40점이 넘으면 그대로 저장 / 넘지않으면 40점으로 변경 후 저장
// 학생 수 만큼 반복
for(var i = 0; i < student.length ; i++){
// 출력이 String형임으로 int형으로 형변환 해준다.
var input = parseInt(prompt(student[i]+"의 점수 입력 : "));
// 조건확인
if(input < 40){ // 입력 한 수가 40보다 작으면 40으로 바꿔서 더해 !
input = 40;
sum += input;
}
else{ // 아니면 그냥 더해 !
sum += input;
}
}
3. 출력
console.log(sum / student.length);
<!-- 주의 사항 -->
아직 실력이 높지않아 풀이가 틀렸을 수 있습니다.
코드에 대한 오류나 리뷰 및 더 깔끔한 코드, 더 실용적인 코드를 댓글로 알려주시면 정말 감사하겠습니다.
728x90
'Algorithm' 카테고리의 다른 글
[백준] 상근날드 ( JavaScript 풀이 ) (0) | 2020.03.19 |
---|