HackerRank/Algorithms

[HackerRank C] Warmup : Plus Minus

ruming 2021. 7. 28. 02:08

조건

 

배열 안에서 1. 양수의 비율, 2. 음수의 비율, 3. 0의 비율을 각각 출력하면 된다.

 

코드

void plusMinus(int arr_count, int* arr) {
    int p=0, m=0, z=0, i;
    for(i=0; i<arr_count; i++){
        if(arr[i]>0)    p++;
        else if(arr[i]==0)  z++;
        else    m++;
    }
    printf("%lf\n%lf\n%lf", (double)p/arr_count, (double)m/arr_count, (double)z/arr_count);
}

먼저 양수, 음수, 0의 개수를 저장할 p, m, z 변수를 각각 선언했다.

if문으로 조건에 따라 개수를 나눈 뒤, 자료형에 주의해 출력하면 된다.

변수를 int형을 선언했으나 소수점 출력이 가능해야 하므로, cast연산자로 비율을 계산하고 lf로 출력해주었다.