تمرین اول برنامه نویسی پیشرفته
زمان تحویل تمرین : پنجشنبه 30/11/1393
تمرین بصورت تک نفره و کد قابل اجرا بر روی کامپوتر باشد. تحویل به آقای بیدختی.
برنامه ای برای ضرب اعداد بزرگ بنویسید. اعداد بزرگ را نمی توان در متغیرهای معمولی حتی long int ذخیره و روی آنها عملیات انجام داد. حداکثر عدد قابل ذخیره در متغیرها را می توانید در جدول انتهاب مطلب ببینید. همانطور که مشاهده می کنید بزرگترین عدد قابل ذخیره در متغیر از نوع long int عدد 4 میلیارد می باشد.
روال برنامه شما باید بگونه ای باشد که از ورودی دو رشته از ارقام را دریافت کرده و حاصل ضرب آنها را در خط سوم چاپ نماید:
به عنوان مثال اگر دو عدد ورودی شما 123456789 باشد حالضرب برابر است با:
15241578750190521 = 123456789* 123456789
راهنمایی: شما می توانید از آرایه استفاده کنید. به این صورت که هر رقم از عدد داخل یک خانه از آرایه قرار می گیرد. حداکثر طول اعداد 100 رقم می باشد. بنابراین طول حاصلضرب می تواند تا 200 رقم هم برسد! می توانید برای صحت عملکرد برنامه خود از ضرب اعداد کوچک کمک بگیرید و یا از وبسایت های زیر برای بدست آوردن نتیجه و مقایسه آن با جواب برنامه خود کمک بگیرید:
http://www.javascripter.net/math/calculators/100digitbigintcalculator.htm
|
نوع داده |
سایز حافظه |
بازه مقادیر مجاز |
|
char |
1 byte |
-128 to 127 or 0 to 255 |
|
unsigned char |
1 byte |
0 to 255 |
|
signed char |
1 byte |
-128 to 127 |
|
int |
2 or 4 bytes |
-32,768 to 32,767 or -2,147,483,648 to 2,147,483,647 |
|
unsigned int |
2 or 4 bytes |
0 to 65,535 or 0 to 4,294,967,295 |
|
short |
2 bytes |
-32,768 to 32,767 |
|
unsigned short |
2 bytes |
0 to 65,535 |
|
long |
4 bytes |
-2,147,483,648 to 2,147,483,647 |
|
unsigned long |
4 bytes |
0 to 4,294,967,295 |
نویدرضا