C/C++ : Tutorial Mengacak angka (fungsi Randomize)

 Ada kalanya dalam pemrograman kita membutuhkan suatu nilai acak. Khususnya dalam pemrograman game, pada pemrograman game pasti ada suatu nilai acak, misalnya pada game kartu pastinya ada proses untuk mengacak kartu. Nah, pada C/C++ sudah tersedia fungsi yang bisa digunakan untuk mengacak angka. Namun angka yang nantinya dihasilkan akan bertipe Integer (bilangan bulat). Jadi anda tidak perlu memikirkan algoritma untuk pengacakan, namun cukup gunakan saja fungsi yang sudah disediakan.



Fungsi yang digunakan untuk mengacak angka adalah random(); berikut adalah syntaxnya:



int nilai = random(batas);

nilai adalah variabel yang digunakan untuk menyimpan hasil dari pengacakan angka. Sedangkan batas adalah batas maksimal dari pengacakan. Jika batas bernilai 100 maka hasil dari pengacakan akan berada pada range 0 - 100.

Namun sebelum menggunakan fungsi random tersebut, kita harus memanggil dulu fungsi randomize();. Hal ini karena proses random memerlukan fungsi randomize(); terlebih dahulu. Jadi fungsi randomize(); ini harus diletakan sebelum proses random();. Dan fungsi randomize() cukup dipanggil satu kali saja. Setelah penggunaan fungsi randomize() nanti urutannya jadi seperti ini:

randomize();
int nilai = random(batas);

Oh iya, untuk menggunakan fungsi random() dan randomize() ini kita perlu juga mengikutsertakan file header stdlib.h

Saya juga sudah membuatkan contoh program yang sudah bisa jalan, dan berikut adalah source codenya:

#include <stdio>
#include <conio>
#include <stdlib>

main()
{
    int acak;
    randomize();
    while (true)
    {
        acak=random(100);
        clrscr();
        printf("Hasil Pengacakan = %d ",acak);
        printf("\nTekan sembarang tombol untuk mengacak lagi");
        getch();
    }
}

atau untuk download contoh programnya ada pada link di bawah ini
DOWNLOAD
Share this post
  • Share to Facebook
  • Share to Twitter
  • Share to Google+
  • Share to Stumble Upon
  • Share to Evernote
  • Share to Blogger
  • Share to Email
  • Share to Yahoo Messenger
  • More...

0 comments:

Post a Comment