//
// main.cpp
// Custom Randomize
//
// Created by Himanshu on 27/11/22.
//
#include <iostream>
using namespace std;
int randomize() {
int x = rand()%5 + 1;
return x;
}
int customRandomize() {
int N = 5*randomize() + randomize() - 5;
while (N > 7) {
N = 5*randomize() + randomize() - 5;
}
return N;
}
//This method is slightly more efficient
int customRandomize2 () {
int N = 5*randomize() + randomize() - 5;
while (N > 21) {
N = 5*randomize() + randomize() - 5;
}
return ((N%7) + 1);
}
int main () {
int x, y;
cout<<"Randomly generated integers between 1 and 7:"<<endl;
for (int i=0; i<5; i++) {
x = customRandomize();
cout<<x<<endl;
y = customRandomize2();
cout<<y<<endl;
}
return 0;
}
Ly8KLy8gIG1haW4uY3BwCi8vICBDdXN0b20gUmFuZG9taXplCi8vCi8vICBDcmVhdGVkIGJ5IEhpbWFuc2h1IG9uIDI3LzExLzIyLgovLwoKI2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IHJhbmRvbWl6ZSgpIHsKICAgIGludCB4ID0gcmFuZCgpJTUgKyAxOwogICAgcmV0dXJuIHg7Cn0KCmludCBjdXN0b21SYW5kb21pemUoKSB7CiAgICBpbnQgTiA9IDUqcmFuZG9taXplKCkgKyByYW5kb21pemUoKSAtIDU7CiAgICAKICAgIHdoaWxlIChOID4gNykgewogICAgICAgIE4gPSA1KnJhbmRvbWl6ZSgpICsgcmFuZG9taXplKCkgLSA1OwogICAgfQogICAgCiAgICByZXR1cm4gTjsKfQoKLy9UaGlzIG1ldGhvZCBpcyBzbGlnaHRseSBtb3JlIGVmZmljaWVudAppbnQgY3VzdG9tUmFuZG9taXplMiAoKSB7CiAgICBpbnQgTiA9IDUqcmFuZG9taXplKCkgKyByYW5kb21pemUoKSAtIDU7CiAgICAKICAgIHdoaWxlIChOID4gMjEpIHsKICAgICAgICBOID0gNSpyYW5kb21pemUoKSArIHJhbmRvbWl6ZSgpIC0gNTsKICAgIH0KICAgIAogICAgcmV0dXJuICgoTiU3KSArIDEpOwp9CgppbnQgbWFpbiAoKSB7CiAgICAKICAgIGludCB4LCB5OwogICAgCiAgICBjb3V0PDwiUmFuZG9tbHkgZ2VuZXJhdGVkIGludGVnZXJzIGJldHdlZW4gMSBhbmQgNzoiPDxlbmRsOwogICAgZm9yIChpbnQgaT0wOyBpPDU7IGkrKykgewogICAgICAgIHggPSBjdXN0b21SYW5kb21pemUoKTsKICAgICAgICBjb3V0PDx4PDxlbmRsOwogICAgICAgIHkgPSBjdXN0b21SYW5kb21pemUyKCk7CiAgICAgICAgY291dDw8eTw8ZW5kbDsKICAgIH0KICAgIAogICAgcmV0dXJuIDA7Cn0=