C#

백준 C# 5086 문제 풀이

psb08 2024. 10. 9. 09:46
728x90

문제 링크 : https://www.acmicpc.net/problem/5086

목차

1 설명

 

2 내 코드

 

3 문제 풀이 해석 내용

 

4 실행 결과

 

설명

백준 브론즈 3 문제 입니다.

 

 

내 코드

string[] input;

while (true)
{
    input = Console.ReadLine().Split();

    if (int.Parse(input[0]) == 0 && int.Parse(input[1]) == 0)
    {
        break;
    }

    else if (int.Parse(input[1]) % int.Parse(input[0]) == 0)
    {
        Console.WriteLine("factor");
    }

    else if (int.Parse(input[0]) % int.Parse(input[1]) == 0)
    {
        Console.WriteLine("multiple");
    }

    else
    {
        Console.WriteLine("neither");
    }

}

문제 풀이 해석 내용

입력 처리

string[] input;

while (true)
{
    input = Console.ReadLine().Split();

사용자로 부터 입력을 받고, 공백으로 구분하여 문자열 배열 input에 저장합니다.

이 과정은 while (true)로 계속 반복됩니다.

 

 

종료 조건

if (int.Parse(input[0]) == 0 && int.Parse(input[1]) == 0)
{
    break;
}

입력된 두 정수가 모두 0이면 루프를 종료합니다.

 

 

관계 판단

 

1.

else if (int.Parse(input[1]) % int.Parse(input[0]) == 0)
{
    Console.WriteLine("factor");
}

두 번째 정수가 첫 번째 정수로 나누어 떨어진다면 factor를 출력합니다.

즉, 첫 번째 정수가 두 번째 정수의 인수임을 나타냅니다.

 

 

2.

else if (int.Parse(input[0]) % int.Parse(input[1]) == 0)
{
    Console.WriteLine("multiple");
}

첫 번째 정수가 두 번째 정수로 나누어 떨어지면 multiple을 출력합니다.

즉, 두 번째 정수가 첫 번째 정수의 배수임을 나타냅니다.

 

 

3.

else
{
    Console.WriteLine("neither");
}

위의 두 조건을 모두 만족하지 않으면 neither를 출력합니다.

즉, 두 숫자 사이에 인수나 배수 관계가 없다는 것을 의미합니다.

 

 

실행 결과

실행 결과

 

728x90

'C#' 카테고리의 다른 글

백준 C# 2563 문제 풀이  (0) 2024.10.11
백준 C# 2501 문제 풀이  (0) 2024.10.10
백준 C# 2869 문제 풀이  (0) 2024.10.08
백준 C# 1193 문제 풀이  (0) 2024.10.07
백준 C# 2292 문제 풀이  (0) 2024.10.06