게임개발/C#

24-09-19 C# 프로그래밍 기초 01

몰록 2024. 9. 19. 21:07
더보기

visual studio 내에서 F9를 눌러 코드가 멈출 부분을 설정하고 디버그할때 사용할수 있다. 코드를 한칸 진행시키는건 F10

 

한번에 코드를 주석처리하는법은 Ctrl + K , C 주석을 푸는 방법은 Ctrl + K, U

 

C#문법 종합반 1주차와 2주차를 완강했다.

 

1주차의 내용은 완전 기본적인 내용 복습하는 느낌이였지만 숙제에서부터 좀 어려워지기 시작했다

 

문제1 : 사용자로부터 입력 받기 

이 문제는 이름과 나이를 입력받고 출력하는 간단한 코드를 작성하는 것이다.

 

단순히 Console.WriteLine()과 Console.ReadLine()을 사용해서 풀이했다.

더보기

Console.WriteLine("이름을 입력해주세요");
string name = Console.ReadLine();
Console.WriteLine($"안녕하세요 {name}씨! 나이는 어떻게 되시죠?");
string age = Console.ReadLine();
Console.WriteLine($"당신의 이름은 {name} 이고 나이는 {age}세 입니다.");

 

문제2 : 단순한 사칙연산 계산기 만들기

두 수를 입력받고 사칙연산의 결과를 출력하는 문제인데..

Console.ReadLine()으로 값을 입력받아 int로 변환하고(Console로 입력받은 값은 기본적으로 String, 문자열 값이기 때문)

switch case문을 통해 사칙연산중에 뭘 실행시킬지 선택하는것을 구현했다.

 

더보기

Console.WriteLine("첫번째 수를 입력해주세요");
int num1 = int.Parse(Console.ReadLine());
Console.WriteLine("두번째 수를 입력해주세요");
int num2 = int.Parse(Console.ReadLine());

Console.WriteLine("무엇을 연산 하시겠습니까?");
Console.WriteLine("1. 덧셈  2. 뺄셈  3. 곱셈  4. 나눗셈");
int operation = int.Parse(Console.ReadLine());

switch (operation)
{
    case 1:
        int result1 = num1 + num2;
        Console.WriteLine($"{num1} 더하기 {num2} 는 {result1} 입니다.");
            break;
    case 2:
        int result2 = num1 - num2;
        Console.WriteLine($"{num1} 빼기 {num2} 는 {result2} 입니다");
            break;
    case 3:
        int result3 = num1 * num2;
        Console.WriteLine($"{num1} 곱하기 {num2} 는 {result3} 입니다");
            break;
    case 4:
        int result4 = num1 / num2;
        Console.WriteLine($"{num1} 나누기 {num2} 는 {result4} 입니다");
            break;
}

 

 

 

문제3 : 온도 변환기 만들기

섭씨온도를 화씨온도로 변환해주는 프로그램을 작성해야한다.

 

 

구글 검색 으로 섭씨를 화씨로 변환하는 공식을 알수 있었다. 다만 9/5는 그대로 C#에 넣기는 곤란해서 1.8로 해줬다.

 

더보기

            Console.WriteLine("화씨로 변환할 섭씨온도 값을 입력해주세요");
            float num = float.Parse(Console.ReadLine());

            float result = (num * 1.8f) + 32f;
            Console.WriteLine($"섭씨 {num} 도는 화씨로 {result} 도 입니다.");

 

구글 피셜로 정답이다.

 

문제4 : BMI 계산기 만들기

검색 결과 BMI의 공식은 "신장 나누기 몸무게의 제곱" 이라고 한다.

 

더보기

Console.WriteLine("몸무게를 입력해주세요");
float weight = float.Parse(Console.ReadLine());

Console.WriteLine("키를 입력해주세요");
float hight = float.Parse(Console.ReadLine());

float BMI = weight / (hight * hight);

Console.WriteLine($"당신의 BMI 는 {BMI} 입니다.");

 

하지만 그대로 실행하면 

 

이렇게 상이하게 나온다. 알고보니 신장으로 나누기 전에 신장의 값에 100등분을 해서 가령 키가 184라면 1.84 의 값으로 만들어야 한다고 한다.

 

더보기

onsole.WriteLine("몸무게를 입력해주세요");
            float weight = float.Parse(Console.ReadLine());

            Console.WriteLine("키를 입력해주세요");
            float hight = float.Parse(Console.ReadLine()) / 100f ;

            float BMI = weight / (hight * hight);

            Console.WriteLine($"당신의 BMI 는 {BMI} 입니다.");

수정해주니 잘 나온다. 네이버 피셜 정답!

 

 

 

여기까지는 어렵지 않았다.. 허나 2주차 강의를 듣고 숙제를 하려니까 갑자기 수준이 높아져버렸다.

 

문제 1 : 숫자 맞추기 게임 만들기 

여기까지도사실은 어렵지 않은게, 강의에서 이미 짚고 넘어가줬기 때문이다.

단순히 랜덤 값을 만들어주고, 입력한 값이 랜덤 값보다 크거나 작을때 그렇게 출력해주도록 하면 된다.

더보기

int targetNum = new Random().Next(1, 101);
int guess = 0;
int count = 0;
Console.WriteLine("1부터 100사이에 숫자를 맞춰보세요.");

while(guess != targetNum)
{
    Console.WriteLine("추측한 숫자를 입력하세요: ");
    guess = int.Parse(Console.ReadLine());
    count++;

    if(guess < targetNum)
    {
        Console.WriteLine("업!");
    }
    else if (guess > targetNum)
    {
        Console.WriteLine("다운!");
    }
    else
    {
        Console.WriteLine("정답!!!");
        Console.WriteLine("시도한 횟수 : " + count);
    }
}

 

문제 2 : 틱택토 게임 만들기  

이부분이 관건이다. 갑자기 수준이 확 올라가져버린것같다.

 

구글링과 AI의 힘으로 재출까지는 완료했지만, 내 완전한 이해와 함께 작성한 코드가 아니기때문에 TIL에는

기제 할수없다.

 

주말에 천천히 이해해보면서 넘어가야겠다.(형 도와줘)

 

'게임개발 > C#' 카테고리의 다른 글

24-09-21 C# 프로그래밍 기초 02.5  (0) 2024.09.21
24-09-20 C# 프로그래밍 기초 02  (0) 2024.09.20
28-08-16 코딩실습과정 ++  (0) 2024.08.16
24-08-15 코딩실습과정+  (0) 2024.08.16
24-08-14 코딩실습과정  (0) 2024.08.14