// 2. 그 숫자가 소수인지 판단하는 코드
function checkPrimeNumber(num)
{
for(let i = 2; i < num; i++) // 1과 자기 자신은 어차피 나눠짐, 따라서 그 사이의 수를 검증할 필요가 있다.
{
if( num % i == 0) { // 소수가 아님을 표시
// ex. 4를 2로 나눴을때 나머지가 0. 결국 1,자신의 숫자말고 그 사이숫자로 나눠진다는 뜻이기 때문에 return false
return false
}
}
return true;
}
//solution([1, 2, 3, 4]);
solution([1, 2, 7, 6, 4]);
function solution(nums){
let sumNumber = 0;
let count = 0;
// 1. 숫자 세개를 골라서 합하는 코드
for (let i = 0; i < nums.length; i++)
{
for(let j = i+1; j < nums.length; j++)
{
for(let k = j+1; k <nums.length; k++)
{
sumNumber = nums[i] + nums[j] + nums[k];
console.log(sumNumber);
if(checkPrimeNumber(sumNumber)) {
count++;
}
}
}
}
console.log(count);
}
문제를 쪼개서 할 수 있는 만큼까지만 짜는 능력을 기르는것이 중요하다.
1. 숫자 세개를 골라서 더하기
2. 더한 각각의 수가 소수인지 판단하기
풀이과정 내에서 총 5개의 과정에서 막혔다. 벽을느낌.