رفتن به مطلب
  • 0

ایجاد عدد رندوم در باتون (درخواست کمک)


vistamobile

سوال

سلام. من 16 باتون دارم حالا میخوام از 1 تا 16 رو بدم به باتونها. ولی نمیدونم چجوری. میخوام با فشردن یه باتون، بصورت رندوم به هر باتون یک مقدار از 1 تا 16 بدم. ولی اعداد تکراری نشه. یعنی بصورت زیر :

Untitled.png.16986f7bee641b946ab68183b566bbbb.png

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

8 پاسخ به این سوال تاکنون داده شده است

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

در 3 ساعت قبل، vistamobile گفته است :

داداش گلم ممنون بابت راهنمایی. ببین الان شما یه مقدار رندوم میسازی. من مشکلم مقدار رندوم نیس!! اصلا مقدار رندوم رو بیخیال شو. ببین من میخوام عدد 1 تا 16 رو تو باتون یک تا شونزده بچینم. ولی هر دفعه عدد یک یه جایی باشه عدد دو یه جایی.

داداش چرا کد هایی که میگم رو امتحان نمیکنی ؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟/

منظورت اینه ؟ 

Screenshot_53_.png

 

Screenshot_52_.png

 

اینم سورسش 

RandomNumber

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

در ۱ ساعت قبل، vistamobile گفته است :

سلام. من 16 باتون دارم حالا میخوام از 1 تا 16 رو بدم به باتونها. ولی نمیدونم چجوری. میخوام با فشردن یه باتون، بصورت رندوم به هر باتون یک مقدار از 1 تا 16 بدم. ولی اعداد تکراری نشه. یعنی بصورت زیر :

Untitled.png.16986f7bee641b946ab68183b566bbbb.png

سلام دوست عزیز 

این سابی که این زیر گراشتم کارش اینه که میاد و اعداد 1 تا 16 رو به صورت رندوم و بدون تکرار انتخاب میکنه و میریزه توی یه لیست 

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

Dim list As List
list.Initialize
Sub Random 
	Dim n As Int 
	list.Clear

	Do Until ( list.Size = 16)

		n = Rnd(1 , 17)
		
		If list.IndexOf(n) = -1 Then list.Add(n)

	Loop
	
	For i = 0 To list.Size -1 
		Log(list.Get(i))
	Next
	
End Sub

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

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

در 12 دقیقه قبل، sbr گفته است :

سلام دوست عزیز 

این سابی که این زیر گراشتم کارش اینه که میاد و اعداد 1 تا 16 رو به صورت رندوم و بدون تکرار انتخاب میکنه و میریزه توی یه لیست 

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


Dim list As List
list.Initialize

Sub Random 
	Dim n As Int 
	list.Clear

	Do Until ( list.Size = 16)

		n = Rnd(1 , 17)
		
		If list.IndexOf(n) = -1 Then list.Add(n)

	Loop
	
	For i = 0 To list.Size -1 
		Log(list.Get(i))
	Next
	
End Sub

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

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

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

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

مثلا باتن یک هر بار عددش جدید باشه  و باتن دو شونزده تا عدد جدید که دفعه های قبل براش تولید نشده باشه ؟

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

در 5 ساعت قبل، sbr گفته است :

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

مثلا باتن یک هر بار عددش جدید باشه  و باتن دو شونزده تا عدد جدید که دفعه های قبل براش تولید نشده باشه ؟

نه داداش. ببین چرا اینقدر سختش کردی؟ ما 16 تا باتون داریم. خوب الان اینا میشن 1 تا 16 . یعنی 16 تا باتون داریم. 

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

 

Untitled.png

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

اگر b1 تا b16 باتن های شما باشن اونوقت 

Sub Random
	Dim n As Int
	list.Clear

	Do Until ( list.Size = 16)

		n = Rnd(1 , 17)
		
		If list.IndexOf(n) = -1 Then list.Add(n)

	Loop
	
	
	b1.Text = list.Get(0)
	b2.Text = list.Get(1)
	b3.Text = list.Get(2)
	b4.Text = list.Get(3)
	b5.Text = list.Get(4)
	b6.Text = list.Get(5)
	b7.Text = list.Get(6)
	b8.Text = list.Get(7)
	b9.Text = list.Get(8)
	b10.Text = list.Get(9)
	b11.Text = list.Get(10)
	b12.Text = list.Get(11)
	b13.Text = list.Get(12)
	b14.Text = list.Get(13)
	b15.Text = list.Get(14)
	b16.Text = list.Get(15)
	
End Sub

 

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

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

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

در 6 ساعت قبل، sbr گفته است :

اگر b1 تا b16 باتن های شما باشن اونوقت 


Sub Random
	Dim n As Int
	list.Clear

	Do Until ( list.Size = 16)

		n = Rnd(1 , 17)
		
		If list.IndexOf(n) = -1 Then list.Add(n)

	Loop
	
	
	b1.Text = list.Get(0)
	b2.Text = list.Get(1)
	b3.Text = list.Get(2)
	b4.Text = list.Get(3)
	b5.Text = list.Get(4)
	b6.Text = list.Get(5)
	b7.Text = list.Get(6)
	b8.Text = list.Get(7)
	b9.Text = list.Get(8)
	b10.Text = list.Get(9)
	b11.Text = list.Get(10)
	b12.Text = list.Get(11)
	b13.Text = list.Get(12)
	b14.Text = list.Get(13)
	b15.Text = list.Get(14)
	b16.Text = list.Get(15)
	
End Sub

 

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

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

داداش گلم ممنون بابت راهنمایی. ببین الان شما یه مقدار رندوم میسازی. من مشکلم مقدار رندوم نیس!! اصلا مقدار رندوم رو بیخیال شو. ببین من میخوام عدد 1 تا 16 رو تو باتون یک تا شونزده بچینم. ولی هر دفعه عدد یک یه جایی باشه عدد دو یه جایی.

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

در 4 ساعت قبل، sbr گفته است :

داداش چرا کد هایی که میگم رو امتحان نمیکنی ؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟/

منظورت اینه ؟ 

Screenshot_53_.png

 

Screenshot_52_.png

 

اینم سورسش 

RandomNumber

داداش من بیشتر راه ها رو رفتم. ببین الان این کد آخری رندوم عدد میده!! یعنی ممکنه همش تک رقمی باشه. من رنج اعدادم از 1 تا 16 هستش. این سورس رو الان تست میزنم. ان شا الله کا ر کنه. تشکر بابت زحمت این دو روزه

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

بایگانی شده

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

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

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