رفتن به مطلب

رندوم کردن بدون تکرار


مجید آرتا

ارسال‌های توصیه شده

سلام

از اونجایی که یکی از دوستان رنودم کردن داده رو بدون اینکه تکرار بشه رو درخواست کرده بودن بنده یکم سرو کله زدم و با استفاده از تجارب دوستان کدشو نوشتیم

ببینید از اونجایی که موقع رندم کردن یک عدد برگشت داده میشه و این عدد رو جایی ذخیره می کنیم و در رندم سازی بعدی میاییم چک می کنیم عدد قبلی چنده و بعد عدد جدید رو به نمایش در میاریم

یکی از دوستان همین عمل رو توی دیتابیس میخوان انجام بدن و یکم مشکله به دلایل محدودیت های خوده بیسیک

بنده همین عملو توی دیتابیس انجام دادم ولی کد جالبی در نیومد باید یکم وقت کذاشته شه تا انجام بشه

واسه بنده که مبتدیم این کار سختیه وگرنه اساتید انجمن حتما راهی رو مد نظر دارند

به امید خدا راه حلی مناسب و بهینه واسه اون دوستی که این مشکلو داشتن پیدا می کنیم

Try
Dim arr() As Int
Dim n As Int : n=29
Dim m As Int : m=30
For i=0 To n
Dim k As Int : k=Rnd(1,m+1)
Do While (arr.Length=k) 
k=Rnd(1,m+1)
Loop
arr=Array As Int(k)
ListView1.AddSingleLine(arr(i))
Next
Catch
Log("")
End Try 

امیدوارم موفق باشیم

لینک ارسال
به اشتراک گذاری در سایت های دیگر

سلام

خسته نباشی و ممنون

فکر کنم خیلی ساده تر هم میشد اینو نوشت

میتونستی یه لیست تعریف کنی و با یه if ساده رندم بدون تکرار بگیری

موفق باشی

لینک ارسال
به اشتراک گذاری در سایت های دیگر

  • 1 ماه بعد...

سلام

به نظرم اگه بشه زمان رو به عنوان یه متغییر دخیل کرد در معادلمون بتونیم همیشه یه رندوم متفاوت بگیریم

لینک ارسال
به اشتراک گذاری در سایت های دیگر

  • 2 هفته بعد...
Mohammad Karami اگه میشه روشتو توضیح بده با یک if ساده چطوری میشه عدد تصادفی بدون تکرار گرفت ؟ اشتباه نمی کنی؟
لینک ارسال
به اشتراک گذاری در سایت های دیگر

اینم روش من که در VB classic یا همون VB6 استفاده کردم تقدیم دوستان *همینه*:

http://s5.picofile.com/file/8153302468/random_bi_tekrar_vb6.jpg

با کمی فکر می تونید به b4a ببرید*مکار*

لینک ارسال
به اشتراک گذاری در سایت های دیگر

  • 1 سال بعد...

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...