🟩 지역변수
- {} 코드 블록 내부에 선언
- 코드 블록 외부에서는 사용 불가
🟩 조건문(분기문)
- 특정 조건을 이용하여 코드를 다른 섹션으로 분기한다
- if, if~else, if~else if~else
- switch (case, break, default)
- 중첩으로 사용가능
🟩 반복문
- for(초기식, 조건식, 증감식)
- while(조건식)
- do ~ while(조건식) : 무조건 한 번은 실행된다.
- 중첩 for
- foreach
- for문과 동일하게 작동
- 차후에 배열, collection에서 사용
🟩 무한 반복
- while(true)
- for(;;)
🟩 점프문
- 무한루프 제어
- break
- continue
goto
🌟 숫자 달리기
using System;
using System.Threading;
namespace _002_CheckPoint01 {
internal class Program {
static void Main(string[] args) {
Random rnd = new Random();
const string LINE = "----------------------------------";
const int END_LINE = 30;
const int DELAY_TIME = 200;
int runA = 0, runB = 0, runC = 0, runD = 0;
while (true) {
Thread.Sleep(DELAY_TIME); // 딜레이 (작을수록 빨라진다)
Console.Clear(); // 화면 지우기
++runA;
++runB;
++runC;
++runD;
int rndNum = rnd.Next(0, 4); // 0 ~ 3
switch (rndNum) {
case 0:
++runA;
break;
case 1:
++runB;
break;
case 2:
++runC;
break;
case 3:
++runD;
break;
default:
break;
}
Console.WriteLine(LINE);
for (int i = 0; i < runA; ++i) {
Console.Write(" ");
}
Console.Write("1");
for(int i = END_LINE - runA; i >= 0; --i) {
Console.Write(" ");
}
Console.WriteLine("|");
for (int i = 0; i < runB; ++i) {
Console.Write(" ");
}
Console.Write("2");
for (int i = END_LINE - runB; i >= 0; --i) {
Console.Write(" ");
}
Console.WriteLine("|");
for (int i = 0; i < runC; ++i) {
Console.Write(" ");
}
Console.Write("3");
for (int i = END_LINE - runC; i >= 0; --i) {
Console.Write(" ");
}
Console.WriteLine("|");
for (int i = 0; i < runD; ++i) {
Console.Write(" ");
}
Console.Write("4");
for (int i = END_LINE - runD; i >= 0; --i) {
Console.Write(" ");
}
Console.WriteLine("|");
Console.WriteLine(LINE);
if(runA >= END_LINE || runB >= END_LINE || runC >= END_LINE || runD >= END_LINE) {
int runNum = 0;
string strResult = "결과 : {0} 선수 우승 !!!! ";
if(runA >= END_LINE) {
runNum = 1;
}
else if(runB >= END_LINE) {
runNum = 2;
}
else if (runB >= END_LINE) {
runNum = 3;
}
else {
runNum = 4;
}
Console.WriteLine(strResult, runNum);
Console.Write("다시하려면 0번 입력 : ");
if (int.Parse(Console.ReadLine()) == 0) {
runA = 0;
runB = 0;
runC = 0;
runD = 0;
}
else {
break;
}
}
}
}
}
}
'👩💻 프로그래밍 > 🍕 C#' 카테고리의 다른 글
[C#] 연산자 정리 (0) | 2024.05.08 |
---|---|
[C#] 기본 데이터2 - 형 변환, 값 형식 vs 참조형, 박싱 vs 언박싱 (0) | 2024.05.07 |
[C#] 기본 데이터1 - 변수, object, enum, nullable, var, const (0) | 2024.05.07 |
[C#] 닷넷프레임워크와 C# 언어 (0) | 2024.05.05 |