Random Başlangıç
Random nedir?
İlk önce random kelimesinin anlamıyla başlayalım. Random sözlükte rasgele, gelişigüzel, tesadüfi gibi anlamlara gelmektedir. Kodlarda ise rasgele yapılması istenen yerlerde kullanılır.
Random’un kullanımını bir örnek ile açıklayalım
#include"stdio.h"
#include"stdlib.h"//rand() için
int main()
{
int c;
c = rand();
printf("%dn",c);
return 0;
}
İlk olarak yapmamız gereken stdlib.h kütüphanesini eklemek. Sonra bir değişken tanımlayıp değişkeni rand()‘a eşitlemek.
Sadece sayı mı üretir?
rand()‘ sadece sayı üretmez. Herhangi bir karakter de üretebilir.
#include"stdio.h"
#include"stdlib.h"//rand() için gerekli
int main()
{
char c;
c = rand();
printf("%cn",c);
return 0;
}
Biraz ilerleyelim…
#include"stdio.h"
#include"stdlib.h" //rand() için gerekli
int main()
{
int c, n;
printf("Rasgele 10 sayin");
for (c = 1; c <= 10; c++)
{
n = rand();
printf("%dn", n);
}
return 0;
}
Yukarıdaki örneğimizde for döngüsünü kullanarak 10 tane random(rasgele) sayı yazdıyoruz. İlk baktığımızda kodun çalışmasında sorun yok gibi görünüyor. Ama kodu tekrar tekrar çalıştırdığımızda ise her defasında aynı sayıları yazdırdığını fark ediyoruz. Örneğin basit bir sayı tahmin oyunu yaptığımızda her oyunu başlattığımızda aynı sayıyı tahmin etmemizi isteyecektir. Peki, bu sorunun önüne geçmek için ne yapmalıyız?
İşte çözümü;
#include"stdio.h"
#include"stdlib.h" //rand() ve srand() için gerekli
#include"time.h" //time() için gerekli
int main()
{
int c, n;
printf("Rasgele 10 sayin");
srand(time(NULL));
for (c = 1; c <= 10; c++)
{
n = rand();
printf("%dn", n);
}
return 0;
}
Yapmamız gereken time.h kütüphanesini dahil edip srand(time(NULL)); satırını eklemek. İleride random’la ilgi örnekler vermeye çalışacağım.