코딩놀이: python C C++

[C, 프로그래머스] lv1: 약수의 개수와 덧셈 , div0 에러

jiheek 2022. 6. 24. 14:58

https://programmers.co.kr/learn/courses/30/lessons/77884

 

코딩테스트 연습 - 약수의 개수와 덧셈

두 정수 left와 right가 매개변수로 주어집니다. left부터 right까지의 모든 수들 중에서, 약수의 개수가 짝수인 수는 더하고, 약수의 개수가 홀수인 수는 뺀 수를 return 하도록 solution 함수를 완성해주

programmers.co.kr

#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>

int solution(int left, int right) {
    int count;
    int answer = 0;
    
    for(int num = left; num <= right; num++){
        count = 0;
        for(int div = 1; div<=num; div++){
            if(num % div == 0)
                count++;
        }
        if(count%2 ==0)
            answer += num;
        else
            answer -= num;
        }

    return answer;
}

 

 

signal: floating point exception (core dumped)

0으로 나눌 경우 생기는 에러이다.

int div=0때문에 에러가 생겼었고, div=1로 고쳐주니 해결되었다!