Random Başlangıç

image
image
image
Random Başlangıç

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.