Cuma cacatan, supaya nggak lupa. Maklum sering lupa –‘. Intinya bagaimana menghasilkan angka random yang berbeda dari suatu array atau sebuah deret. Misalkan kita punya array {1,2,3,4,5,6,7,8,9}, kita ingin bangkitkan angka random dari array itu, dengan catatan semua angka harus berbeda alias nggak boleh ada yang sama. Artinya, angka-angka dalam array itu hanya pindah posisi, tapi secara random. Misalnya hasilnya jadi {4,2,6,1,3,8,9,7,5} dst.
Dari hasil gugling, akhirnya ketemu juga kata kuncinya.
Jadi kata kuncinya bukan bangkitkan random, tapi pertukaran posisi saja, alias shuffle -_-‘. Beginilah kalo bukan projremer sok-sokan belajar program, yang gini aja nggak bisa 😀
Ya sudah, programnya kira-kira seperti ini:
#include <iostream> #include <cstdlib> #include <ctime> int main() { srand(time(0)); int bilAcak[9] = {0,1,2,3,4,5,6,7,8}; //yang mau diacak for(int i=0;i<(9-1);i++) { int r, temp; r = i + (rand() % (9-i)); temp = bilAcak[i]; bilAcak[i] = bilAcak[r]; bilAcak[r] = temp; } return 0; }
Sumber dari sini
0 responses to “[cacatan] Bangkitkan angka random yang berbeda dari suatu Array”
Wew.. Mastah.. Maenannya c++…