c++
명품 C++ 연습문제 3장 5번
케굴
2020. 4. 27. 21:53
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
class EvenRandom {
public:
EvenRandom() {
srand((unsigned int)time(NULL));
}
int next() {
int n = 1;
while (n % 2 == 1)
n = rand();
return n;
}
int nextlnRange(int low, int high) {
int n = 1;
while (n % 2 == 1)
n =(int)((float)rand() / (float)RAND_MAX *(float)(high+1) + low-1);
return n;
}
};
int main() {
EvenRandom r;
cout << " --0 에서 " << RAND_MAX << "까지의 랜덤 짝수 정수 10개-- " << endl;
for (int i = 0; i < 10; i++) {
int n = r.next();
cout << n << ' ';
}
cout << endl << endl << " -- 2에서" << "10까지의 랜덤 짝수 정수 10개 --" << endl;
for (int i = 0; i < 10; i++) {
int n = r.nextlnRange(2, 10);
cout << n << ' ';
}
cout << endl;
}