- random 변수 v5를 생성하고 일반 변수 v4의 값을 입력한 후 v4가 v5와 값이 같으면 플래그를 출력한다.
실행
>> rand 함수에 대한 이해가 필요한 문제이다.
- rand 함수 int rand(void) :랜덤한 숫자를 반환하는 함수로, stdlib.h 헤더파일에 포함되는 함수이다. 하지만, srand함수와 time 함수 없이 rand 함수만 사용하게 되면 일정한 순서의 숫자들이 반환된다.
- srand 함수 void srand(unsigned int seed) : 매개변수로 전달되는 seed를 이용해 rand 함수에 사용될 수를 초기화한다. 즉, seed 값에 의해 rand 함수의 결과값이 달라지는 것이다.
- time 함수 time_t time(time_t* timer) UCT 기준 1970.01.01.0:0:0를 기준으로 경과된 시간을 초로 반환하는 함수이다. time 함수의 리턴값을 srand 함수의 인자로 주면 seed의 값이 시간마다 달라지기 때문에 따로 지정해주지 않아도 랜덤한 값이 나오게 된다.
[출처] https://blockdmask.tistory.com/308
>> random을 실행했을 때 전달되는 seed와 같은 seed를 가진 상태에서 rand()함수로 랜덤한 값을 만들어내면 같은 값이 나오게 될 것이다!!!