اعداد بزرگ در++C
سورس کد که میذارم براتون در این پست,کد برنامه ای هستش که مجموع اعداد بسیار بسیار بزرگ رو در زمان کمی چاپ میکنه.(مثلا مجموع دو عدد 1000 رقمی یا حتی بیشتر)
این کد که کد BigNum بهش میگن در اصل شبیه سازی عمل جمع هستش.یعنی جای استفاده ساده از عملگر + ما میایم رقم به رقم خودمون جمع میکنیم و ده بر یک ها رو حساب میکنیم و چاپ میکنیم.نکته ای هم که هستش دریافت ورودیه.همون طور که میدونید چیزی مثل int یک عدد 100 رقمی رو نمیتونه تو خودش جا بده پس ما هم نمیتونیم به اون صورت عدد رو دریافت کنیم.بنابراین میایم اعداد رو به صورت string دریافت میکنیم و خودمون توی یک وکتور(خیلی مهمه ساخت وکتور چون مثلا اعداد 10 به توان 9 رقمی رو نمیتونیم در آرایه جا بدیم) میریزیم و بعد کارمون رو ادامه میدیم و خروجیمون هم در اصل یک عدد نیست بلکه یک وکتور هستش که ما تک تک خونه هاشو پشت سرهم چاپ میکنیم و کاربر اون ها رو به صورت یک عدد یکپارچه میبینه.
سلام
استفاده از آرایه زمان محاسبه را بسیار کند می کند، پیشنهاد من استفاده از String ها بعنوان جواب است.