학습
학습 경로
C# 콘솔 애플리케이션에 논리 추가(C#시작, 3부) - Training
이 학습 경로에서는 C# 논리 및 반복 문, 부울 식 및 코드 블록이 포함된 환경을 자세히 살펴봅니다.
if
문 및 루프 - 조건부 논리 자습서이 자습서에서는 변수를 검사하고 해당 변수에 따라 실행 경로를 변경하는 C# 코드를 작성하는 방법을 설명합니다. C# 코드를 작성하고 컴파일 및 실행 결과를 확인합니다. 이 자습서에는 C#의 분기 및 반복 구문을 탐색하는 일련의 단원이 포함되어 있습니다. 이러한 단원에서는 C# 언어의 기본 사항을 설명합니다.
팁
코드 조각 블록에 "실행" 단추가 포함된 경우 해당 단추는 대화형 창을 열거나 대화형 창의 기존 코드를 바꿉니다. 코드 조각에 "실행" 단추가 포함되지 않은 경우 코드를 복사하여 현재 대화형 창에 추가할 수 있습니다.
대화형 창에서 다음 코드를 실행합니다. 선택 실행
int a = 5;
int b = 6;
if (a + b > 10)
Console.WriteLine("The answer is greater than 10.");
합계가 10보다 작도록 b
선언을 수정합니다.
int b = 3;
실행 단추를 다시 선택합니다. 답변이 10보다 작기 때문에 아무것도 인쇄되지 않습니다. 당신이 테스트 중인 조건은 거짓입니다.
if
문에서 가능한 분기 중 하나(true 분기)만 작성했기 때문에 실행할 코드가 존재하지 않습니다.
팁
C# 또는 프로그래밍 언어를 탐색할 때 코드를 작성할 때 실수를 합니다. 컴파일러 해당 오류를 찾아 보고합니다. 출력에 오류 메시지가 포함된 경우 예제 코드와 대화형 창의 코드를 자세히 확인하여 해결 방법을 확인합니다. 이 연습은 C# 코드의 구조를 학습하는 데 도움이 됩니다.
이 첫 번째 샘플은 if
및 불리언 형식의 기능을 보여줍니다.
부울은 true
또는 false
두 값 중 하나를 가질 수 있는 변수입니다. C#은 부울 변수에 대한 특수 형식 bool
정의합니다.
if
문장은 bool
값을 확인합니다. 값이 true
일 때, if
다음 구문이 실행됩니다. 그렇지 않으면 건너뜁니다.
조건을 확인하고 해당 조건에 따라 문을 실행하는 이 프로세스는 강력합니다. 자세히 알아보겠습니다.
true 분기와 false 분기 모두에서 다른 코드를 실행하려면 조건이 false일 때 실행되는 else
분기를 만듭니다. 다음 코드를 사용해 보세요.
int a = 5;
int b = 3;
if (a + b > 10)
Console.WriteLine("The answer is greater than 10");
else
Console.WriteLine("The answer is not greater than 10");
else
키워드 다음 문은 테스트 중인 조건이 false
경우에만 실행됩니다.
if
및 else
부울 조건과 결합하면 필요한 모든 기능을 제공합니다.
중요
if
및 else
진술의 들여쓰기는 인간 독자를 위한 것입니다. C# 언어는 들여쓰기 또는 공백을 중요하게 처리하지 않습니다.
if
또는 else
키워드 다음 문은 조건에 따라 실행됩니다. 이 자습서의 모든 샘플은 문의 제어 흐름에 따라 줄을 들여쓰는 일반적인 방법을 따릅니다.
들여쓰기가 중요한 역할을 하지 않으므로, {
및 }
을 사용하여 둘 이상의 문이 조건부로 실행될 블록의 일부임을 나타내야 합니다. C# 프로그래머는 일반적으로 모든 if
및 else
절에서 이러한 중괄호를 사용합니다. 다음 예제는 만든 것과 동일합니다. 사용해 보세요.
int a = 5;
int b = 3;
if (a + b > 10)
{
Console.WriteLine("The answer is greater than 10");
}
else
{
Console.WriteLine("The answer is not greater than 10");
}
팁
이 자습서의 나머지 부분에서는 코드 예제들이 모두 통용되는 관례에 따라 중괄호를 포함합니다.
더 복잡한 조건을 테스트할 수 있습니다.
int a = 5;
int b = 3;
int c = 4;
if ((a + b + c > 10) && (a == b))
{
Console.WriteLine("The answer is greater than 10");
Console.WriteLine("And the first number is equal to the second");
}
else
{
Console.WriteLine("The answer is not greater than 10");
Console.WriteLine("Or the first number is not equal to the second");
}
==
기호는 의 동등성을확인합니다.
==
을 사용하면 a = 5
에서 본 동등성 테스트가 할당과 구분됩니다.
&&
"and"를 나타냅니다. 즉, true 분기에서 문을 실행하려면 두 조건이 모두 true여야 합니다. 또한 이러한 예제는 각 조건부 분기에 여러 문을 포함할 수 있음을 보여 줍니다. 단, {
과 }
안에 포함해야 합니다.
||
사용하여 "or"를 나타낼 수도 있습니다.
if ((a + b + c > 10) || (a == b))
a
, b
및 c
의 값을 수정하고, 탐색을 위해 &&
과 ||
간에 전환하세요.
&&
및 ||
연산자의 작동 방식을 더 잘 이해할 수 있습니다.
더 큰 프로그램을 만드는 또 다른 중요한 개념은 루프입니다. 루프를 사용하여 두 번 이상 실행하려는 문을 반복합니다. 대화형 창에서 다음 코드를 사용해 보세요.
int counter = 0;
while (counter < 10)
{
Console.WriteLine($"Hello World! The counter is {counter}");
counter++;
}
while
문은 조건을 확인하고 while
다음 문을 실행합니다. 조건이 false가 될 때까지 조건을 확인하고 해당 문을 실행하는 작업을 반복합니다.
이 예제에는 다른 하나의 새 연산자가 있습니다.
counter
변수 뒤의 ++
증분 연산자입니다. 카운터 값에 1을 추가하고 해당 값을 카운터 변수에 저장합니다.
중요
코드를 실행할 때 while
루프 조건이 false로 전환되는지 확인합니다. 그렇지 않으면 프로그램이 종료되지 않는 무한 루프 만듭니다. 코드를 실행하는 엔진의 시간이 초과되고 프로그램에서 출력이 표시되지 않기 때문에 이를 입증하지 말자.
while
루프는 while
다음 코드를 실행하기 전에 조건을 테스트합니다.
do
... while
루프는 먼저 코드를 실행한 다음 조건을 확인합니다. 다음과 같습니다.
int counter = 0;
do
{
Console.WriteLine($"Hello World! The counter is {counter}");
counter++;
} while (counter < 10);
이 do
루프와 이전 while
루프는 동일하게 작동합니다.
이제 마지막 루프 문으로 넘어가도록 하겠습니다.
C# 코드에 표시되는 또 다른 일반적인 루프 문은 for
루프입니다. 대화형 창에서 다음 코드를 사용해 보세요.
for (int counter = 0; counter < 10; counter++)
{
Console.WriteLine($"Hello World! The counter is {counter}");
}
위의 for
루프는 이미 사용한 while
루프 및 do
루프와 동일한 작업을 수행합니다.
for
문에는 작동 방식을 제어하는 세 가지 부분이 있습니다.
int counter = 0;
counter
루프 변수임을 선언하고 초기 값을 0
설정합니다.counter < 10
카운터 값이 10보다 작은 한 이 for
루프가 계속 실행되도록 선언합니다.counter++
for
문 다음에 블록을 실행한 후 루프 변수를 수정하는 방법을 지정합니다. 여기서는 블록이 실행될 때마다 counter
이 1씩 증가한다고 지정합니다.이러한 조건을 직접 실험해 보세요. 다음 변경 내용을 각각 시도합니다.
완료되면 학습한 내용을 사용하기 위해 코드를 직접 작성해 보겠습니다.
이 자습서에서는 다루지 않는 다른 루프 문인 foreach
문이 있습니다.
foreach
문은 항목 시퀀스의 모든 항목에 대해 해당 문을 반복합니다.
컬렉션에서 가장 자주 사용됩니다. 다음 자습서에서 다룹니다.
while
, do
또는 for
루프를 다른 루프 내에 중첩하여 외부 루프의 각 항목과 내부 루프의 각 항목의 조합을 사용하여 행렬을 만들 수 있습니다. 행과 열을 나타내는 영숫자 쌍 집합을 빌드해 보겠습니다.
하나의 for
루프는 행을 생성할 수 있습니다.
for (int row = 1; row < 11; row++)
{
Console.WriteLine($"The row is {row}");
}
또 다른 루프는 열을 생성할 수 있습니다.
for (char column = 'a'; column < 'k'; column++)
{
Console.WriteLine($"The column is {column}");
}
하나의 루프를 다른 루프 안에 중첩하여 쌍을 형성할 수 있습니다.
for (int row = 1; row < 11; row++)
{
for (char column = 'a'; column < 'k'; column++)
{
Console.WriteLine($"The cell is ({row}, {column})");
}
}
내부 루프의 전체 실행마다 외부 루프가 한 번 증가한다는 것을 알 수 있습니다. 행과 열 중첩을 반대로 바꾸고 변경 내용을 직접 확인합니다.
if
문과 루프 구문을 C# 언어로 확인했으므로 C# 코드를 작성하여 3으로 나눌 수 있는 모든 정수 1~20의 합계를 찾을 수 있는지 확인합니다. 다음은 몇 가지 힌트입니다.
%
연산자는 나누기 작업의 나머지 부분을 제공합니다.if
문은 숫자가 합계의 일부여야 하는지 확인하는 조건을 제공합니다.for
루프는 모든 숫자 1에서 20까지의 일련의 단계를 반복하는 데 도움이 될 수 있습니다.직접 시도해 보세요. 그런 다음 어떻게 했는지 확인합니다. 힌트로 말씀드리자면, 답은 63이 나와야 합니다.
이런 식으로 생각해 왔나요?
"분기 및 루프" 대화형 자습서를 완료했습니다. 목록 컬렉션 링크를 선택하여 다음 대화형 자습서를 시작하거나 .NET 사이트 방문하여 .NET SDK를 다운로드하고, 머신에 프로젝트를 만들고, 코딩을 계속할 수 있습니다. "다음 단계" 섹션에서는 이러한 자습서로 돌아갑니다.
다음 문서에서 이러한 개념에 대해 자세히 알아볼 수 있습니다.
.NET 피드백
.NET은(는) 오픈 소스 프로젝트입니다. 다음 링크를 선택하여 피드백을 제공해 주세요.
학습
학습 경로
C# 콘솔 애플리케이션에 논리 추가(C#시작, 3부) - Training
이 학습 경로에서는 C# 논리 및 반복 문, 부울 식 및 코드 블록이 포함된 환경을 자세히 살펴봅니다.
설명서
숫자 작업 - 소개 대화형 자습서 - A tour of C#
숫자 형식에 대한 이 자습서에서는 브라우저를 사용하여 C#을 대화형으로 학습합니다. C# 코드를 작성하고 브라우저에서 직접 코드를 컴파일하고 실행한 결과를 확인합니다.
데이터 컬렉션 - 소개 대화형 자습서 - A tour of C#
이 자습서에서는 브라우저를 사용하여 C# 컬렉션에 대해 알아봅니다. C# 코드를 작성하고 브라우저에서 직접 코드를 컴파일하고 실행한 결과를 확인합니다.
Hello World - 소개 대화형 자습서 - A tour of C#
이 자습서에서는 브라우저를 사용하여 C#을 대화형으로 학습합니다. C# 코드를 작성하고 브라우저에서 직접 코드를 컴파일하고 실행한 결과를 확인합니다.