سلام
دوستان یه برنامه به زبان ++c میخواستم که 50فاکتوریل را محاسبه کنه و همچنین عکس آنرا(!50/1) تا 20 رقم اعشار محاسبه و چاپ کنه؟؟؟
Printable View
سلام
دوستان یه برنامه به زبان ++c میخواستم که 50فاکتوریل را محاسبه کنه و همچنین عکس آنرا(!50/1) تا 20 رقم اعشار محاسبه و چاپ کنه؟؟؟
یه متغیر تعریف و بهش مقدار 1 رو بدین. به فرض این متغیر رو a بنامیم.
یه حلقه بزارین از 1 تا 50 . به فرض متغیر این حلقه رو i در نظر بگیرین
تو بدنه حلقه به متغیر a بدین مقدار a * i رو.
وقتی حلقه تموم شد مقدار a همون !i یا فاکتوریل 50 هست.
برای قسمت دومش هم کافیه یه متغیر دیگه تعریف کنین ( یادم نیست چطوری متغیری با 20 رقم اعشار تعریف می کردیم. :13:)
حالا وقتی حلقه بالا تموم میشه شما به متغیر جدید مقدار یک تقسیم بر a رو بدین .
پایان.
من C بلد نیستم. اما الگوریتم این برنامه اینه و وقتی شما الگوریتم رو بدونین مهم نیست با چه زبانی می نویسین.
این برنامه که میگین خیلی نوشتن طول میکشه... سخته!
__________________
وبلاگ منhttp://www.irancplusplus.co.ccشامل یک pdf دربارۀ «آشنایی با نظریه نسبیت خاص» و ویرایش سوم «با ++C آشنا شویم»:20:
بفرما . تا 1000 فاکتوریل محاسبه می کنه . توصیه می کنم همه این برنامه رو اجرا کنن و به ورودی عدد 1000 رو بدن و اون عدد رویایی که تولید میشه رو یه بار ببینن .
کد:#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;
}
دمت گرم خیلی به این برنامه نیاز داشتم. معلومه خیلی کارت درسته!:46:نقل قول:
یه برنامه میخوام به زبان c که عدد n رو بگیره و فاکتوریل اونو حساب کنه و بعد در خودش ضرب شه.
مثلا برای عدد 3 نمایش بده 36.
دوستان ضروریه .
کسی نمیدونه؟