게임개발/C#

if/ else if 문

루피섭 2024. 1. 9. 17:07

목차

  • if문 설명 / 구성 / 예시
  • esle if문 설명 / 구성 / 예시
  • 내가 사용한 switch문에 대한 예시
if문
   if ( 조건 )   ←
   {
        실행 내용
   }

 

if문은 조건을 체크해서 만족하면 중괄호 {} 안에 있는 내용을 실행 시킵니다.

조건을 만족하지 않으면 실행하지 않습니다.

 

예제)

if(3 > 1)
{
		[조건을 만족했기에 실행합니다]
		Console.WriteLine("3은 1보다 크다!");
}

 

 

 

else if 문
   if ( 조건 )
   {

   }
   else  if (추가 조건) ← 
   {
        실행 내용
   }

 

if문을 만족하지 못했을 때  "else if" 로다시 조건을 체크합니다.

if 와 else if 가 있을 때 둘 중 하나만 실행됩니다.

 

예제)

int x = 20;

[x가 10보다 큰지 체크했습니다.  - O]
if(x > 10)
{
		[조건을 맞아서 if문 안에 내용을 실행합니다]
		Console.WriteLine("x는 10보다 크다!");
}
else if(x > 5)
{
        [조건을 맞아서 if문 안에 내용을 실행하여 elseif는 실행하지 않습니다.]
		Console.WriteLine("x는 10 보다는 작지만 5보다는 크다");
}

 

 

If문을 아이템 구매로직에 더한다면?

 

   if (selectedItem.IsPurchased)   
   {
       Console.WriteLine("이미 구매한 아이템입니다.");  
   }
   else if (_player.Gold >= selectedItem.Gold) 
   {
       selectedItem.IsPurchased = true; 

       _player.Gold -= selectedItem.Gold; 

       Console.WriteLine($"\n{selectedItem.Name} 구매를 완료했습니다.");
   }
   else 
   {
       Console.WriteLine("Gold가 부족합니다.");
   }
  
   if-
   [만약 선택한 아이템이.이미 구매한아이템이라면]
   ["이미 구매한 아이템입니다."라고 띄워주고]
   
   else if-
   [만약 구매한 아이템이 아니고, 보유골드 > 아이템의 가격이면]
   [선택한 아이템.구매한아이템함수를 = 참 으로 바꿔주고]
   [플레이어 골드를 선택한 아이템의 가격으로 빼주고]
   [구매를 완료했습니다."를 출력해준다]
   
   else - 
   [이미 구매한 아이템도 아니고, 보유골드 > 아이템도 아니라면]
   [남은건 골드가 없는 경우이기 때문에 "Gold가 부족합니다." 출력]