زمان کنونی: ۰۷ دى ۱۴۰۳, ۰۳:۳۰ ب.ظ مهمان گرامی به انجمن مانشت خوش آمدید. برای استفاده از تمامی امکانات انجمن می‌توانید عضو شوید.
گزینه‌های شما (ورودثبت نام)

تولیدعددتصادفی غیرتکراری

ارسال:
۲۸ شهریور ۱۳۹۱, ۰۱:۵۸ ب.ظ
تولیدعددتصادفی غیرتکراری
سلام دوستان
من میخوام بدونم تو asp چطوری میتونم اعدادتصادفی غیرتکراری تولیدکنم؟
اگرکسی در این مورد اطلاعاتی داره ممنون میشم کمکم کنه چون همش تکراری میده

چیزهای خوب به سراغ کسانی میروند که صبرمیکنند،اما چیزهای بهتر به سراغ کسانی میروند که برایش تلاش میکنند.
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
ارسال:
۲۸ شهریور ۱۳۹۱, ۰۳:۳۱ ب.ظ (آخرین ویرایش در این ارسال: ۲۸ شهریور ۱۳۹۱ ۰۳:۳۳ ب.ظ، توسط Marcel.)
RE: تولیدعددتصادفی غیرتکراری
منظورت چیه تو ASP اعداد تصادفی تولید کنی؟؟ احتمالن منظورت #C یا Vb باید باشه ، چون تولید عدد تصادفی تو ASP معنی نمیده!
اینجا توضیح داده:

مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمی‌باشید. جهت مشاهده پیوندها ثبت نام کنید.

و اینجا :

مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمی‌باشید. جهت مشاهده پیوندها ثبت نام کنید.
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
 سپاس‌گزاری شده توسط: farima69
ارسال:
۲۸ شهریور ۱۳۹۱, ۰۳:۳۸ ب.ظ (آخرین ویرایش در این ارسال: ۲۸ شهریور ۱۳۹۱ ۰۳:۳۹ ب.ظ، توسط hkarimi.)
تولیدعددتصادفی غیرتکراری
سلام.
ببینید این کد به دردتون میخوره؟ مستقیم کپیش کنید توی یه button و برنامه رو اجرا کنید.

کد:
byte[] randomNumber = new byte[1];
System.Security.Cryptography.RNGCryptoServiceProvider.Create().GetBytes(randomNu​mber);
MessageBox.Show("Random Number : " + randomNumber[0].ToString());

نمیدونم تابعی وجود داشته باشه یا نه که خودکار عدد رندوم "غیر تکراری" تولید کنه. یادش بخیر توی خود C بالای تابع Random مینوشتیم Randomize و مشکل حل میشد. البته اینجام کلاس Random داریم ولی اعداد تکراری هم تولید میکنه. با برنامه نویسی هم میشه عدد غیر تکراری تولید کرد، میشه توی یه آرایه هر بار عدد رو ذخیره کرد و بلافاصله بعد از تولید عدد جدید اونو توی آرایه سرچ کنیم.

خدایا افکنم در چه خدایا بنهم اندر ره --- ز هر امرت بوم راضی منم عبد و تویی قاضی
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
 سپاس‌گزاری شده توسط: farima69
ارسال:
۲۸ شهریور ۱۳۹۱, ۰۷:۰۱ ب.ظ (آخرین ویرایش در این ارسال: ۲۸ شهریور ۱۳۹۱ ۰۷:۱۰ ب.ظ، توسط farima69.)
RE: تولیدعددتصادفی غیرتکراری
ممنون دوست عزیز،بله منظورم این بود که چه به زبان vb یا # c کسی اطلاعاتی داره راهنماییم کنه

مرسی از کمکتون ولی هنوز مشکلم حل نشدهHuh
اگر کسی میدونه چطوری عدد تصادفی غیرتکراری تو vb.net تولیدکنم ممنون میشم کمک کنه

چیزهای خوب به سراغ کسانی میروند که صبرمیکنند،اما چیزهای بهتر به سراغ کسانی میروند که برایش تلاش میکنند.
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
ارسال:
۲۸ شهریور ۱۳۹۱, ۰۸:۲۲ ب.ظ (آخرین ویرایش در این ارسال: ۲۸ شهریور ۱۳۹۱ ۰۸:۲۳ ب.ظ، توسط hkarimi.)
تولیدعددتصادفی غیرتکراری
سلام.
این کد معادل همون کد بالا توی VBه. مث شما که #C زیاد کار نکردید منم VB زیاد کار نکردم ولی معادل سازیش طولی نکشید و این به لطف دات نته.
ان شاء ا... که مشکلتون حل شده باشه.

کد:
Dim r(10) As Byte
System.Security.Cryptography.RNGCryptoServiceProvider.Create().GetBytes(r)
MessageBox.Show("Random Number : " + r(0).ToString())

خدایا افکنم در چه خدایا بنهم اندر ره --- ز هر امرت بوم راضی منم عبد و تویی قاضی
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
 سپاس‌گزاری شده توسط: farima69
ارسال:
۲۸ شهریور ۱۳۹۱, ۰۹:۰۳ ب.ظ
RE: تولیدعددتصادفی غیرتکراری
بهترین کار اینه که خودت یه کلاس واسه اینکار بنویسی ، مثلا :

کد:
Public Class RandomNumber
    Dim NumDomain As New ArrayList      ' The Numbers to be generated
    Dim Nums As New ArrayList           ' The Numbers waiting to be generated

    Sub New(ByVal Start As Integer, ByVal Finish As Integer)
        ' Sequential Numbers
        Dim I As Integer
        For I = Start To Finish
            NumDomain.Add(I)
        Next

        AddItems()
    End Sub

    Sub New(ByVal ParamArray Numbers() As Integer)
        ' Numbers in a Param Array
        Dim Number As Integer
        For Each Number In Numbers
            NumDomain.Add(Number)
        Next

        AddItems()
    End Sub

    Private Sub AddItems()

        Nums.Clear()
        ' Insert All Numbers Into the Array
        Dim I As Integer
        For I = 0 To NumDomain.Count - 1
            Nums.Add(NumDomain(I))
        Next
    End Sub

    Public Function GetRandomNumber() As Integer
        If Nums.Count = 0 Then
            ' Re-add the Items, when all the numbers have been generated.
            AddItems()
        End If

        ' Return a Random Item and Remove it from the List
        Dim Ch As Integer

        ' Using Timer as the seed for the Random Number Generation
        Randomize(Microsoft.VisualBasic.Timer)

        ' Random Number is generated within the range.
        Ch = 0 + CInt(Rnd() * (Nums.Count - 1))

        Dim Num As Integer = Nums(Ch)
        Nums.RemoveAt(Ch)
        Return Num
    End Function
End Class

بر اساس این کد مثلا اگه بخوای یه عدد تصادفی بین ۰ تا ۱۰ تولید کنی :

کد:
Dim generator As RandomNumber = new RandomNumber(0, 10)
Dim num As Integer = generator.GetRandomNumber()
۱
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
 سپاس‌گزاری شده توسط: farima69
ارسال:
۲۸ شهریور ۱۳۹۱, ۱۱:۴۸ ب.ظ
RE: تولیدعددتصادفی غیرتکراری
ممنونم بابت کمک هاتون هردو ایده واقعا جالب بودنSmile
فقط دوست عزیزhkarimi اگر بخوام بهش یه محدوده بدم تا داخل اون محدوده رندوم بسازه شما میدونید داخل دستوری که دادین چطور باید محدوده تعیین کنم؟

چیزهای خوب به سراغ کسانی میروند که صبرمیکنند،اما چیزهای بهتر به سراغ کسانی میروند که برایش تلاش میکنند.
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
ارسال:
۲۹ شهریور ۱۳۹۱, ۱۱:۲۱ ق.ظ (آخرین ویرایش در این ارسال: ۲۹ شهریور ۱۳۹۱ ۱۱:۲۱ ق.ظ، توسط hkarimi.)
تولیدعددتصادفی غیرتکراری
سلام. خواهش میکنم، وظیفس.
دوتا نکته. اولاً نمیدونم چجوری برای کدی که خودم گذاشتم محدوده تعیین کنم. یکم با کده بازی کنید، شاید تونستین پیدا کنید.
نکته دوم اینکه منم به کدی که دوستمون آقای Marcel لطف کردن و گذاشتن بر خورد کردم، تشکر از ایشون. اما کده رو که امتحان کردم دیدم عدد تکراری هم تولید میکنه. عکس محدوده ۰ تا ۱۰ رو میذارم.
از
مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمی‌باشید. جهت مشاهده پیوندها ثبت نام کنید.
ببینید.

خدایا افکنم در چه خدایا بنهم اندر ره --- ز هر امرت بوم راضی منم عبد و تویی قاضی
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
ارسال:
۲۹ شهریور ۱۳۹۱, ۰۱:۵۲ ب.ظ (آخرین ویرایش در این ارسال: ۲۹ شهریور ۱۳۹۱ ۰۱:۵۳ ب.ظ، توسط Marcel.)
RE: تولیدعددتصادفی غیرتکراری
ولی فکر کنم منظور این بوده که یک دنباله تکراری تولید نشه.علت اینکه اینجا از تابع Randomize با سید تایمر سیستم هم استفاده شده همینه.
ما یه درس اختیاری پاس کردیم به اسم شبیه سازی کامپیوتری ، یه فصلش راجبه تولید اعداد تصادفی بود ، اول اینکه اصولا توابع کتابخونه اییه دات نت بهترین راه واسه تولید یه دنباله تصادفی نیستن و روش های تولید اعداد تصادفی باید جنبه ریاضی قوی داشته باشند ، اگه قراره اعداد تصادفی واقعی باشند،مثلا یه شیوه به دست اوردن اعداد تصادفی دقیق استفاده ار سرعت حرکت مولکول های هواست!!! که خیلی دقیقه ولی میتونه تکراری هم باشه.و اینکه روش های خوبی واسه تولید بر اساس یه پایه ریاضی قوی هست ، که پیاده سازیشونم زیاد سخت نیست مثلا روش تاث ورث ، پیمانه ای ، فیبوناچی که با یکم سرچ و یکم وقت میشه نوشتشون ، و ازمونایی هم واسه اینکه دید یه تصادفی چقدر مناسبه هم وجود داره.
ولی من مطمئنم وجود اعداد تکراری تو یه دنباله از اعداد تصادفی مغایرتی با تصادفی بودنشون نداره.

حالا باز این دوستمون میدونه که با این اعداد میخواد چه کار کنه.
موفق باشید.
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
ارسال: #۱۰
۳۰ شهریور ۱۳۹۱, ۰۲:۱۵ ب.ظ
RE: تولیدعددتصادفی غیرتکراری
سلام مرسی دوستان از راهنمایی هاتون
جناب کریمی من یکم با اون کد بازی کردم ولی نتونستم در بیارم ولی باز تلاشمو میکنم،ممنون ،درسته دقیقا غیر تکراری تولید میکرد همون که من میخواستم فقط حیف محدوده نداره.
جناب marcel هم درست میگن روش های ریاضی و... هست ولی من نمیخوام خیلی پیچیدش کنم چون من روی الگوریتمی کار میکنم که اعداد باید حتما تصادفی غیرتکراری باشند تا الگوریتمم جواب بده.
بازم ممنونم بابت کمکاتون

چیزهای خوب به سراغ کسانی میروند که صبرمیکنند،اما چیزهای بهتر به سراغ کسانی میروند که برایش تلاش میکنند.
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
 سپاس‌گزاری شده توسط: hkarimi


پرش به انجمن:

Can I see some ID?

به خاطر سپاری رمز Cancel

Feeling left out?


نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. رمزت رو فراموش کردی؟ اینجا به یادت میاریم! close

رمزت رو فراموش کردی؟

Feeling left out?


نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. close