내일배움캠프/걷기반

[내배캠][Unity_6기][과제] 4. 숫자 판별 프로그램

binary는 호남선 2024. 8. 31. 13:48

2. 숫자를 두번 입력받아서 두번 다 숫자인지 하나만 숫자인지 확인

  • 프로그램을 처음 시작하면 “첫번째 수를 입력해 주세요.” 메시지 출력
  • 메시지를 입력하고 Enter
  • “두번째 수를 입력해 주세요.” 메시지 출력
  • 메시지를 입력하고 Enter
    • 첫번째 수와 두번째 수 모두 숫자 라면 - “두 데이터는 모두 숫자입니다.”
    • 둘 중 하나만 숫자라면 - “하나의 데이터만 숫자입니다.”
    • 숫자가 하나도 없다면 - “두 데이터 모두 숫자가 아닙니다.”
Console.WriteLine("첫번째 수를 입력해주세요");
string input = Console.ReadLine();
int num1;
bool isNum1 = int.TryParse(input, out num1);

Console.WriteLine("두번째 수를 입력해주세요");
input = Console.ReadLine();
int num2;
bool isNum2 = int.TryParse(input, out num2);

if (isNum1 && isNum2)
    Console.WriteLine("두 데이터는 모두 숫자입니다.");
else if (isNum1 || isNum2)
    Console.WriteLine("하나의 데이터만 숫자입니다.");
else
    Console.WriteLine("두 데이터 모두 숫자가 아닙니다.");

- 두번째 조건에서 두 데이터가 모두 숫자가 아님을 확인할 지 하나만 숫자인 것을 확인할 지 고민함

- 입력되는 데이터가 첫번째는 숫자이고 두번째는 문자인 경우 위 코드가 더 효율적이라고 판단

/* 비교 */

// isNum1이 true면 isNum2는 검사 X
else if (isNum1 || isNum2)
    Console.WriteLine("하나의 데이터만 숫자입니다.");
else
    Console.WriteLine("두 데이터 모두 숫자가 아닙니다.");
    
// isNum1이 false여도 isNum2를 검사
else if (!isNum1 && !isNum2)
    Console.WriteLine("두 데이터 모두 숫자가 아닙니다.");
else
    Console.WriteLine("하나의 데이터만 숫자입니다.");