ورود

نسخه کامل مشاهده نسخه کامل : ! 1000



eng_a_h_b
30-05-2007, 16:48
كي بلده با c فاكتوريل 1000 را بنويسد.

avot
17-07-2007, 20:07
ba in systemhaye mojood anjame chenin kari amali nist(shayadam bashe! amma man ke nadaram ) va padideye Overflow rokh mide.
albate mitunid dadeye khodetoon ro besoorate unsigned long double tarif konid ta betunin factoriel bozorgtarin adade momken ro andazegiri konin amma na adade 1000! ro

hassan_mojtahedi
18-07-2007, 10:43
روح الله بيا اينجا:
[cod]
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
[cod/]

hadi_joulaee
30-07-2007, 19:29
اینم سورس برنامه به زبان c++ البته 1000 فاکتوریل به دلیل اینکه خیلی بزرگه بصورت نماد علمی نوشته میشه:


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

:8::5::31:

hamed valizadeh
30-07-2007, 20:20
بفرمایید اینم کد 1000!
با یک کم تغییر میشه بیشتر هم کردش


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
}

Mehran NZ
05-08-2007, 04:57
اینم مال من با حلقه while

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

farinazf
23-08-2007, 20:36
برنامه ي قبلي که نميتوه 1000! را حساب کنه چون از تايپ متغير ميزنه بيرون بقيه اش را هم بايد امتحان کرد..

دو تا برنامه قبل هم من کامپايل کردم ولي fatal error داره يعني باز از ميزان تايپ ها خارج ميشه
به نظر برنامه آقاي ولي زاده درست ه ولي نياز به تغيير داره

Mehran NZ
23-08-2007, 22:47
برنامه ي قبلي که نميتوه 1000! را حساب کنه چون از تايپ متغير ميزنه بيرون بقيه اش را هم بايد امتحان کرد..

دو تا برنامه قبل هم من کامپايل کردم ولي fatal error داره يعني باز از ميزان تايپ ها خارج ميشه
به نظر برنامه آقاي ولي زاده درست ه ولي نياز به تغيير داره

اگه برنامه جناب hadi_joulaee درست باشه برنامه من هم با گذاشتن j=1 در اول برنامه درست می شه(یه اشتباه کوچیک رخ داد)

در ضمن شما می تونید برنامه hamed valizadeh رو هم با اضافه کردن { بعد از return کامپایل کنید من این برنامه رو کامپایل و اجرا کردم و جواب درست رو داد اینم عکسش

[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

واقعا باید بهشون افرین گفت من رفتم برنامش و چک کنم بای

_H2_
25-08-2007, 09:58
سلام
من تست نکردم ولی کد دوستانی که از یک تک حلقه while یا for استفاده میکنند و جواب را در یک متغییر میریزند امکان ندارد جواب دهد!
عدد 79 فاکتوریل در مرز 100 رقم قرار میگیرد و عدد 179 فاکتوریل در مرز پر شدن double ، پس امکان ندارد متغییری عادی بتواند 1000 را در خود جای دهد، در اصل این تمرین های نیمچه مزخرف را در دانشگاه ها فقط میدهند و راه حلش آن است که یک ضرب کننده دستی ساخته شود که عین انسان که دو عدد را روی کاغذ ضرب میکند برنامه فوق هم دو عدد موجود در آرایه را در هم ضرب کند و جواب را به صورت آرایه باز پس دهد. (البته طبیعی است که الگوریتم فوق را به شیوه های مختلف میتوان پی ریزی کرد.)

Mehran NZ
25-08-2007, 10:27
استاد _H2_ عزیز این برنامه برام خیلی جالبه ولی از برنامه اون دوستمون چیزی سردرنیاوردم راستش و بخوای روی همون #include<stdio.h> موندم [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
می شه حودت در مورد راه حلی که گفتی بیشتر توضیح بدی اگه یه مثال ساده هم بیاری عالی می شه
ممنون

sherlockholmz
10-11-2007, 10:45
بعيد است با آرايه بشود نوشت ،البته من تست نكردم ولي بعد آرايه نامعقول خواهد بود.با اشاره گرها هم بايد محلي از حافظه را يافت كه بتوان حاصل را نگهداشت.فكر كنم در هر صورت overflow را خواهيم داشت.گرچه اين سوال مثل كارمعلمهائي است كه براي تكليف شب مي گويند 10 بار از روي تصميم كبري بنويسيد، چون محاسبه !1000 يك كار مفيد نيست.