C#

C# 기초 - 여행을 떠나요

옹즤 2025. 4. 1. 17:20
  • 문제. 주어진 보기를 선택하면 해당하는 선택지에 맞는 메시지 출력해주세요.

어디로 여행을 가고 싶나요? 1.제주도   2.코타키나발루   3.싱가포르   4.태국
입력한 데이터가 숫자가 아니라면   “숫자가 아닙니다.”를 출력해주세요
1 ~ 4 가 아니라면  “1~4 의 숫자를 입력해주세요.” 를 출력해주세요
1 ~ 4 의 숫자라면
제주도 
“제주도는 한국의 섬으로 비교적 방문이 쉽고 다양한 놀거리/먹거리가 준비되어 있습니다.”
코타키나발루
“코타키나발루는 말레이시아 사바주의 주도로, 말레이시아 동부 보르네오섬 최대의 도시입니다.”
싱가포르
”싱가포르는 동남아시아, 말레이 반도의 끝에 위치한 섬나라이자 항구 도시로 이루어진 도시 국가입니다.”
태국
”태국은 중국문화, 말레이문화, 불교문화, 힌두문화, 이슬람 문화가 혼재되어 있습니다. 불교적인 모습을 많이 띄지만, 문화 자체는 색다르고 스펙트럼이 넓은 형태를 띄고 있어요.”

 

코드 작성

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
Console.WriteLine("어디로 여행을 가고 싶나요?");
Console.WriteLine("1. 제주도  2. 코타키나발루  3. 싱가포르  4. 태국");
 
string input = Console.ReadLine();
int num;
bool isInt = int.TryParse(input, out num);
 
switch (num) // 1 ~ 4를 선택했을 때 출력되는 대답 세팅
{
    case 1:
        Console.WriteLine("제주도는 한국의 섬으로 비교적 방문이 쉽고 다양한 놀거리/먹거리가 준비되어 있습니다.");
        break;
    case 2:
        Console.WriteLine("코타키나발루는 말레이시아 사바주의 주도로, 말레이시아 동부 보르네오섬 최대의 도시입니다.");
        break;
    case 3:
        Console.WriteLine("싱가포르는 동남아시아, 말레이 반도의 끝에 위치한 섬나라이자 항구 도시로 이루어진 도시 국가입니다.");
        break;
    case 4:
        Console.WriteLine("태국은 중국문화, 말레이문화, 불교문화, 힌두문화, 이슬람 문화가 혼재되어 있습니다. 불교적인 모습을 많이 띄지만, 문화 자체는 색다르고 스펙트럼이 넓은 형태를 띄고 있어요.");
        break;
}
if (isInt) // 숫자인지 문자인지 확인
{
    if (num > 4// 1 ~ 4인지 확인
    {
        Console.WriteLine("1 ~ 4 사이의 숫자를 입력해주세요.");
    }
}
else
{
    Console.WriteLine("숫자가 아닙니다.");
}
cs

바로 전 포스팅인 '대한민국의 수도는?' 의 코드와 완전히 동일하고 대답만 바꾸었다.

switch문이 적은 변수로 결과값을 내는 케이스에는 사용하기 매우 편리한 것 같다.

정답지는 이번에 똑같이 switch문을 사용했는데 새로 알게 된 부분은 switch문 내에 default라는 기능이 있다는 것이었다.

정답지 코드는 이렇다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
    
switch (num)
{
    case 1:
        Console.WriteLine("~");
        break;
    case 2:
        Console.WriteLine("~");
        break;
    case 3:
        Console.WriteLine("~");
        break;
    case 4:
        Console.WriteLine("~");
        break;
        
    default:
        Console.WriteLine("1~4 의 숫자를 입력해주세요.");
        break;
}
cs

default 기능은 if 조건문에서 else의 기능과 동일한 것으로 보인다.