안녕하세요.
C#의 if-else 문은 조건에 따라 프로그램의 흐름을 제어하는 기본적인 구조입니다.
주어진 조건이 참(true)일 때는 특정 코드 블록을 실행하고, 그렇지 않으면 다른 코드를 실행하도록 할 수 있습니다.
# if-else 문 기본 구조
if (조건식)
{
// 조건식이 참(true)일 때 실행되는 코드
}
else
{
// 조건식이 거짓(false)일 때 실행되는 코드
}
- 조건식: if 다음에 오는 조건식이 참이면 if 블록의 코드가 실행되고, 그렇지 않으면 else 블록의 코드가 실행됩니다
# 예제: 짝수와 홀수 판별
using System;
class Program
{
static void Main()
{
int number = 5;
if (number % 2 == 0)
{
Console.WriteLine(number + " is even.");
}
else
{
Console.WriteLine(number + " is odd.");
}
}
}
이 예제에서, number가 2로 나누어 떨어지면 짝수로 간주하고 "is even."을 출력하며, 그렇지 않으면 "is odd."를 출력합니다. number가 5이므로 이 코드의 출력 결과는 "5 is odd."입니다.
# else if 문
여러 조건을 검사해야 할 때는 else if를 사용할 수 있습니다. 이 구조를 통해 여러 조건을 순차적으로 검사할 수 있습니다.
if (조건식1)
{
// 조건식1이 참일 때 실행되는 코드
}
else if (조건식2)
{
// 조건식1이 거짓이고, 조건식2가 참일 때 실행되는 코드
}
else
{
// 조건식1과 조건식2가 모두 거짓일 때 실행되는 코드
}
# 예제: 점수에 따른 등급 출력
using System;
class Program
{
static void Main()
{
int score = 85;
string grade;
if (score >= 90)
{
grade = "A";
}
else if (score >= 80)
{
grade = "B";
}
else if (score >= 70)
{
grade = "C";
}
else if (score >= 60)
{
grade = "D";
}
else
{
grade = "F";
}
Console.WriteLine("Grade: " + grade);
}
}
이 예제에서는 점수(score)에 따라 학점을 출력합니다.
score가 85이므로 조건 score >= 80이 참이 되고, 결과는 "Grade: B"가 출력됩니다.
# 중첩된 if-else 문
if-else 문은 중첩해서 사용할 수 있습니다. 이를 통해 조건에 따른 복잡한 로직을 구현할 수 있습니다.
using System;
class Program
{
static void Main()
{
int number = 15;
if (number > 0)
{
if (number % 2 == 0)
{
Console.WriteLine(number + " is a positive even number.");
}
else
{
Console.WriteLine(number + " is a positive odd number.");
}
}
else
{
Console.WriteLine(number + " is not a positive number.");
}
}
}
이 예제에서는 number가 양수인지, 그리고 짝수인지 홀수인지를 검사하여 해당하는 메시지를 출력합니다.
number가 15이므로, "15 is a positive odd number."가 출력됩니다.
# if문과 else if문의 차이점
- if: 각 if 조건이 독립적으로 평가됩니다.
여러 if 조건이 모두 참일 경우, 모든 if 블록이 실행됩니다.
- else if: 첫 번째 조건이 거짓일 때 다음 조건을 평가합니다.
따라서 여러 조건 중 하나만 참이더라도, 그 조건에 해당하는 코드만 실행되고 나머지 조건은 무시됩니다.
# 결론
C#의 if-else 문은 조건에 따라 프로그램의 흐름을 제어할 때 필수적인 도구입니다.
기본적인 if, else, else if를 조합하여 다양한 조건을 처리할 수 있으며, 상황에 따라 중첩된 if-else 문을 활용하여 복잡한 논리를 구현할 수도 있습니다. 이를 통해 프로그램의 실행 흐름을 세밀하게 제어할 수 있습니다.
추가적으로 if를 먼저 올리지않은 이유는 if,else는 세트이기때문입니다.
감사합니다.
(chat gpt 참고)
'Function > C#' 카테고리의 다른 글
C# 다양한 Split 문 사용법 정리 (0) | 2024.08.18 |
---|---|
C# 다양한 Switch문 사용법 정리 (0) | 2024.08.17 |
C# 다양한 for 문 사용법 정리 (0) | 2024.08.15 |
C# 데이터 형변환 (이론) (0) | 2024.08.14 |
C# 다양한 while 문 사용법 정리 (0) | 2024.08.14 |