نمایش نتایج 1 تا 10 از 10

نام تاپیک: تولید اعداد تصادفی بر اساس هفته

  1. #1

    تولید اعداد تصادفی بر اساس هفته

    با سلام من در برنامم میخوام از 0تا 13 اعداد تصادفی غیرتصادفی بدین صورت تولید کنم که هر هفته اعداد تصادفی تولید کند یعنی این هفته مثلا اعداد 2 8 0 6 3 1 7 5 11 10 12 4 13 9 تولید کند و هفته بعد یه جور دیگه
    لطفا کمکم کنید

  2. #2
    کاربر دائمی آواتار mehrsa_fr
    تاریخ عضویت
    دی 1388
    محل زندگی
    تهران
    سن
    32
    پست
    168

    نقل قول: تولید اعداد تصادفی بر اساس هفته

    اعداد تصادفی اعداد با قاعده ای نیشتن که تکراری نده و هفته ی بعد یک جور دیگه تولید کنه اگه بودن اسمشو اعداد تصادفی نمیزاشتن ولی برای تولید اعداد تصادفی(با تکرار) بین 0،13 از کد زیر میشه استفاده کرد

    Random
    r = newRandom();
    int Temp = r.Next(0,13);
    آخرین ویرایش به وسیله mehrsa_fr : شنبه 19 تیر 1389 در 08:31 صبح

  3. #3
    کاربر دائمی آواتار hamid.shekasteh
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    شیراز
    پست
    192

    نقل قول: تولید اعداد تصادفی بر اساس هفته

    از کد زیر می تونید استفاده کنید:

    Random rnd = new Random();

    for (int i = 0; i < 7; i++)//For Week Day
    {
    int intRandom = rnd.Next(10, 100);
    MessageBox.Show(intRandom.ToString());
    }

  4. #4
    کاربر دائمی آواتار vandermond
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    رايانه
    پست
    526

    نقل قول: تولید اعداد تصادفی بر اساس هفته

    من الان متاسفانه نميتونم كد بنويسم (VS رو پاك كردم كلا) ولي يادم مياد يكي از دوستان گفته بود كه پارامتر سوم Random.Next رو ميتوني شعاعي بدي كه عدد بعدي توي اون شعاع بازه عدد اول نباشه (نميدونم خوب گفتم يا نه. مثلا اگه از 0 تا 13باشه و پارامتر سوم رو بدي 1، اونوقت اگه عدد تصادفي توليدي اول 5باشه، ديگه 4و5و6 رو از بازه بعدي حذف ميكنه و باز براي بعدي هم بازه رو كوچك تر ميكنه تا كل بازه رو پوشش بده. بعد اون دوباره از اول و يه عدد تصادفي ديگه تو بازه اصلي ‌(اين مطالب رو اون فرد گفته بود و من تست نكردم و نميتونم تست كنم فعلا))
    با استفاده از اين احتمالا كارتون راه ميفته.

  5. #5
    کاربر دائمی آواتار mehrsa_fr
    تاریخ عضویت
    دی 1388
    محل زندگی
    تهران
    سن
    32
    پست
    168

    نقل قول: تولید اعداد تصادفی بر اساس هفته


    public
    staticint[] a = newint[13];
    staticvoid Main(string[] args)
    {
    Random r = newRandom();
    for (int i = 0; i < 13; i++)
    {
    int Temp = r.Next(0, 14);
    while (Check(Temp))
    {
    Temp = r.Next(0, 14);
    }

    a[i] = Temp;
    }
    foreach (int x in a)
    {
    Console.WriteLine(x);
    }
    Console.ReadLine();

    }
    publicstaticbool Check(int Number)
    {
    bool ch = false;
    foreach (int x in a)
    {
    if (x == Number)
    {
    ch =
    true;
    }
    }
    return ch;
    }
    }

  6. #6
    کاربر دائمی آواتار vandermond
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    رايانه
    پست
    526

    نقل قول: تولید اعداد تصادفی بر اساس هفته

    نقل قول نوشته شده توسط vandermond مشاهده تاپیک
    من الان متاسفانه نميتونم كد بنويسم (VS رو پاك كردم كلا) ولي يادم مياد يكي از دوستان گفته بود كه پارامتر سوم ...Random.Next
    واقعا متاسفم. الان كه VS نصب شد رفتم ديدم كه ....(پارامتر سوم!!!)
    احتمالا اون متدي كه من ديدم دست ساز بوده و باز هم مراتب عذر خواهي رو ...(نميدونستم چه فعلي بايد بگم)

  7. #7

    نقل قول: تولید اعداد تصادفی بر اساس هفته

    دوست عزیز r_khan ، با متود Rnd.Next این تضمین همیشه وجود نداره که اعداد ما همیشه غیر تکراری هستن .

    اگه واقعا قراره اعدادی که تولید بشن ، تکراری توش نباشه دیگه زیاد به اعداد تصادفی مربوط نمیشه .

    یه روش نسبتا بهینه اینه که : شما اعداد 0 تا 13 رو داخل یه لیست (کالکشن جنریک) قرار بدید و بعدش

    هربار با یه الگوریتم کاربردی یک چینش خاصی از اعداد رو انتخاب کنید .






  8. #8
    کاربر دائمی آواتار hossein_ignore
    تاریخ عضویت
    فروردین 1389
    محل زندگی
    بابلسر
    سن
    33
    پست
    132

    نقل قول: تولید اعداد تصادفی بر اساس هفته

    این یه DLL برای ایجاد عددهای رندوم با فاصله ی مشخص
    مثال:
    IgNoReCLS.RandomNumber r = new IgNoReCLS.RandomNumber();
    label1.Text = r.NextRandom(0, 10, 2).ToString();

    مثلا اگه minimumLength(فاصله)رو 2 بدی، اگه عدد 5 تولید شد، دیگه 3و4و5و6و7 تولید نمیشه! تا زمانی که امکان داشته باشه عدد تکراری نمیده، وقتی همه ی اعداد ممکن تو اون بازه رو ایجاد کرد، دوباره میاد یه سری اعداد رندوم دیگه تو اون بازه ایجاد می کنه
    https://barnamenevis.org/attach...3&d=1278691045

  9. #9

    نقل قول: تولید اعداد تصادفی بر اساس هفته

    منظور من این نبود . منظورم اینه که ترتیب اعداد این هفته با هفته بعد فرق کنه نه این که با هر بار اجرای برنامه اعداد عوض بشوند این هفته یه ترتیبی از اعداد 0تا13(مثلا 2 6 9 3 10 و...) ایجاد شده و تا اخر هفته تغییر نمیکنه (حالا با هر بار اجرای برنامه) و هفته بعد که شد این ترتیب اعداد عوض میشه (مثلا 10 8 9 0 6 و ...)

  10. #10

    نقل قول: تولید اعداد تصادفی بر اساس هفته

    دوست عزیز اینم خدمت شما ، با هر بار اجرای این تابع شما لیستی متفاوت از اعداد بین 0 تا 13 را دریافت

    خواهید نمود .

    یه تابع واسه اینکار :


    string Random_Days()
    {
    List<int> list = new List<int>();
    for (int i = 0; i <= 13; i++)
    list.Add(i);
    string res = "";
    var query = list.OrderBy(a => Guid.NewGuid());
    foreach (var q in query)
    {
    res += q.ToString() + " / ";
    }
    return res;
    }


    فراخوانی :


    private void button1_Click(object sender, EventArgs e)
    {
    MessageBox.Show(Random_Days());
    }


    موفق و پیروز باشید .
    عکس های ضمیمه عکس های ضمیمه
    • نوع فایل: jpg a.jpg‏ (19.9 کیلوبایت, 15 دیدار)
    • نوع فایل: jpg b.jpg‏ (19.8 کیلوبایت, 14 دیدار)
    • نوع فایل: jpg c.jpg‏ (18.5 کیلوبایت, 17 دیدار)






قوانین ایجاد تاپیک در تالار

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