arduino hep aynı rasgele sayıları üretiyor

Kodla Büyü

sertokus

Süper Üye
Süper Üye
Mesajlar
2,350
1.8.5 versiyonu var arkadaşlar.
dikkat ettim hep aynı sayıları üretiyormuş.
Ben de diyorum sabah beri sorun ne?

Bu başına gelen var mı?
 
----------------------------------
mesala daha basitinden aşağıdaki kodu denedim. hep ilk sayıyı random olarak 3 atıyor.
secim=random(0,4);
Serial.println(secim);
--------------------------------------------------

mesela hocam burada bir buton vasıtası ile öğrencileri karışık seçtirmek istediğimde her zaman ilk 8. öğrenciyi. daha sonra 10. öğrenci daha sonra 4 daha sonra 9. öğrenci geliyor sıralamada.
aslında kodda bir hata yok. sıralama hiç değişmiyor.
Not: Uygulamanın amacı myStrings teki değişkenleri butona bastığımda karışık olarak yazdırmak. Basit bir kura uygulaması diyebiliriz. Burada seçilen kişiler tekrar gelebilir.

şuan bu aşağıdaki kodlarla karışık geliyor. Ama sıralama yine aynı 8,10,4,9 şeklinde.

#include <LiquidCrystal.h>
LiquidCrystal lcd(12,11,5,4,3,2);
char* myStrings[]={"1. Ogrenci", "2. Ogrenci","3. Ogrenci","4. Ogrenci","5. Ogrenci","6. Ogrenci","7. Ogrenci","8. Ogrenci","9. Ogrenci","10. Ogrenci"};
const int pirPin=8;
int pirDeger;
int secim;



void setup() {
pinMode (pirPin,INPUT);
lcd.begin(16,2);
lcd.clear ();
}

void loop() {





pirDeger=digitalRead(pirPin);

if (pirDeger==HIGH)
{
secim=random(0,10);
lcd.print("Secilen Kisi");
lcd.setCursor(0,1);
lcd.print(myStrings[secim]);
delay(3000);
lcd.clear();

}
else
{
lcd.print("Butona");
lcd.setCursor(0,1);
lcd.print("Basiniz...");
delay(200);
lcd.clear();
}
}
 
Son düzenleme:
ilginç bir durum ama benzer problemi yaşayan bol miktarda kullanıcı var. Daha önce random kullanmıştım ama fonksiyonda sorun olduğunu farketmemiştim. Kodda problem de görünmüyor. Sizin aralığınızda fark etmeyecektir ama belki işe yarar, denemekten ne zarar gelir, random ile üretilen sayıyı int değil de long değişkenine alır mısınız hocam? Genelde değişken long türünde tanımlanmış.
 
Geri
Üst