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

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

  1. #1
    کاربر دائمی آواتار Sina.iRoid
    تاریخ عضویت
    مرداد 1393
    محل زندگی
    TEH
    پست
    320

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

    سلام دوستان. ممنون میشم اگر راهنماییم کنید.

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

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


    public class Factorial {

    int fact(int n){
    int result;

    if(n == 1) return n;
    if(n == 0) return 1;

    result = fact(n - 1) * n;

    return result;
    }
    }


    و این هم کد کلاس اصلی برنامه:


    public class DriverClass {

    public static void main(String[] args){

    Factorial f = new Factorial();

    System.out.print(f.fact(4));
    }
    }


    این برنامه هیچ مشکلی نداره و اجرا میشه. اما سوال من اینه که:
    من این برنامه رو به شکل دیگه ای، یعنی با تعریف دو متغیر دیگه و قرار دادن داخل یه حلقه for، فاکتوریل و حساب کردم. اما برای این برنامه اصلا حلقه ای و ننوشتم و درست اجرا شد.
    من می خواستم دقیقا بدونم داخل کلاس فاکتوریل چه اتفاقی می افته. ( با اینکه حلقه ای وجود نداره، اما جواب درست است).
    ممنون اگر راهنماییم کنید.

  2. #2
    کاربر دائمی آواتار ahmad.mo74
    تاریخ عضویت
    مرداد 1393
    محل زندگی
    تهران
    پست
    437

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

    به اینحور توابع میگن Recursion (درباره Stack هم مطالعه کنی بیشتر طرز کارشو میفهمی) و معمولا برای حل مسائل پیچیده ریاضی ازش استفاده میکنن که با یه سرچ ساده میتونی مفصل دربارش اطلاعات کسب کنی و مثال های زیادی هم گذاشتن واسش (مثل برج هانوی و دنباله فیبوناچی و ...) ولی برای مسائل ساده مثل همین فاکتوریل و فیبوناچی خیلی توصیه نمیشه از Recursion استفاده کنید و راه های ساده تر مثل همون for نوشتن بهتره... اگر توضیحات بیشتر خواستی ما در خدمتیم :)

  3. #3
    کاربر دائمی آواتار Sina.iRoid
    تاریخ عضویت
    مرداد 1393
    محل زندگی
    TEH
    پست
    320

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

    سلام. سپاس از شما برای پاسخ.

    در مورد stack، همون مبحثی که در ساختمان داده ها هست و میگین دیگه. درسته؟

  4. #4
    کاربر دائمی آواتار ahmad.mo74
    تاریخ عضویت
    مرداد 1393
    محل زندگی
    تهران
    پست
    437

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

    سلام، خواهش میکنم

    بله منظورم مفهوم stack هست

تاپیک های مشابه

  1. سوال: فراخوانی یک متد توسط BackgroundWorker
    نوشته شده توسط erfan_urchin در بخش C#‎‎
    پاسخ: 3
    آخرین پست: سه شنبه 28 خرداد 1392, 15:30 عصر
  2. برنامه ای برای محاسبه محیط و مساحت دایره توسط یک تابع
    نوشته شده توسط zedbazi1988 در بخش برنامه نویسی با زبان C و ++C
    پاسخ: 1
    آخرین پست: دوشنبه 16 خرداد 1390, 20:16 عصر
  3. کمک برای محاسبه فاکتوریل به صورت بازگشتی
    نوشته شده توسط amir_pro در بخش برنامه نویسی اسمبلی خانواده x86
    پاسخ: 4
    آخرین پست: جمعه 22 دی 1385, 18:18 عصر
  4. راه حل یا کنترلی برای محاسبه یک عبارت محاسباتی
    نوشته شده توسط در بخش برنامه نویسی در Delphi
    پاسخ: 1
    آخرین پست: یک شنبه 13 اردیبهشت 1383, 00:04 صبح
  5. چگونگی فراخوانی فیلدهای تصویری توسط asp از access
    نوشته شده توسط vorojakt در بخش ASP.NET Web Forms
    پاسخ: 1
    آخرین پست: یک شنبه 09 شهریور 1382, 01:12 صبح

برچسب های این تاپیک

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

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