تبلیغات :
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




نمايش نتايج 1 به 9 از 9

نام تاپيک: یک سوال از ایجاد اعداد تصادفی

  1. #1
    داره خودمونی میشه cpplover's Avatar
    تاريخ عضويت
    Dec 2007
    محل سكونت
    esfarayen
    پست ها
    127

    پيش فرض یک سوال از ایجاد اعداد تصادفی

    من نیاز دارم تا در هر بار اجرای برنامه یک عدد تصادفی ایجاد کنم اما مشکلی که وجود داره اینه که تابع rand هم (البته به نظر من) اعداد تصادفی رو به ترتیب ایجاد میکنه یعنی اگه مثلا در یک بار اجرای برنامه عدد 2 رو تولید کنه در دفعات بعدی اجرای برنامه هم همین عدد تولید میشه مکنه کسی بگه چطور میشه این مشکل رو رفع کردو در هر بار اجرای برنامه عدد مختلفی تولید کرد؟

  2. #2
    پروفشنال hoseinquest's Avatar
    تاريخ عضويت
    Dec 2004
    محل سكونت
    خودم ‌اينجا‌ قلبم ‌بين‌الحرمين
    پست ها
    793

    پيش فرض

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

  3. #3
    پروفشنال hoseinquest's Avatar
    تاريخ عضويت
    Dec 2004
    محل سكونت
    خودم ‌اينجا‌ قلبم ‌بين‌الحرمين
    پست ها
    793

    پيش فرض

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

  4. #4
    اگه نباشه جاش خالی می مونه
    تاريخ عضويت
    Oct 2007
    پست ها
    205

    پيش فرض

    من نیاز دارم تا در هر بار اجرای برنامه یک عدد تصادفی ایجاد کنم اما مشکلی که وجود داره اینه که تابع rand هم (البته به نظر من) اعداد تصادفی رو به ترتیب ایجاد میکنه یعنی اگه مثلا در یک بار اجرای برنامه عدد 2 رو تولید کنه در دفعات بعدی اجرای برنامه هم همین عدد تولید میشه مکنه کسی بگه چطور میشه این مشکل رو رفع کردو در هر بار اجرای برنامه عدد مختلفی تولید کرد؟
    شما در اول برنامه تون از تابع srand استفاده کنین تا نقطه شروع اعداد تصادفی که انتخاب میشن رو تغییر بدین.این تابع یه پارامتر میخواد که متونین از خروجی تابع time برای دادن یه عدد به این تابع استفاده کنین:

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    واسه این کار باید time.h رو include کنین.

  5. #5
    داره خودمونی میشه cpplover's Avatar
    تاريخ عضويت
    Dec 2007
    محل سكونت
    esfarayen
    پست ها
    127

    پيش فرض

    در MSDN یک مثال در محیط C++ اومده در اونجا قبول دارم که اعداد کاملا تصادفی هستند این مثال :

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید


    در ویژوال سی نظر من متفاوته من در تابع مربوط به یک دکمه کد زیر رو گذاشتم نمی دونم چرا همیشه 7 تولید میشه ؟(Z متغیر یک text box هست)
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    }
    درسته با فشردن متوالی کلید اعداد مختلفی ایجاد میشه اما در اجرای اول و اولین فشار کلید 7 ایجاد میشه
    ضمنا srand رو در جاهای دیگه هم گذاشتم اما فرقی نکرد

  6. #6
    داره خودمونی میشه cpplover's Avatar
    تاريخ عضويت
    Dec 2007
    محل سكونت
    esfarayen
    پست ها
    127

    پيش فرض

    حرفم رو پس می گیرم
    Srand داده ها را تصادفی می کند اما نرخ ایجاد تغییر آن تا حدی کند است همان برنامه ای را که گفتم نیم ساعت بعد عدد دیگری را در خروجی نمایش میداد

    اما ممکنه بگید چطور این روند رو میشه تندتر کرد ؟
    Last edited by cpplover; 17-02-2008 at 22:18.

  7. #7
    اگه نباشه جاش خالی می مونه
    تاريخ عضويت
    Oct 2007
    پست ها
    205

    پيش فرض

    شما srand رو نباید قبل از rand بگذارین. توی OnInit دیالوگ بگذارین قطعا باید درست کار کنه!

  8. #8
    داره خودمونی میشه atousamehr's Avatar
    تاريخ عضويت
    Dec 2007
    پست ها
    62

    11


    اين برنامه اعداد 1 تا 9 را به طور تصادفي در يك ماتريس 3*3 چاپ مي كند
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

  9. #9
    پروفشنال martin_superhuman's Avatar
    تاريخ عضويت
    Dec 2006
    محل سكونت
    بهبهان
    پست ها
    604

    پيش فرض

    به Randomize Timer فکر کردید؟

Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •