Canvas of Bliss

#include <iostream>

using namespace std;

void main()
{
// 반복문
// 반복되는 코드를 효과적으로 처리할 수 있는 문법
// ##1. while문
// 조건을 비교하여 참일 경우 { 여기부터 } 여기까지 코드 블록을 수행한다!
// } 여기까지 수행 후 다시 조건을 비교한다!
// 조건이 참일 경우 { 여기부터 } 여기까지를 다시 수행한다.
// -> 탈출 조건을 만족할 때 까지!!
/*
while ( 조건 )
{ // 여기부터

코드 블록

} // 여기까지
*/

//// 조건식의 조건이 계속 참일 경우 무한 루프에 빠질 수 있다!!
//int iA = 0;
//while (true)
//{
// ++iA;
// cout << iA << endl;
//}


//// 무한 루프 탈출 방법
//// ##1. 조건식의 조건
//int iA = 0;
//while (10 > iA)
//{
// ++iA;
// cout << iA << endl;
//}


//// ##2. break를 이용한 탈출
//int iA = 0;

//while (true)
//{
// if (10 < iA)
// break;

// ++iA;
// cout << iA << endl;
//}



//// 문제) 구구단 2 단 출력하기
//// 2 * 1 = 2
//// 2 * 2 = 4
//// 2 * 3 = 6
//int iGob = 1;
//while (true)
//{
// if (9 < iGob)
// break;

// cout << 2 << " * " << iGob << " = " << 2 * iGob << endl; 
// ++iGob;
//}



// 문제) 구구단 2 ~ 9단 출력하기
int iDan = 2, iGob = 1;

while (10 > iDan)
{
cout << iDan << " * " << iGob << " = " << iDan * iGob << endl;
++iGob;

if (9 < iGob)
{
++iDan;
iGob = 1;
cout << "========================" << endl;
}
}


}

 

#include <iostream>

using namespace std;

void main()
{
// 비교 연산자
// 두 피연산자를 비교하여 참 또는 거짓을 반환한다!
// <, >, <=, >=, ==, !=



// ##2. do while
// 코드 블록을 1회 수행 후 조건을 비교하여 추가 수행 여부를 결정한다!
/*
do
{

코드 블록

}while( 조건 )
*/

//// 값을 입력하고 -1을 누르면 지금까지 입력한 값들의 합이 출력는 프로그램
//int iInput = 0, iRes = 0;
//do 
//{
// iRes += iInput;
// cin >> iInput;
//} while (-1 != iInput);

//cout << "최종 결과: " << iRes << endl;



// continue
// 반복문 내부에서만 사용할 수 있는 명령어
// 반복문 코드 블록을 수행 중 continue를 만나면 코드의 흐름을 } 여기까지로 바로 보내버린다!
// -> continue 밑의 코드라인들은 수행하지 않고 다시 조건을 비교하겠다!

int iInput = 0, iRes = 0;
do 
{
cin >> iInput;

if( (iInput % 2) != 0)
continue;

iRes += iInput;
} while (-1 != iInput);

cout << "최종 결과: " << iRes << endl;



// while과 do while의 차이점
// while
// 조건을 우선 비교하여 코드 블록 수행을 결정한다!

// do while
// 코드 블록을 1회 수행 후 조건을 비교하여 추가 수행 여부를 결정한다!



}

 

#include <iostream>
#include <time.h>

using namespace std;

void main()
{
//// 난수 (random)
//// 순서나 규칙이 없는 랜덤한 수

//// 난수 추출
//// 함수를 이용하여 난수를 얻어 온다!
//// rand()
//// 단, 프로그램을 실행할 때마다 동일한 결과가 계속해서 나온다!!
//// 이는 난수가 추출될 때 seed라는 값을 참고하여 난수 테이블의 값들을 순차적으로 추출하기 때문이다.
//int iA = rand();
//int iB = rand();
//int iC = rand();

//cout << iA << endl;
//cout << iB << endl;
//cout << iC << endl;


//// seed값 변경
//// seed 변경을 위한 함수
//// srand()
//// 사용자가 seed값을 임의로 변경하지 않으면 기본 1의 값을 가진다.
//srand(10);

//int iA = rand();
//int iB = rand();
//int iC = rand();

//cout << iA << endl;
//cout << iB << endl;
//cout << iC << endl;


// 프로그램을 실행할 때마다 seed의 값이 자동으로 바뀌어야한다!
// -> 고정된 seed값을 사용하면 안된다!!!
// 고정되지 않고 변하는 값을 seed 값으로 사용하자!
// -> 시간이다!!
// 하루, 한달, 1년 단위로 초기화를 하지 않고 계속해서 누적해 나가자!
// 컴퓨터는 1970년 1월 1일 부터 초 단위로 시간을 누적하고 있다!
// -> 컴퓨터한테 누적한 시간을 달라고 요청하고, 이 값을 seed로 전달하면
// -> 프로그램을 실행할 때 마다 바뀐 seed를 사용할 수 있다!!

//// 누적된 시간을 얻어오는 방법
//// 함수를 이용한다!
//// time()
//// 단, time 함수를 사용하기 위해서는 #include <time.h> 추가가 필요하다!
//cout << time(0) << endl;


//srand(unsigned(time(NULL)));

//int iA = rand();
//int iB = rand();
//int iC = rand();

//cout << iA << endl;
//cout << iB << endl;
//cout << iC << endl;


//// 주의 사항
//// srand는 최초 1회만 작성하면 된다!

//srand(unsigned(time(NULL)));

//while (true)
//{
// //srand(unsigned(time(NULL)));

// int iA = rand();
// cout << iA << endl;
//}


// system()
// ##1. "cls"
// -> 콘솔창에 출력된 모든 문자를 지운다.

// ##2. "pause"
// -> 프로그램 흐름을 일시 정지 시킨다!

cout << 1 << endl;
cout << 2 << endl;
system("pause");
system("cls");
cout << 3 << endl;
cout << 4 << endl;
cout << 5 << endl;

}

'개발 공부 > C++' 카테고리의 다른 글

C++ 가위바위보 컴퓨터 대결  (0) 2020.10.07
C++ 자판기 프로그램  (0) 2020.10.07
C++ 성적관리 프로그램 2  (0) 2020.10.07
C++ 형변환, if, switch, goto, 자판기 프로그램  (0) 2020.10.07
C++ 성적관리 프로그램  (0) 2020.10.07

이 글을 공유합시다

facebook twitter kakaoTalk kakaostory naver band