string input = Console.ReadLine();
int num;
bool isNum = int.TryParse(input, out num);
bool b;
bool isBool = bool.TryParse(input, out b);
if (isNum)
{
if (num == 0) Console.WriteLine("입력받은 데이터는 " + num + " 입니다.");
else if (num % 2 == 0) Console.WriteLine(num + "은(는) 짝수입니다.");
else Console.WriteLine(num + "은(는) 홀수입니다.");
}
else if (isBool) Console.WriteLine("불리언입니다.");
else Console.WriteLine("문자열입니다.");
콘솔창에서 데이터 입력 받고 숫자인지 문자인지 불리언인지 판단하고 숫자라면 0, 짝수, 홀수를 구분해서 알려주는 간단한 프로그램 문제를 풀어보았다.
if문의 장점
조건 설정이 제한적이지 않다. 그렇기 때문에 다양한 상황, 복잡한 문제에 대해 다양한 조건을 설정하여 대응할 수 있다. 조건을 통해 프로그램의 흐름을 제어해서 원하는 동작을 구현할 수 있다.
if문의 단점
조건 설정에 따라 코드가 복잡해질 수 있다.
조건이 많아질수록 고려해야 할 경우의 수가 늘어나기 때문에 예상하지 못한 오류가 발생하기 쉽다.
switch-case문의 장점
각 case 별로 조건이 명확하게 정리되어 있기 때문에 코드 관리가 편해진다.
여러 조건을 비교할 때 일반적으로 성능이 좋다.
switch-case문의 단점
변수나 표현식의 값을 조건으로 설정하는 경우가 많다. 문제 해결에 필요한 조건 설정이 까다로운 경우 조건 설정이 제한적인 switch문으로는 해결할 수 없는 경우가 생긴다.
if문과 switch-case문의 장단점을 살펴보면, 경우에 따라 값이 명확하게 정해져있는 경우 switch-case문을 활용하고, 복잡하고 다양한 문제 상황을 해결하기 위해 다양한 조건을 필요로 할 때 if문을 활용한다.
[참고]
if문과 switch문의 차이와 언제 사용해야하는지?(장점, 단점, 용도, 개념과 예시코드).
2024년 8월 16일 접속.
[https://programmingdev.com/c-if문과-switch문의-차이와-언제-사용해야하는지장점-단점/]