C/C++ Rastgele Sayı Üretme
C ve C++ ile rastgele sayı üretmek için kullanılan kütüphane dosyası ve fonksiyonu ile ilgili bilgiler yer alıyor.
Rastgele sayı üretme
C ve C++ ile rastgele sayı üretme işlemi için rand ve srand fonksiyonları kullanılır.
#include <iostream>
using namespace std;
int main() {
for(int i = 0; i < 10; i++){
cout << rand() << endl;
}
return 0;
}
C ile;
#include <stdio.h>
#include <stdlib.h>
int main(){
int i = 0;
for(i = 0; i < 10; i++){
printf("%d\n", rand());
}
return 0;
}
Ancak rand fonksiyonu her programın çalıştırılmasında benzer sayılar üretecektir.
Bu sorunun önüne geçebilmek için srand fonksiyonu kullanılır.
#include <iostream>
#include <ctime>
using namespace std;
int main() {
srand(time(0));
for(int i = 0; i < 10; i++){
cout << rand() << endl;
}
return 0;
}
C ile;
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main(){
int i = 0;
srand(time(0));
for(i = 0; i < 10; i++){
printf("%d\n", rand());
}
return 0;
}
Belirli bir aralıkta sayılar üretmek için modüler aritmetik operatörü kullanılır.
#include <iostream>
#include <ctime>
using namespace std;
int main() {
int enFazla = 250, enAz = 100;
srand(time(0));
for(int i = 0; i < 10; i++){
cout << rand() % (enFazla - enAz + 1 ) + enAz << endl;
}
return 0;
}
Program 100 ila 250 arasında sayılar üretecektir.
C ile;
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main(){
int i = 0;
srand(time(0));
for(i = 0; i < 10; i++){
printf("%d\n", rand() % 100);
}
return 0;
}
Program 0 ila 99 sayısı arasında sayılar üretecektir.
C++ rastgele harf üretmek için üretilen sayının 26 sayısına göre modüler aritmetiği alınarak 97 eklenmesi yeterli olacaktır.
#include <iostream>
#include <ctime>
using namespace std;
int main() {
srand(time(0));
for(int i = 0; i < 10; i++){
char harf = (char)(rand() % 26) + 97;
cout << harf << endl;
}
return 0;
}
NOT: Harfler ASCII tablosuna göre üretilir.
Programlama örneklerine buradan ulaşabilirsiniz…
Hayırlı günler dilerim.