더북(TheBook)

31.3 개수 구하기: COUNT 알고리즘

개수(COUNT) 알고리즘은 조건에 맞는 자료 개수(횟수, 건수)를 구합니다. 다른 표현 방식으로 조건에 맞는 레코드 횟수를 구하는 데 사용하는 구문입니다.

 

개수 알고리즘 사용하기

주어진 범위의 데이터 중 주어진 조건을 만족하는 데이터 개수를 구하는 COUNT 알고리즘을 적용해 보는 예제를 만들어 봅시다. 다음 내용을 입력한 후 실행해 보세요.

1부터 1000까지 정수 중 13의 배수 개수: CountAlgorithm.cs

using System;
using System.Linq;

class CountAlgorithm
{
    static void Main()
    {
        //① 입력: 1부터 1000까지 데이터
        var numbers = Enumerable.Range(1, 1_000).ToArray();
        int count = default; //개수를 저장할 변수는 0으로 초기화

        //② 처리: 개수 알고리즘 영역: 주어진 범위에 주어진 조건(필터링)
        for (int i = 0; i < numbers.Length; i++)
        {
            if (numbers[i] % 13 == 0)
            {
                count++; //COUNT
            }
        }

        //③ 출력
        Console.WriteLine($"1부터 1000까지 정수 중 13의 배수 개수 : {count}");
    }
}

실행 결과

1부터 1000까지 정수 중 13의 배수 개수 : 76

개수 알고리즘은 간단히 증감 연산자를 사용하여 카운트를 세는 방법으로 구할 수 있습니다. 카운트 알고리즘도 LINQ를 사용하면 다음과 같이 간단히 표현할 수 있습니다.

> Enumerable.Range(1, 1000).Where(n => n % 13 == 0).Count()
76
> Enumerable.Range(1, 1000).Count(n => n % 13 == 0)
76
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.