Hedefim:
Bir e-posta adresi alan ve 1, 2, 3 veya 4 gibi rasgele bir sayı çıktısı bir işleve sahip olmak istiyorum.
Biraz detay:
Yarı rastgele sayı ile, tipik bir e-posta adresi popülasyonu verildiğinde, 1, 2, 3 veya 4 değerini elde etme olasılıklarının kabaca eşit olduğunu ve e-posta adresinin alan adı gibi bariz sistematik özelliklerinin 1, 2, 3 veya 4 değerini alma olasılığını etkilemez.
Biraz arka plan:
Katılımcıların iki kez oturum açtıkları soruyla yazılı bir çevrimiçi denemem var . Dört gruptan birine rastgele katılımcı atamak istiyorum. Bu bir oturum için yapmak kolay olsa da (ben sadece rastgele bir sayı üreteci kullanabilirsiniz), ben oturumlar arasında tahsisi hatırlamak için bir yol gerekir. Böylece, katılımcı e-postasından yarı rastgele bir grup ayırması yapabileceğimi düşündüm. Ayrıca elimdeki fonksiyonlar setiyle de sınırlıyım ( tam liste için buraya bakınız ). Dize fonksiyonları şunlardır: tolower toupper büyük harfli concat arama replaceall tüm başlangıç içerir alt dize trim trimright trimleft uzunluk biçimi değerlendirme
İlk Düşünceler:
E-posta adresinin kabaca eşit olasılıklarla 1, 2, 3 veya 4 değerini döndüren bir dizi özelliği çıkarmaya çalışmayı düşündüm. Sonra, bu özellikleri toplamak ve mod 4 artı 1 olsun. Böylece, merkezi limit teoremi gibi bir şey varsayarsak, yakınlaşabilirim.
Aklıma gelen olası özellikler:
- ipin uzunluğu
- ilk "a", "b" vb. konumlar.