الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

عمل دالة تقوم بتوليد 9 ارفام عشوائية بدون تكرار

مغلق
بدأه theone في 3 سبتمبر 2006 · 4 رد · 1,548 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

شباب ارجو المساعدة

ابحث عن دالة تقوم بتوليد ارقم عشوائية مثل ارقم كروت التعبئة الخاصة بالجوال بحيث لا تتكرر

#2

أنا هاسعدك علي الغم أني مو عبقري:

بص بقي يا أخي

انت هتولد رقم عشوائي في الrange اللي انت عاوزه -- مثلا من 1000 إلي 5000-- كل ده بالكود و بعد كده تكت الرقم فل ملف و كل مره تيجي تولد رقم جديد تتأكد إنه موش موجود في الملف . فهمت ؟

انا هكتبهولك بالجافا لأني مليش في ال سي شارب :

long method() throws Execption {

long no;

BufferedReader in = new BufferedReader ( new FileReader ( "file.txt"));

PrintWriter out = new PrintWriter (new FileWriter ("file.txt"));

long rand = Math.rand();

String line;

while (( line = in.readLine()) != null ) {

if ( Integer.parseInt (line) == rand )

return -1;// this means this no is invalid

}

out.println (rand )

return rand; // this means the no is valid as you want it.

}

#3
class Program
	{
		static void Main(string[] args)
		{
			//int remaining = 10;
			bool[] range = new bool[10];
			char[] result = new char[10];
			int i = 0;
			Random rnd = new Random();
			while (i < 10)
			{
				int index = rnd.Next(0, 10);
				if (range[index] == true)
					continue;
				range[index] = true;
				result[i++] = Char.Parse(index.ToString());
			}
			Console.WriteLine(result);
		}
	}

الفكرة ببساطة هو عمل Array من نوع bool و حجمه 10 عناصر من 0 الى 9 و قيمته الافتراضية false لكل العناصر و سيكون هذا الarray بمثابة checklist لنتحقق اذا كان العدد تم ايجاده من قبل أم لا..

ثم نقوم بعمل loop و كل مرة نقوم بتوليد رقم جديد ثم نتأكد من أنه لم يتم توليده من قبل عن طريق قراءة الflag المناظر لهذا الرقم في الarray و اذا كان الflag = false اذن نضيف الرقم الى العدد و نقوم بقلب الflag الى true و هكذا

Sr. Software Development Engineer
Hulu, LLC
My Blogs

#4

طيب شباب ممكن الكود بال vb.net

#5

شكرا شباب

بس انا مشعايز توليد الأرقام مرة واحدة فقط

انا عوزها مثل أرقم التفعيل الذي بكروت الشحن حق الموبايل

هذا الموضوع مغلق.

مواضيع مشابهة