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

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

  1. #1
    سحر
    مهمان

    Tick برنامه بدست آوردن فاکتوریل یک عدد بزرگ

    سلام
    من می خوام یه برنامه بنویسم که بتونه فاکتوریل یه عدد بزرگ رو هم بدست بیارم چون من الان و با توجه به اینکه اگه عددم رو از نوع long int انتخاب کنم تا اعداد زیر 20 رو فقط جواب میده . البته نظر خودم اینه که یه ارایه تعریف کنم و یک عدد صحیح که در ابتدا مقدار عدد برابر 2و خانه اخر ارایه برابر 1 باشه و از ضرب یه ارایه در یک عدد صحیح استفاده کنم که با استفاده از یه شمارنده در هر بار یکی به عدد صحیح اضافه میشه تا به عددی که کاربر وارد کرده برسه .
    این عدد میخوام هر عدد دلخواهی و یا حداقل بزرگترین عددی رو که میشه براش این مقدار رو بدست اورد باشه .
    اگه کسی هست که قبلآ این برنامه رو نوشته باشه خواهش میکنم کدهاش رو برا منم بزاره تا از اونها استفاده کنم و یا اینکه حداقل قطعه کد ضرب اون عدد در ارایه رو برام بنویسیه اخه من هر چی مینویسم درست جواب نمیده . اینم بگم که من تازه کار هستم و خیلی سی رو به صورت پیشرفته بلد نیستم .

  2. #2
    کاربر دائمی آواتار Rambod
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    تهران
    سن
    45
    پست
    404
    من فکر نمی کنم بشه همچین کاری کرد.

  3. #3
    کاربر جدید
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    ايران، تهران
    پست
    10
    سلام
    آقا رامبد کار نشد نداره.....
    من قبلا ( به قول مرحوم اینپراز زمان فنچولی ) یعنی اون موقه که زبان سی داشتیم این برنامه رو نوشتم . منتها الان اصلا حالشو ندارم که دوباره حلقه هاشو بنویسم.
    فقط باید بگم میتونی از آرایه استفاده کنی.
    با دو سه تا حلقه مناسب میتونی این کارو انجام بدی.البته حتی میتونی پا رو از اینم فرا تر بذاری و حتی عدد اول رو هم توی آرایه بذاری. فقط حواست باشه آرایه دوم ( یعنی آرایه ای که باید جواب رو ذخیره کنه باید بزرگ باشه). بعد باید با حلقه دونه دونه ضرب هارو انجام بدی و ده بر یک هارو (همون کری) به عدد بعدی اضافه کنی و الی آخر............
    البته میگم حوصله ندارم دوباره حدود حلقه ها و شمارنده های آرایه رو حساب کتاب کنم.

  4. #4
    راس میگه یکی از روش هاش ساختن متغیره (البته متغیر نیست فقط مکانی برای ذخیره ایت

  5. #5
    سلام،چرا نشه؟
    پروژه آخر ترم پاسکال من بود،باهاش 50000 فاکتوریل رو هم محاسبه کردم ،بگیرش ولی روش حسابی فکر کن تا منطقشو بگیری،ما عدد رو به جای متغیر در یه آرایه ذخیره می کنیم.!
    دعای ما یادت نره! :oops:

  6. #6
    you can easily convert it to ++C
    chears

  7. #7
    اگر بخوای فاکتوریل یک عدد بزرگ رو حساب کنی یک راه دیگرش اینه که:
    عددت رو می‌ذاری توی فرمول استرلینگ بعد اگر از ‍C استفاده می کنی جواب بدست اومده از فرمول استرلینگ رو که عدد خیلی بزرگی باید باشه بذار توی یک متغییر دینامیک.این جوری سرعت برنامت بیشتر می شه ولی ایرادش اینه که جواب بدست اومده دقیق نیست.
    تازه اگر یه ذره زرنگ باشی می تونی حتی از فرمول استرلینگ هم استفاده نکنی.

  8. #8

    Angry

    نقل قول نوشته شده توسط C#‎Developer مشاهده تاپیک
    سلام،چرا نشه؟
    پروژه آخر ترم پاسکال من بود،باهاش 50000 فاکتوریل رو هم محاسبه کردم ،بگیرش ولی روش حسابی فکر کن تا منطقشو بگیری،ما عدد رو به جای متغیر در یه آرایه ذخیره می کنیم.!
    دعای ما یادت نره! :oops:
    چیو باید بگیریم ؟!

  9. #9
    این پست برای 4 سال قبل هست ، چند تا پست پایین تر بحث جدیدی دوباره ایجاد شده که می توانستید همانجا پیگیری کنی و یا تاپیک جدیدی باز کنید ، نیاز نبود این پست قدیمی و بی نتیجه را دوباره به جریان بیاندازید.

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

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