يوجد أكثر من طريقة لذلك، يمكننا استخدام النمط integer ببساطة، حيث نقوم بتوليد خانة ما بشكل عشوائي و مكونة من رقم واحد، ثم نقوم بتجيمع الأرقام لتمثيل عدد بعمل إزاحة حسابية أي نضرب العدد ب 10 ثم نجمع رقم آحاد
x = 123
x *= 10
x =? 1230
y = randome() % 10 // 0-9 // y = 7
x += y
x =? 1237
لنفرض نريد عدد من 5 خانات، نكرر هذا المنطق في حلقة while مثلاً
import java.util.Random;
Random rand = new Random();
// مثال لعدد بين [0 - 49].
int n = rand.nextInt(50);
//*****************************
int counter = 5;
int x = 0;
int y;
while (counter -- > 0) {
y = rand.nextInt(10); // 0-9
x = x * 10 + y;
}
System.out.println(x); // عدد عشوائي من 5 خانات
ملاحظة: حتى لا نحصل على قيمة 0 في الخانة اليسرى ( أي يصبح العدد ليس 5 خانات) يمكن تنفيذ منطق بسيط لضمان أن أول خانة ليس 0 بتشكيل رقم عشوائي بين 1-9 بدل 0-9
int counter = 4;
int x = 0;
int y = rand.nextInt(9); // 0-8
y = y + 1; // => 1-9
x = x * 10 + y;
// يبقى 4 تكرارات للخانات الباقية حيث حسبنا أول خانة خارج الحلقة
while (counter -- > 0) {
y = rand.nextInt(10); // 0-9
x = x * 10 + y;
}
System.out.println(x); // عدد عشوائي من 5 خانات
مجتمع لمناقشة أحدث التقنيات والابتكارات. ناقش وتبادل المعرفة حول الأجهزة، البرمجيات، الذكاء الاصطناعي، والأمن السيبراني. شارك أفكارك، نصائحك، وأسئلتك، وتواصل مع محبي التقنية والمتخصصين.