-
패스트캠퍼스 챌린지 30일차챌린지 2021. 11. 30. 22:31
패스트 캠퍼스 30일차 강의 후기를 시작하겠습니다.
오늘의 강의는 드디어! 연산자를 벗어나서 듣는 강의네요. 프로그램을 제어하기 위해서 우리가 기초적으로 배워야 할 것들을 더 알아보는 시간을 가져봤는데요. 그 중에서 지역변수와 분기문에 대해서 오늘은 배워봤습니다. 그럼 어김없이 같이 한 번 알아봐야겠죠?
지역변수는 우리가 코드를 작성할 때 쓰는 {} (브레이스) 안에 있는 선언들인데요. {} 코드 블록 내부에 선언하는 코드들을 지역변수라고 합니다. 그리고 코드 블록 외부에서는 사용이 불가하다는 특징을 가지고 있습니다. 지역변수에 대한 이해를 돕기 위해서 강사님께서 사용하신 판서에 적힌 코드를 여기로 옮겨서 적어보면
Main(String[] args)
{
int a;
{
int b;
int a; //오류 발생 => 이미 선언된 변수
}
{
int b; //오류 발생하지 않음. 코드 블럭 내에 b에 대한 변수 존재 x
}
console.WriteLine("b " + b); //오류 발생 => b가 코드블럭 위보에 있음
}위의 오류발생이 왜 일어나는 것인지와 오류가 왜 발생하지 않은 것인지만 봐도 이해가 되시나요? 한 마디로 같은 브레이스 안에 존재하는 변수와 상위 브레이스에 존재하는 변수는 공유가 되지만 다른 브레이스 안에 있는 변수는 선언이 되지 않고 각기 다르게 본다고 생각하시면 됩니다. 쉽죠? 저도 위의 코드를 통해서 더욱 쉽게 배운 것 같습니다.
첫번째부터 마지막 사진까지 모두 분기문에 대한 실습이었는데요. 분기문에 대해 조금 설명해보자면 Branch라 불리고 우리가 아는 if문을 사용하는 것이 분기문입니다. 특정 조건을 이용해 코드를 다른 섹션으로 분리하는 특징을 지녔으며 if, if-else, if-else if-else와 같은 함수를 사용하고 중첩해서 사용이 가능하다고 합니다.
그럼 실습을 통해 어떻게 사용했는지 하나씩 보면 제일 위에 사진을 보면
bool isBool = false;
if(isBool) //조건문이 가지는 값은(true/false)
{
Console.WriteLine("isBool = {0}", isBool);
}
else
{
Console.WriteLine("isBool = {0}", isBool);
}위의 코드를 사용하여 isBool이 지닌 값을 출력하는 것이죠? isBool이 false였으므로 첫번째 if에서 값이 출력이 안됐지만 else를 통해 값이 출력이 되는 것을 아실 수 있습니다. 정말 if문을 사용하면 코드가 더 재밌어지는 것 같네요.
그럼 두번째 사진에서 사용한 코드가 무엇인지보고 그 코드를 통해서 무엇을 나타내었는지 볼까요?
Console.Write("정수를 입력하세요 = ");
string strNum = Console.ReadLine();
int a = int.Parse(strNum);
if(a>0)
{
Console.WriteLine("입력한 수는 양수!!");
}
else if(a<0)
{
Console.WriteLine("입력한 수는 음수!!");
}
else
{
Console.WriteLine("입력한 수는 0 이다.");
}첫번째 write와 readline을 통해 정수를 입력할 공간을 주고 입력한 값에 따라 if와 else if그리고 else가 발동되어 각기 써놓은 출력문을 출력하는 방식이죠? 우리가 정수 1을 입력하면 입력한 수는 양수!!가 출력이 되겠네요. 어렵지 않고 정말 재밌습니다.
마지막 실습은 무엇일까요? 코드를 통해 이해를 높여봅시다!
bool isA = false;
bool isB = true;
bool isC = true;
bool isD = false;
if(isA && isB) //false && true => false
{
Console.WriteLine("false && true => false");
}
if(isB && isC) //true && true => true
{
Console.WriteLine("true && true => true");
}
if(isC || isD) //true || false => true
{
Console.WriteLine("true || false => true");
}
if(2 > 1 && 3 < 4 || 1>2) //=> (true && true) => true || false => true
{
Console.WriteLine("true && false || false => true");
}bool을 통해 true/false의 값을 정할 수 있는 isA,B,C,D의 값이 있죠? 그 값들을 &&와 ||을 통해 연산하여 그 값을 출력하는 것인데요.
위에서부터 보면 isA와 isB는 false와 true인데 &&연산이기에 false가 입력이 되어 첫번째 출력문은 출력이 불가능해집니다. 두번째 출력문을 보면 isB와 isC가 true이므로 &&에서 두 값이 true일 때는 true가 연산되니까 두번째 출력은 가능해지죠!
세번째와 네번째 출력을 보면 isC와 isD는 true와 false의 연산인데 ||연산이므로 둘 중 하나의 값만 true여도 true가 출력되고 이를 통해 세번째 출력도 가능해집니다. 네번째 출력은 위의 변수를 사용하지않고 논리를 따진 것인데요. 2>1는 당연히 true이고 3<4도 당연히 true이므로 true||1>2의 연산만 남죠? 거기서 1>2는 false이지만 ||연산이므로 둘 중 하나의 값만 true면 true가 선언되죠. 이를 통해서! 네번째도 출력이 가능해지는 것을 아실 수 있습니다.
정말 재밌지 않나요? if문은 제가 프로그래밍에서 제일 좋아하면서 어려워하는 부분이지만 제일 흥미로운 부분임은 틀림이 없는 것 같습니다.
여러분 이로써 30일간 긴 여정 마무리 합니다. 물론 이걸로 끝이라면 아쉬움이 남겠지만 아직 최종미션도 남았고 무엇보다 제가 저만의 게임을 만드는 것도 지켜봐주셔야죠! 언제나 이 자리에 있을테니 여전히 찾아와주시길 바라겠습니다.
다시 찾아오겠습니다.
내일이 될지 모레가 될지 모르겠지만
다시 와서 여러분들에게 제가 배운 것을 알려주면서 복습하고 제 머리에 새기러 다시 찾아오겠습니다.
언제나 감사하고 좋은 일만 가득하시길 축복하겠습니다.#패스트캠퍼스 #패캠챌린지 #직장인인강 #직장인자기계발 #패스트캠퍼스후기 #게임 개발자 취업의 모든 것 초격차 패키지 Online
본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.
'챌린지' 카테고리의 다른 글
패스트캠퍼스 챌린지 최종미션 게임 개발자 취업의 모든 것 초격차 패키지 Online.강의 후기 (0) 2021.12.08 패스트캠퍼스 챌린지 29일차 (0) 2021.11.29 패스트캠퍼스 챌린지 28일차 (0) 2021.11.28 패스트캠퍼스 챌린지 27일차 (0) 2021.11.27 패스트캠퍼스 챌린지 26일차 (0) 2021.11.26