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

نام تاپیک: اموزش الگوریتم و حل مسله

  1. #1

    اموزش الگوریتم و حل مسله

    سلام.

    اگه تایپیک رو بد جایی زدم معزرت میخوام .

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

    این سوالات لول داشته باشه مثلا از دیپلم تا دکترا

    چطوره مثلا من یه دونه میگم شما ببینین چطوره در حد دیپلم

    دو به توانه هزار ؟

    برنامه شو بنویسید

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

  2. #2

    نقل قول: اموزش الگوریتم و حل مسله

    سلام.

    دوستان کس نظری نداره ؟

  3. #3

    نقل قول: اموزش الگوریتم و حل مسله

    سلام.


    بابا شما چقدر ادمو تحویل میگیرنننننننننن .

    بابا یه نفر یه چیزی بگه دیگه

  4. #4
    کاربر دائمی
    تاریخ عضویت
    فروردین 1388
    محل زندگی
    تهران
    پست
    227

    نقل قول: اموزش الگوریتم و حل مسله

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

    1- تجربه نشون داده یه همچین تاپیکهایی بعد از یه مدتی نه چندان طولانی به خاک خوردن میفته ! احتمالاً بعد از یه مدتی هم خود شما بهش سر نمیزنی :-/

    2- برنامه ای که عدد دو به توان 1000 رو محاسبه میکنه هم :
    int a[1000]={1,0},l=1;
    for(int c=0;c<1000;C++‎‎‎‎‎){
    int carry=0;
    for(int i=0; i<l;i++){
    int m = carry + a[i]*2;
    carry = m/10;
    a[i] = m%10;
    }
    if(carry) a[l++]=1;
    }

    for(int i=l-1;i>=0;i--)
    cout<<a[i];
    اگر بازم سوالی بود در خدمتم :)
    آخرین ویرایش به وسیله qwerty11 : چهارشنبه 08 اردیبهشت 1389 در 14:45 عصر

  5. #5

    نقل قول: اموزش الگوریتم و حل مسله

    سلام.

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

    واقعا ممنون

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

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

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

    ممون دوست عزیز بازم

  6. #6

    نقل قول: اموزش الگوریتم و حل مسله

    نقل قول نوشته شده توسط qwerty11 مشاهده تاپیک
    سلام دوست عزیز

    1- تجربه نشون داده یه همچین تاپیکهایی بعد از یه مدتی نه چندان طولانی به خاک خوردن میفته ! احتمالاً بعد از یه مدتی هم خود شما بهش سر نمیزنی :-/

    2- برنامه ای که عدد دو به توان 1000 رو محاسبه میکنه هم :

    int a[1000]={1,0};



    for(int c=0;c<1000;C++‎‎‎){

    int carry=0,i=0;
    while(a[i] || carry){
    int m = carry + a[i]*2;
    carry = m/10;
    a[i] = m%10;
    i++;
    }
    }

    int len=999;
    for(;a[len]==0;len--);

    for(;len>=0;len--)
    cout<<a[i];

    اگر بازم سوالی بود در خدمتم :)





    با سلام و تشکر از شما دوست گرامی من هم معتقدم که شما الگوریتم این کد و همینطور کامنتهای توضیحی رو هم بیان بفرمایید چون من کلا از منطق ریاضی که بکار رفته سر در نیاوردم
    در ضمن برنامه مشکلات داره یکی این که متغیر های i و carry داخل حلقه تعریف شده اند که این باگ خطر داره
    دوم این که متغیر i که در داخل بلوک تعریف شده در آخر برنامه خارج از بلوک استفاده شده که منطقی نیست.
    منتظر توضیحات کامل شما هستم
    شاد باشید

  7. #7
    کاربر دائمی
    تاریخ عضویت
    فروردین 1388
    محل زندگی
    تهران
    پست
    227

    نقل قول: اموزش الگوریتم و حل مسله

    سلام،
    ولی من خیلی دوست دارم که یکم راهنمایی بشم تا اینکه کلا یهدفع سورس برنامه رو ببینم
    دوست عزیز این سورس برنامه بود دیگه ! فقط include و main توش نبود دیگه ...
    و اخر اینکه اگه میشه شما به تایپیک هر ورز سر بزن چون حدالقل من چند تا سوال میپرسم شما جواب بده. راستی اگه میشه در مورد این سورس یکم توضیح بده و از این به بعد همیشه یکم رهانمایی کن سورس رو نزار. ممون دوست عزیز بازم
    باشه، اونم باشه.
    با سلام و تشکر از شما دوست گرامی من هم معتقدم که شما الگوریتم این کد و همینطور کامنتهای توضیحی رو هم بیان بفرمایید چون من کلا از منطق ریاضی که بکار رفته سر در نیاوردم
    در ضمن برنامه مشکلات داره یکی این که متغیر های i و carry داخل حلقه تعریف شده اند که این باگ خطر داره
    دوم این که متغیر i که در داخل بلوک تعریف شده در آخر برنامه خارج از بلوک استفاده شده که منطقی نیست.
    منتظر توضیحات کامل شما هستم
    شاد باشید
    سلام، راستش من این برنامه رو تو یه فایل text نوشتم و دیگه اجراش نکردم چون مطمئن بودم درسته اما خوب مثل اینکه اشتباهات کوچیک و بزرگی داشت(!) اما ویرایشش کردم و الآن درسته. اینکه متغیر carry داخل حلقه تعریف شده مشکلی نیست و خطر هم نداره... اشتباه از من بود نه از متغیرهایی که داخل حلقه تعریف شدن.

    و اما برنامه :
    آرایه ی a در هر مرحله عدد 2 به توان c رو نگهداری میکنه و برای اینکه 2 به توان c+1 رو حساب کنیم کافیه که آرایه ی a رو در 2 ضرب کنیم اما نه به این صورت که تک تک اعضاشو تو 2 ضرب کنیم. a عدد 2 به توان c رو به صورت معکوس ذخیره میکنه یعنی رقم یکان 2 به توان c خونه ی اول a ، رقم دهگان 2 به توان c خونه ی دوم a و ... چرا این کار رو کردم !؟ فکر کنید ببینید اگه معکوس ذخیره نمیکردم چه مشکلاتی پیش میومد...
    خوب حالا برای ضرب کردن آرایه ی a تو عدد 2 مثل ضرب معمولی عمل میکنیم. carry هم اگر یک بشه مشخص میکنه که تو این مرحله 10 بر یک داریم... متغیر L هم طول عدد 2 به توان c رو نگهداری میکنه و مشخص میکنه که هر مرحله چندبار باید ضرب انجام بدیم... فکر نمیکنم دیگه حرفی باقی مونده باشه، خودتون هم اگر یه بار برنامه رو trace کنین بهتر کار دستتون میاد...

  8. #8

    نقل قول: اموزش الگوریتم و حل مسله

    سلام.

    بچه ها اماده ین که من سوال بعدی رو بگم ؟

  9. #9

    نقل قول: اموزش الگوریتم و حل مسله

    سلام.

    اقا من یه سوال دیگه میزارم و خودم نتونستم حل کنم چون سوال کاملا ریاضی هست

    دوستم میگفت این مبحث رو توی سوم خوندم

    http://m0trix.persiangig.com/document/pa.pdf

  10. #10

    نقل قول: اموزش الگوریتم و حل مسله

    نقل قول نوشته شده توسط M0TR!X مشاهده تاپیک
    سلام.

    اقا من یه سوال دیگه میزارم و خودم نتونستم حل کنم چون سوال کاملا ریاضی هست

    دوستم میگفت این مبحث رو توی سوم خوندم

    http://m0trix.persiangig.com/document/pa.pdf
    دوست عزیز لینک شما error میده و کار نمیکنه چک کنید لطفاً

  11. #11

    نقل قول: اموزش الگوریتم و حل مسله

    سلام.

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

    http://m0trix.persiangig.com/document/pa.pdf

  12. #12

    نقل قول: اموزش الگوریتم و حل مسله

    نقل قول نوشته شده توسط M0TR!X مشاهده تاپیک
    سلام.

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

    http://m0trix.persiangig.com/document/pa.pdf

    درست شد ممنون

    اما خداییش حوصله خوندن دوباره ی احتمالات از توان اینجانب خارجه امیدوارم داورا به نفع بگیرن :)

  13. #13

    نقل قول: اموزش الگوریتم و حل مسله

    سلام.

    راستش من رشته ام ریاضی نیست به خاطره همین نتونستم حل کنم و دوستم حل کرده گفتم به منم بده گفت بدم خیچی نمیفهمی چون خودم هم نفهیمدیم چی نوشتم

    عیب نداره یه سوال دیگه میدم

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

  14. #14
    کاربر دائمی
    تاریخ عضویت
    فروردین 1388
    محل زندگی
    تهران
    پست
    227

    نقل قول: اموزش الگوریتم و حل مسله

    سلام،

    اول در مورد سوال قبلیت بگم که من جوابشو بلدم اما توضیحش یکم سخته برام. فقط همینقدر بگم که نه الگوریتم باید بلد باشی و نه ریاضیات ! یعنی ریاضی دوم دبیرستان کاملاً کفایت میکنه. حالا اگه خیلی جوابش برات مهمه بگو یه کاریش میکنم.

    و اما زیرمجموعه ها. من 3 روش برای این کار میشناسم :

    1- زیرمجموعه های یه مجموعه ی n عضوی = زیرمجموعه های n-1 عضو اولش + اضافه کردن عنصر n ام به تمام زیرمجموعه های n-1 عضو اولش. (راه حل بازگشتی)

    2- این راه حل که غیر بازگشتیه به این صورته : ابتدا مجموعه ی تهی را در نظر میگیریم. سپس در هر مرحله، کوچکترین i ای را پیدا میکنیم که متعلق به مجموعه نباشد. این i را به مجموعه اضافه میکنیم و همهی عددهای کوچکتر از i را از مجموعه حذف میکنیم. اگر به همین صورت ادامه بدیم در هر مرحله زیرمجموعه ای جدید به دست میاریم و همه ی زیر مجموعه های مجموعه ی {n,...,3,2,1} بدین ترتیب تولید میشوند.

    3- - نمایش باینری اعداد 0 تا 2 به توان n منهای یک را بنویسید. برای هر عدد یک نمایش n رقمی از صفر و یک وجود دارد. یک بودن خانه ی i ام را به منزله ی وجود داشتن عنصر i ام در زیرمجموعه و صفر بودن خانه ی i ام را به معنی وجود نداشتن عنصر i ام در زیرمجموعه در نظر بگیرید. مثلاً برای n=3 داریم :
    0 = 000 = {}
    1 = 001 = {1}
    2 = 010 = {2}
    3 = 011 = {1,2}
    4 = 100 = {3}
    5 = 101 = {1,3}
    6 = 110 = {2,3}
    7 = 111 = {1,2,3}

  15. #15

    نقل قول: اموزش الگوریتم و حل مسله

    سلام.

    شما میگی ریاضی 2 کافیه ! سوال قبلی من در مورد درس احتمال سال سوم ریاضی هست

  16. #16
    کاربر دائمی
    تاریخ عضویت
    فروردین 1388
    محل زندگی
    تهران
    پست
    227

    نقل قول: اموزش الگوریتم و حل مسله

    سلام،

    اوکی ! پس ولش کن.
    فقط معلوم نیست من که رشتم ریاضی نیست چجوری راه حلشو بلدم
    دوست عزیز همین که میری میشنی سر کلاس مبانی بهت میگن عدد x رو تو مبنای 2 ببر و این خودش یعنی ریاضی !
    درسی به نام آمار و احتمال هم برای دانشجوهای کامپیوتر وجود داره...

    اما اگه اصرار داری که واسه حل کردن اون سوال باید پروفسور ریاضی باشیم باید بگم که اوکی ولش کن.
    آخرین ویرایش به وسیله qwerty11 : یک شنبه 12 اردیبهشت 1389 در 10:19 صبح

  17. #17

    نقل قول: اموزش الگوریتم و حل مسله

    سلام.

    خوب بلاخره باید ادم یه سری فرمول ها رو بدنه یا نه ؟ شما حساب کن یه نفر اگه ندونه 2*2 چند میشه ؟ چطور میتونه برنامه بنویسه

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

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