C++ 공부빵야

조건문과 난수

당근먹는하니 2021. 12. 15. 19:56
728x90
반응형

12/14

[구구단 숙제]

if (0 == iNumber%2) 

else{홀수입니다} <안 한 부분

if(0==iCount)

{기회를 다 소진하셨습니다}

왜 이렇게 행간이 넓지

 

[do while]

처음엔 조건문이 없고 일단 한 번 무조건 실행, 그 뒤 뒤의 조건식에 맞춰 반복할지 말지 결정하는 문법

do

{

} while(true) ; 

짝수값만 더하는 프로그램

int iInuput = 0;
int iSum = 0;
do
{
cout << "숫자를 입력하세요."<< endl;
cin >> iInput

if(0! == iInput%2)
continue; //(다시 돌아감)
iSum += iInput;
}while (-1 != iInput); //< -1 아니면 루프, -1 입력시 루프 종료
cout << "모두 더한 값 : " << iSum << endl;

결혼은 밝은 사람과... 특히 어른에게 밝은 사람

내성적이고 진중한 것도 좋지만 밝은!! 34전에 해라... 남학생에겐 소개팅 꿀팁이 있다. ㅎ

 

[for] 처음부터 얼마나 반복할지 정해

for(초기화식;조건식;증감식)

실행할 코드

}

  for( ; ;) <tru 상태로 본다

for 밖의 i, for 안의 i

for 안의 i는 { } 지역 안에서만 사용하는 것

 

for 초기화식은 최초 한 번만 수행한다.              +전위연산권장

초기화식 → 조건식 → 코드실행 → 증감 → (다시)조건식 .... 

 

[다중 for] while문 안에 while 가능 for가능 ...

for <- 여기에서의 반복횟수 곱하기

 {for <- 여기에서의 반복횟수          = 총 반복횟수

 

 

[난수] 무작위 

#include<time.h>

rand()함수 0~32767 범위 사이의 int 값 나옴. 값을 무작위로 추출

RAND_MAX     0x7ff    → (f하나가 1111) 0111 1111 1111 1111  → 32767(short형의 양수값 범위)

난수가 발생할 때 seed값 참고하여 난수표에 해당하는 값을 출력한다. 아무런 설정을 안 했다면 default 1 seed값을 사용한다.

srand() 함수 : seed 값을 직접 넣어서 난수표를 바꿔주는 함수

srand(rand()%999); → 0~998범위     < 실행할 때 마다 값이 변하진 않는다. 

seed값 변경 위해서는 계속해서 변화하는 숫자가 필요하다. 그것이 시간.

time() 함수 : 현재 시간을 초단위로 불러온다. ()안에 time_t 자료형 변수

좋은 형태의 난수는 아니지만...

srand(unsigned(time(NULL))); 

 

 

system("cls"); <이전 출력한 거 지운 후 종료

system("pause"); < 대기

728x90
반응형