PDA

نسخه کامل مشاهده نسخه کامل : فوري



yosra20
26-11-2006, 22:35
برنامه فاكتوريل عددهاي بالاي 10000 تا فردا وقت دارم كمك كنيد

yosra20
26-11-2006, 22:39
برنامه فاكتوريل عددهاي بالاي 10000 درزبان c تا فردا وقت دارم كمك كنيد

yosra20
26-11-2006, 23:30
فاکتوریل در زبان c اعداد بزرگ

s_rasooli1
29-11-2006, 12:28
امیدوارم دیر نشده باشه.تابع faclong فاکتوریل اعداد را در دنباله ای از اعداد unsigned int ذخیره کرده و چاپ می کنه. به شرطی که عددی بزرگتر از تعداد ارقام فاکتوریل مطلوب را وارد کنی(اشکالی که داره اینه که اگه این تعداد برای ارقامش کافی نبود پیامی نمیده و بعضی ارقام سمت راست عدد رو حذف میکنه).من C دم دست نداشتم.لطفا خودت با کامپیوتر چکش کن و اگه از شر error هاش خلاص شدی برنامه رو برای چند عدد که ماشین حسابت میتونه فاکتوریلش رو حساب کنه اجرا کن و خبرشو بده.



#include "stdio.h"
#include "conio.h"
#include "math.h"
void faclong(unsigned long int n);

main()
{
unsigned long int n;
char ans;
loop1:
printf("\nEnter a number to calculate factoryel of it:");
scanf("%u", &n);
faclong(n);
printf("\nDo you want to cotinue?(y/n) ");
loop2:
ans = getche();
if(ans == 'y'){goto loop1;}
if(ans == 'n'){goto loop3;}
goto loop2;
loop3:
return 0;
}



void faclong(unsigned long int n)
{
unsigned long int k , m , i , l , j , q , num , r , s , a=10^floor(log(256^sizeof(unsigned int)));
unsigned int p;
unsigned int f[m] , g[m];
printf("\nEsimate the maximum number digits of %u! :",n)
scanf("%u", &k);
m = floor(k/log(a));
for(i = 1; i <= n; i++)
{
for(l = 0;l < m;l++){g[k]=0;}
num = 0;
for(r = 0; r < m; r++){if(f[r]!=0){num=r;}}
for(j = 0; j <= num; j++)
{
p = floor((log(i) + log(f[j]))/log(a));// a^p <= i*f[j] < a^(p+1);
swich(p)
{
case 0 :
f[j] *= i;
braek;
case 1 :
g[j+1] += floor(i*(double)f[j]/a));
f[j] *= i;
braek;
case 2 :
g[j+2] += floor(((double)i/a)*((double)f[j]/a));
g[j+1] += floor(i*((double)f[j]/a));
f[j] *= i;
braek;
}//end of swich
}//end for j
for(q = 0;q < m;q++){f[q] += g[q];}
}//end for i
printf("\n%u! = ",n)
for(s = num;s >= 0;s--){printf("%u",f[s]);}
}//end of faclong


reza_senior
06-01-2008, 16:57
سلام
من 4 برنامه می خوام اگه کسی بتونه کمکم کنه ممنون میشم
1. برنامه ساعت گرافیکی عقربه دار که قابل اجرا در کامپایر ++c باشه .
2.برنامه SQRT به ازای هر عدد قابل اجرا در کامپایلر ++c باشد.
3.برنامه sin که به ازای هر درجه داده شده قابل اجرا در کامپایلر ++c باشد .
4.برنامه فاکتوریل که به ازای هر عدد قابل اجرا در کامپایلر ++c باشد .

reza_senior
28-01-2008, 17:03
دوستان میشه کمک منم کنید ؟
فقط دو روز وقت دارم.
چهار سوالی که میخواستم تو پست بالایی گفتم .

سرمستي
09-02-2008, 22:44
به من صورت كامل را ايميل بده
kaleg2002_2007@yahoo.com

miesam-666
01-05-2009, 16:26
باسلام
برنامه ساعت گرافیکی عقربه داریادیجیتال که قابل اجرا در کامپایر ++c باشه رو میخواستم اگه کسی میتونه منو کمک کنه ممنون میشم .