개인노트
문제 ) 주사위를 두개 던졌을 때 예측 불가능한 결과를 출력하는 프로그램을 작성해보자. 도전 3-4.c #include #include #include int main(void) { int i; srand((int)time(NULL)); for (i = 0; i < 2; i++) {printf("주사위 %d의 결과 : %d\n", i + 1, rand() % ((6 - 1) + 1) + 1); // ((최댓값-최솟값)+1)+최솟값} system("pause");}
rand함수를 이용하여 난수를 출력 하게되면, 그 값은 고정이 되어 난수가 아닌 의사 난수가 된다. 이러한 문제를 해결할 수 있도록 ANSI 표준에 srand라는 함수를 정의해놓았다. srand 함수는 rand 함수와 마찬가지로 stdlib.h를 선언 해주어야 한다. #include "stdlib.h" //srand함수 사용을 위한 선언void srand(unsigned int seed); //인자 값으로 시드를 받는다. #include #include "stdlib.h" int main(void) {int seed, i; printf("시드 값 입력 : ");scanf_s("%d", &seed); srand(seed); for (i = 0; i < 5; i++) {printf("난수 : %d\n", r..
문제 ) 난수(Random Number)를 출력해주는 rand함수를 이용하여 0이상 99이하의 난수를 5개 출력해보자.* rand 함수는 컴파일을 하게되면 난수가 고정 값이기 때문에 의사 난수 (pseudo-random number)라고 한다. 도전 3-3.c #include #include "stdlib.h" int main(void) {printf("0부터 %d까지의 랜덤한 수 출력\n\n", RAND_MAX); // RAND_MAX = rand 함수의 최대 값 int i=0; while (i != 5) {printf("%d\n", (rand()%(99-0)+1)+1); // (원하는 최댓값 + 원하는 최솟값)+최솟값)+최솟값)i++;} getchar();}