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

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

  1. #1
    کاربر جدید
    تاریخ عضویت
    آذر 1384
    محل زندگی
    ایران(اصفهان)
    پست
    14

    Smile کد محاسبه فاکتوریل با استفاده از آرایه

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

  2. #2

    f[1]=1
    for i=2 to n do
    f[i]=f[i-1]*i
    You never know what you can do until you try

  3. #3
    اجرا میشه؟

  4. #4
    ..................
    بله.
    You never know what you can do until you try

  5. #5
    البته روش بازگشتی در این زمینه هم کاربرد دارد:

    int fact ( int n )
    {
    if ( n == 0 )
    return 1;
    else
    return ( n * fact(n-1) );
    }


  6. #6

    نقل قول: کد محاسبه فاکتوریل با استفاده از آرایه

    بفرما اینم برنامش به زبان c



    #include <stdio.h>
    #include<string.h>

    char f[10000];
    char factorial[1010][10000];

    void multiply(int k)
    {
    int cin,sum,i;
    int len = strlen(f);
    cin=0;
    i=0;
    while(i<len)
    {
    sum=cin+(f[i] - '0') * k;
    f[i] = (sum % 10) + '0';
    i++;
    cin = sum/10;
    }
    while(cin>0)
    {
    f[i++] = (cin%10) + '0';
    cin/=10;
    }
    f[i]='\0';
    for(int j=0;j<i;j++)
    factorial[k][j]=f[j];

    factorial[k][i]='\0';
    }
    void fac()
    {
    int k;
    strcpy(f,"1");
    for(k=2;k<=1000;k++)
    multiply(k);
    }
    void print(int n)
    {
    int i;
    int len = strlen(factorial[n]);
    printf("%d!\n",n);
    for(i=len-1;i>=0;i--)
    printf("%c",factorial[n][i]);
    printf("\n");
    }
    int main()
    {
    int n;
    factorial[0][0]='1';
    factorial[1][0]='1';
    fac();
    while(scanf("%d",&n)==1){
    print(n);
    }
    return 0;
    }

  7. #7
    کاربر دائمی آواتار h_sadeghynejad
    تاریخ عضویت
    بهمن 1385
    محل زندگی
    Ariayee Land
    پست
    190

    Talking نقل قول: کد محاسبه فاکتوریل با استفاده از آرایه

    نقل قول نوشته شده توسط mzjahromi مشاهده تاپیک

    f[1]=1
    for i=2 to n do
    f[i]=f[i-1]*i
    به نظر من محاسبه فاكتوريل با استفاده از آرايه اين هستش كه چون محاسبه فاكتوريل يك عدد بزرگ مثلا 500 با استفاده از متغيير به صورت عادي باعث نمايش پيغام Over Flow خواهد شد بنابراين براي ضرب اعداد از آرايه استفاده مي كنند تا هنگام ضرب اعداد بزرگ با اين مشكل مواجه نشوند

  8. #8
    کاربر دائمی آواتار SamaPic
    تاریخ عضویت
    مهر 1387
    محل زندگی
    مشهد مقدس
    پست
    329

    Post نقل قول: کد محاسبه فاکتوریل با استفاده از آرایه

    با سلام خدمت دوست عزيز.
    برنامه اي كه مي خواستيد بصورت زير است ولي خواهشا اول كمي سرچ بفرماييد بعد سوال كنيد چون يكي دو هفته پيش يكي همچين برنامه اي را درخواست كرده بود.
    برتري برنامه ي بنده نسبت به برنامه ي ras007 اين كه اگر توجه كنيد كوتاه تر است.
    شما با اين برنامه تا اعداد بزرگي مي توانيد محاسبه كافي است آرايه و شرط ها را كمي تغيير دهيد



    #include "stdafx.h"
    #include <iostream>
    #include <conio.h>

    using namespace System;
    using namespace std;

    void main()
    {
    if (q)
    cout<<endl;
    cout<<"Please Enter a number : (0-100) ";
    L1:
    if (r==3)
    {
    cout<<endl<<"I can't answer you Please Enter any key to exit.";
    _getch();
    return;
    }
    cin>>n;
    if (n==0)
    {
    cout<<"Fact is 1.";
    goto L3;
    }
    if (100<n||n<0)
    {
    cout<<endl<<"The number was out of range Please Enter again: ";
    r++;
    goto L1;
    }
    a[1]=1;
    for (j=1;j<=n;j++)
    {
    for (i=1;i<1500;i++)
    a[i]=j*a[i];
    for (i=1;i<1500;i++)
    if (a[i]>9)
    {
    a[i+1]=a[i+1]+a[i]/10;
    a[i]=a[i]%10;
    }
    }
    for (i=1499;i>=1;i--)
    if(a[i]!=0)
    {
    s=i;
    break;
    }
    cout<<endl<<"Fact is : ";
    for (i=s;i>=1;i--)
    cout<<a[i];
    }
    من اين برنامه را مدت ها پيش نوشتم و در آن از گو تو استفاده كرده ام كه غير استاندارد است.
    شما كمي تغيير دهيد.

    البته Nima_NF اگر من اشتباه مي كنم بفرماييد:فكر نمي كنم استفاده از بازگشتي در اعداد بزرگ مناسب باشه . امتحان نكردم ولي فكر نكنم جواب بده چون كامپايلر جواب نمي ده .اگر اشتباه مي كنم بگوييد.

    سوال داشتيد دوباره بپرسيد.
    خدانگهدارد.

  9. #9

    نقل قول: کد محاسبه فاکتوریل با استفاده از آرایه

    با سلام
    همین کد محاسبه فاکتوریل عدد 1000 با توجه به کد شما در زبان C چجوری نوشته میشه؟؟؟؟؟

  10. #10
    کاربر دائمی آواتار SamaPic
    تاریخ عضویت
    مهر 1387
    محل زندگی
    مشهد مقدس
    پست
    329

    نقل قول: کد محاسبه فاکتوریل با استفاده از آرایه

    با سلام و عرض خسته نباشید.


    با سلام
    همین کد محاسبه فاکتوریل عدد 1000 با توجه به کد شما در زبان C چجوری نوشته میشه؟؟؟؟؟

    تاریخ پست : جمعه 06 دی 1387 20:42 عصر



    شما با اين برنامه تا اعداد بزرگي مي توانيد محاسبه كافي است آرايه و شرط ها را كمي تغيير دهيد

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

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

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