//CAHINFOR.COM
#include <bits/stdc++.h>
#include <ctime>
#include <cstdlib>
using namespace std;
void awal( ) ;
void random( int a) {
system ( "cls" ) ; system ( "clear" ) ;
srand ( time ( NULL ) ) ;
char arr[ ] = { '0' ,'1' ,'2' ,'3' ,'4' ,'5' ,'6' ,'7' ,'8' ,'9' ,'A' ,'B' ,'C' ,'D' ,'E' ,'F' } ;
int digit;
cout << "Masukkan digit yang diinginkan:\t " ;
cin >> digit;
cout << endl<< "hasil = " ;
if ( a== 1 ) {
int random;
for ( int i= 0 ; i< digit; i++ ) {
random = rand ( ) % 10 ;
cout << arr[ random] ;
}
}
else if ( a== 2 ) {
int random;
for ( int i= 0 ; i< digit; i++ ) {
random = rand ( ) % 2 ;
cout << arr[ random] ;
}
}
else if ( a== 3 ) {
int random;
for ( int i= 0 ; i< digit; i++ ) {
random = rand ( ) % 8 ;
cout << arr[ random] ;
}
}
else {
int random;
for ( int i= 0 ; i< digit; i++ ) {
random = rand ( ) % 16 ;
cout << arr[ random] ;
}
}
cout << "\n \n Lagi?\n 1. Ya\n 2. Tidak\n " ;
string nxt;
cin >> nxt;
for_each( nxt.begin ( ) ,nxt.end ( ) , [ ] ( char & c) {
c = :: tolower ( c) ;
} ) ;
if ( nxt== "1" || nxt== "ya" ) awal( ) ;
else return ;
}
void awal( ) {
system ( "cls" ) ; system ( "clear" ) ;
cout << "\t \t \t cahinfor.com\n \n " ;
string sistem_bilangan;
cout << "Masukkan jenis sistem bilangan:\n 1. Desimal\n 2. Biner\n 3. Oktal\n 4. Heksadesimal\n " ;
cin >> sistem_bilangan;
for_each( sistem_bilangan.begin ( ) ,sistem_bilangan.end ( ) , [ ] ( char & c) {
c = :: tolower ( c) ;
} ) ;
if ( sistem_bilangan== "desimal" || sistem_bilangan== "1" ) random( 1 ) ;
else if ( sistem_bilangan== "biner" || sistem_bilangan== "2" ) random( 2 ) ;
else if ( sistem_bilangan== "oktal" || sistem_bilangan== "3" ) random( 3 ) ;
else if ( sistem_bilangan== "heksadesimal" || sistem_bilangan== "4" ) random( 4 ) ;
else {
cout << "Sistem bilangan tidak dalam daftar\n " ;
awal( ) ;
}
}
int main( ) {
awal( ) ;
return 0 ;
}
/*
Jika mencoba di IDEONE:
Pertama masukkan jenis sistem bilangan yang ingin didapatkan
1. Desimal
2. Biner
3. Oktal
4. Heksadesimal
Bisa menggunakan nomor, atau ketik jenisnya, tak masalah besar kecilnya huruf,
asalkan sesuai.
Kemudian baris kedua berisi jumlah digit yang diinginkan.
Jika ingin ada nomor yang dirandom lagi, pilih 1 atau 'ya'.
Jika tidak, ketik 2 atau 'tidak'.
Lebih jelasnya ada di contoh input.
*/
CQkJLy9DQUhJTkZPUi5DT00KI2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNpbmNsdWRlIDxjdGltZT4KI2luY2x1ZGUgPGNzdGRsaWI+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKdm9pZCBhd2FsKCk7CnZvaWQgcmFuZG9tKGludCBhKXsKCXN5c3RlbSgiY2xzIik7c3lzdGVtKCJjbGVhciIpOwoJc3JhbmQodGltZShOVUxMKSk7CgljaGFyIGFycltdID0geycwJywnMScsJzInLCczJywnNCcsJzUnLCc2JywnNycsJzgnLCc5JywnQScsJ0InLCdDJywnRCcsJ0UnLCdGJ307CglpbnQgZGlnaXQ7Cgljb3V0PDwiTWFzdWtrYW4gZGlnaXQgeWFuZyBkaWluZ2lua2FuOlx0IjsKCWNpbj4+ZGlnaXQ7Cgljb3V0PDxlbmRsPDwiaGFzaWwgPSAiOwoJaWYoYT09MSl7CgkJaW50IHJhbmRvbTsKCQlmb3IoaW50IGk9MDtpPGRpZ2l0O2krKyl7CgkJCXJhbmRvbSA9IHJhbmQoKSUxMDsKCQkJY291dDw8YXJyW3JhbmRvbV07CgkJfQoJfQoJZWxzZSBpZihhPT0yKXsKCQlpbnQgcmFuZG9tOwoJCWZvcihpbnQgaT0wO2k8ZGlnaXQ7aSsrKXsKCQkJcmFuZG9tID0gcmFuZCgpJTI7CgkJCWNvdXQ8PGFycltyYW5kb21dOwoJCX0KCX0KCWVsc2UgaWYoYT09Myl7CgkJaW50IHJhbmRvbTsKCQlmb3IoaW50IGk9MDtpPGRpZ2l0O2krKyl7CgkJCXJhbmRvbSA9IHJhbmQoKSU4OwoJCQljb3V0PDxhcnJbcmFuZG9tXTsKCQl9Cgl9CgllbHNlewoJCWludCByYW5kb207CgkJZm9yKGludCBpPTA7aTxkaWdpdDtpKyspewoJCQlyYW5kb20gPSByYW5kKCklMTY7CgkJCWNvdXQ8PGFycltyYW5kb21dOwoJCX0KCX0KCWNvdXQ8PCJcblxuTGFnaT9cbjEuIFlhXG4yLiBUaWRha1xuIjsKCQoJc3RyaW5nIG54dDsKCWNpbj4+bnh0OwoJZm9yX2VhY2gobnh0LmJlZ2luKCksbnh0LmVuZCgpLCBbXShjaGFyICYgYyl7CgkJYyA9IDo6dG9sb3dlcihjKTsKCX0pOwoJCglpZihueHQ9PSIxInx8bnh0PT0ieWEiKSBhd2FsKCk7CgllbHNlIHJldHVybjsKfQp2b2lkIGF3YWwoKXsKCXN5c3RlbSgiY2xzIik7c3lzdGVtKCJjbGVhciIpOwoJY291dDw8Ilx0XHRcdGNhaGluZm9yLmNvbVxuXG4iOwoJc3RyaW5nIHNpc3RlbV9iaWxhbmdhbjsKCWNvdXQ8PCJNYXN1a2thbiBqZW5pcyBzaXN0ZW0gYmlsYW5nYW46XG4xLiBEZXNpbWFsXG4yLiBCaW5lclxuMy4gT2t0YWxcbjQuIEhla3NhZGVzaW1hbFxuIjsKCWNpbj4+c2lzdGVtX2JpbGFuZ2FuOwoJCglmb3JfZWFjaChzaXN0ZW1fYmlsYW5nYW4uYmVnaW4oKSxzaXN0ZW1fYmlsYW5nYW4uZW5kKCksIFtdKGNoYXIgJiBjKXsKCQljID0gOjp0b2xvd2VyKGMpOwoJfSk7CgkKCWlmKHNpc3RlbV9iaWxhbmdhbj09ImRlc2ltYWwiIHx8IHNpc3RlbV9iaWxhbmdhbj09IjEiKSByYW5kb20oMSk7CgllbHNlIGlmKHNpc3RlbV9iaWxhbmdhbj09ImJpbmVyIiB8fCBzaXN0ZW1fYmlsYW5nYW49PSIyIikgcmFuZG9tKDIpOwoJZWxzZSBpZihzaXN0ZW1fYmlsYW5nYW49PSJva3RhbCIgfHwgc2lzdGVtX2JpbGFuZ2FuPT0iMyIpIHJhbmRvbSgzKTsKCWVsc2UgaWYoc2lzdGVtX2JpbGFuZ2FuPT0iaGVrc2FkZXNpbWFsIiB8fCBzaXN0ZW1fYmlsYW5nYW49PSI0IikgcmFuZG9tKDQpOwoJZWxzZXsKCQljb3V0PDwiU2lzdGVtIGJpbGFuZ2FuIHRpZGFrIGRhbGFtIGRhZnRhclxuIjsKCQlhd2FsKCk7Cgl9Cn0KaW50IG1haW4oKSB7Cglhd2FsKCk7CglyZXR1cm4gMDsKfQoKLyoKSmlrYSBtZW5jb2JhIGRpIElERU9ORToKUGVydGFtYSBtYXN1a2thbiBqZW5pcyBzaXN0ZW0gYmlsYW5nYW4geWFuZyBpbmdpbiBkaWRhcGF0a2FuCgkxLiBEZXNpbWFsCgkyLiBCaW5lcgoJMy4gT2t0YWwKCTQuIEhla3NhZGVzaW1hbApCaXNhIG1lbmdndW5ha2FuIG5vbW9yLCBhdGF1IGtldGlrIGplbmlzbnlhLCB0YWsgbWFzYWxhaCBiZXNhciBrZWNpbG55YSBodXJ1ZiwKYXNhbGthbiBzZXN1YWkuCgpLZW11ZGlhbiBiYXJpcyBrZWR1YSBiZXJpc2kganVtbGFoIGRpZ2l0IHlhbmcgZGlpbmdpbmthbi4KCkppa2EgaW5naW4gYWRhIG5vbW9yIHlhbmcgZGlyYW5kb20gbGFnaSwgcGlsaWggMSBhdGF1ICd5YScuCkppa2EgdGlkYWssIGtldGlrIDIgYXRhdSAndGlkYWsnLgoKTGViaWggamVsYXNueWEgYWRhIGRpIGNvbnRvaCBpbnB1dC4KKi8=