DonanımHaber Mini sürüm 2 Ocak 2026 tarihi itibariyle kullanımdan kalkacaktır. Bunun yerine daha hızlı bir deneyim için DH Android veya DH iOS uygulamalarını kullanabilirsiniz.
Arama butonu
Bu konudaki kullanıcılar: 1 misafir, 1 mobil kullanıcı
15
Cevap
13555
Tıklama
0
Öne Çıkarma
c de random lütfen yardım
G
18 yıl (1681 mesaj)
Binbaşı
Konu Sahibi

#include <stdio.h>
#include <ctype.h>
main()
{
printf("Sayi bulmaca Oguzhan Gokdal");
printf("\nOyunda 5 hakkiniz bulunmaktadır");
float x,y,z,t,k;
int n;
DENEME1:
printf("\nTahmininizi girin=");scanf("%f",&x);
if (x<n) printf("yukselt");
if (x==n) printf("tebrikler ilk denemede bildin");
if (x>n) printf("alcalt");
printf("\n\n\n\nHAK=4");
DENEME2:
printf("\n2.tahmininizi girin");scanf("%f",&y);
if (y<n) printf("yukselt");
if (y==n) printf("tebrikler ikinci denemede bildin");
if (y>n) printf("alcalt");
printf("\n\n\n\nHAK=3");
DENEME3:
printf("\n3.tahmininizi girin");scanf("%f",&z);
if (z<1n) printf("yukselt");
if (z==n) printf("tebrikler ucuncu denemede bildin");
if (z>n) printf("alcalt");
printf("\n\n\n\nHAK=2");
DENEME4:
printf("\n4.tahmininizi girin");scanf("%f",&t);
if (z<n) printf("yukselt");
if (t==n) printf("tebrikler dorduncu denemede bildin");
if (t>n) printf("alcalt");
printf("\n\n\n\nHAK=1");
DENEME5:
printf("\nSon tahmininizi girin");scanf("%f",&k);
if (z<n) printf("yukselt");
if (k==n) printf("tebrikler dorduncu denemede bildin");
if (k>n) printf("alcalt");
printf("\n\n\n\nHAK=0 ");
SON:
printf("\n\n\n\n oyun bitti");
getche();
}
arkadaşlar ben bu kodlarda n nin 0-1000 arasında rastgele bir sayı olmasını istiyorum emin olun saatlerce uğraştım ama random komutunu tanımıyorum lütfen bir yardım edin

DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.

Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.

Üye Ol Şimdi Değil



R
18 yıl (27 mesaj)
Onbaşı

#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
void main() {
int x,y,i;
char istek;
printf("Sayi tahmini oyununa hosgeldiniz!");
basla:

printf("\n----------------------------------------------------------\n");
printf("Sayiyi tahmin etmek icin 6 hakkiniz var!");
i=1;
x=random(100);
do {

printf("\n----------------------------------------------------------\n");
printf("Lutfen 0-100 arasinda bir sayi yazip Enter a basin: ");
scanf("%d", &y);
if(i<6){
if(y==x) {
printf("\nTEBRiKLER!!! Sayiyi %d . hakkinizda tahmin ettiniz", i);
break;
}
if(y>x) {
printf("Girdiniz sayi tahmin etmeniz gereken sayidan buyuk.\nLutfen daha kucuk bir sayiyla sansinizi deneyin.");
}
if(y<x) {
printf("Girdiniz sayi tahmin etmeniz gereken sayidan kucuk.\n Lutfen daha buyuk bir sayiyla sansinizi deneyin.");
}
}
if(i==6) {
printf("\nHakkiniz bitti!!!\nBilmeniz gereken sayi %d sayisiydi.", x);
}
i++;
} while(i!=7);

printf("\n----------------------------------------------------------");
printf("\nTekrar oynamak ister misiniz?\nOynamak istiyorsaniz e ye basin.\nOynamak ismiyorsaniz h ye basin.\nCevap:");
istek=getch();
if(istek=='e' || istek=='E') {
goto basla;
}
if(istek=='h' || istek=='H') {
exit(0);
}

}


Bunu biraz incelersen çözersin. kullanımı basit
random(1000);
yaparsan 0-1000 arasında bir sayı tutar.


Bu mesaja 1 cevap geldi.
G
18 yıl (1681 mesaj)
Binbaşı
Konu Sahibi

yazdığın kodları aynen geçirdim ama olmuyor undefined reference to random yazıyo
dev c++ 4.9.8.0 kullanıyorum programında kütüphanelerinde falanmı sorun var


Bu mesaja 1 cevap geldi.
İ
18 yıl (3583 mesaj)
Yarbay

quote:

Orjinalden alıntı: oguzhan1992

yazdığın kodları aynen geçirdim ama olmuyor undefined reference to random yazıyo
dev c++ 4.9.8.0 kullanıyorum programında kütüphanelerinde falanmı sorun var



Hayır sorun yok, arkadaşın verdiği kodda sorun var.

C'de random diye hazır bir fonksiyon yok.. Rastgele sayı üretmek için :

srand ( time(NULL) );
int rastgele = rand() % 1000 + 1; (1 ile 1000 arasında rastgele sayı)


Bu mesaja 3 cevap geldi.
T
18 yıl (862 mesaj)
Yüzbaşı

rand() komutundan önce bir kereye mahsus randomize() komutunu çalıştır.yoksa rand() hep aynı sayıları üretir.


Bu mesaja 1 cevap geldi.
İ
18 yıl (3583 mesaj)
Yarbay

quote:

Orjinalden alıntı: terminator

rand() komutundan önce bir kereye mahsus randomize() komutunu çalıştır.yoksa rand() hep aynı sayıları üretir.


srand ( time(NULL) );

kullandığımız içn herseferinde aynı sayıyı üretmez.


Bu mesaja 1 cevap geldi.
G
18 yıl (1681 mesaj)
Binbaşı
Konu Sahibi

evet çok sağolun başardım çok mutluyum



R
18 yıl (27 mesaj)
Onbaşı

quote:

Orjinalden alıntı: İlteriş Kutluk Kağan


quote:

Orjinalden alıntı: oguzhan1992

yazdığın kodları aynen geçirdim ama olmuyor undefined reference to random yazıyo
dev c++ 4.9.8.0 kullanıyorum programında kütüphanelerinde falanmı sorun var



Hayır sorun yok, arkadaşın verdiği kodda sorun var.

C'de random diye hazır bir fonksiyon yok.. Rastgele sayı üretmek için :

srand ( time(NULL) );
int rastgele = rand() % 1000 + 1; (1 ile 1000 arasında rastgele sayı)


stdlib.h bu kütüphanenin içinde random() adlı bir fonksiyon var. Ben bu şekilde kullandım gayet güzel çalışıyor. Hatta benim bu kodu çalıştırdığım derleyiciye ,derleyici demek bile mümkün değil :D
Bu basit derleyiciyi indirmek için :http://www.ee.hacettepe.edu.tr/~alkar/ELE108/epi_release2.exe

Yazdığım kod burda sorunsuz çalışıyor.


Bu mesaja 1 cevap geldi.
İ
18 yıl (3583 mesaj)
Yarbay

quote:

Orjinalden alıntı: rommedahl


quote:

Orjinalden alıntı: İlteriş Kutluk Kağan


quote:

Orjinalden alıntı: oguzhan1992

yazdığın kodları aynen geçirdim ama olmuyor undefined reference to random yazıyo
dev c++ 4.9.8.0 kullanıyorum programında kütüphanelerinde falanmı sorun var



Hayır sorun yok, arkadaşın verdiği kodda sorun var.

C'de random diye hazır bir fonksiyon yok.. Rastgele sayı üretmek için :

srand ( time(NULL) );
int rastgele = rand() % 1000 + 1; (1 ile 1000 arasında rastgele sayı)


stdlib.h bu kütüphanenin içinde random() adlı bir fonksiyon var. Ben bu şekilde kullandım gayet güzel çalışıyor. Hatta benim bu kodu çalıştırdığım derleyiciye ,derleyici demek bile mümkün değil :D
Bu basit derleyiciyi indirmek için :http://www.ee.hacettepe.edu.tr/~alkar/ELE108/epi_release2.exe

Yazdığım kod burda sorunsuz çalışıyor.


Hmm evethttp://tigcc.ticalc.org/doc/stdlib.html#random

C kullanmayalı unutmuşuz bunu.. genelde nedense rand kullanılıyor..


Bu mesaja 1 cevap geldi.
B
18 yıl (17 mesaj)
Er

rand fonksyonunu,, arka arkaya çağırarak ekrana bastırırsanız,programı her çalıştırdıgınızda aynı sırayla aynı sayıları ürettiğini görürsünüz.bunun sebebi şifreleme - ve şifre çözme sistemlerinde anahtar olarak kullanılması için tasarlanmış olmasıdır.(srand() çağrılmadığı sürece)

random() ise oyun tarzı yapay zeka uygulamaları çin tasarlanmıştır ve sıralı random üretmez srand ile rand fonksiyonlarının birleştirilmiş hali gibi davranır.


Bu mesaja 1 cevap geldi.
N
17 yıl (25 mesaj)
Onbaşı

visual studio msdn debaktım vardı saoll ;)


Bu mesaja 1 cevap geldi.
M
16 yıl (586 mesaj)
Yüzbaşı

c++ da 97 ve 122 sayıları arasında rastgele sayı üretebilirmiyim yardım acil lütfen



O
16 yıl (381 mesaj)
Teğmen

quote:

Orijinalden alıntı: İlteriş Kutluk Kağan


quote:

Orjinalden alıntı: oguzhan1992

yazdığın kodları aynen geçirdim ama olmuyor undefined reference to random yazıyo
dev c++ 4.9.8.0 kullanıyorum programında kütüphanelerinde falanmı sorun var



Hayır sorun yok, arkadaşın verdiği kodda sorun var.

C'de random diye hazır bir fonksiyon yok.. Rastgele sayı üretmek için :

srand ( time(NULL) );
int rastgele = rand() % 1000 + 1; (1 ile 1000 arasında rastgele sayı)


yanlış. c ' de random diye hazır bir fonksiyon var ama sizin verdiğiniz srand da kullanılabilmekte.
random herzaman daha pratiktir.


Bu mesaja 1 cevap geldi.
F
14 yıl (13 mesaj)
Er

srand()
ve
rand()

kullandığımız zaman belli bir süre sonra aynı sayıyı üretme ihtimali var mi?

atıyorum 100000-999999 sayılar üretiyorum. 1. sayı ile 10001. sayı aynı olabilrmi ?


Bu mesaja 1 cevap geldi.
G
14 yıl (8718 mesaj)
Yarbay

quote:

Orijinalden alıntı: femeksiz

srand()
ve
rand()

kullandığımız zaman belli bir süre sonra aynı sayıyı üretme ihtimali var mi?

atıyorum 100000-999999 sayılar üretiyorum. 1. sayı ile 10001. sayı aynı olabilrmi ?


Tabi ki aynı sayıyı üretebilir, rastgelenin anlamı bu zaten. Eğer aynı sayıyının tekrarlanmamasını istiyorsanız kendiniz ona göre bir fonksiyon yazabilirsiniz (Hazırı varsa da bilmiyorum). Bundan güzel bir ödev çıkar.


Bu mesaja 1 cevap geldi.
L
14 yıl (535 mesaj)
Yüzbaşı

bu kod çalışmaz.



DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.