PDA

View Full Version : حرفه ای: آرایه یک میلیون عنصری



moh3en_f1
پنج شنبه 22 فروردین 1392, 08:34 صبح
با سلام دوستان عزیز
من برای تست الگوریتم های مختلف از جمله الگوریتم ادغامی نیاز دارم که یه آرایه یک میلیون عنصری تعریف کنم اما نمی تونم این کار رو بکنم. من به صورت های زیر تعریف کردم که جواب نداد که تو اولی اصلا برنامه اجرا نشد و تو دومی هم برنامه بسته شد و چند بار هم تکرار کردم دوباره همین اتفاق افتاد:

int a[1000000]; // N1

و
int m*;//N2 m=new int[1000000];//N2
دوستان راه حلی دارند؟ البته من از توربو سی پلاس پلاس استفاده میکنم و نمی خوام با لیست پیوندی بنویسم با همین آرایه؟ پیشنهادی؟

UfnCod3r
پنج شنبه 22 فروردین 1392, 09:24 صبح
این ارایه کلا الان میشه 4 مگ . 4 مگ هم معمولا چیزی نیست .
مشکل از توربو سی++ هست به احتمال 99.99999999999999999999 درصد .
اخه چرا با این کامپیلر های زمان تیر کمون شاه کار می کنید .:قهقهه:

saied_hacker
پنج شنبه 22 فروردین 1392, 11:28 صبح
به صورت داینامیک بهش حافظه اختصاص بده حل میشه راحت.
int* pNum;
pNum = (int*) mallock(sizeof(int) * 1000000);

بعدم مثل ارایه ازش استفاه کن

pNum[1] = 200;

moh3en_f1
پنج شنبه 22 فروردین 1392, 13:51 عصر
این ارایه کلا الان میشه 4 مگ . 4 مگ هم معمولا چیزی نیست .
مشکل از توربو سی++ هست به احتمال 99.99999999999999999999 درصد .
اخه چرا با این کامپیلر های زمان تیر کمون شاه کار می کنید .:قهقهه:

با سلام مجدد
دوست عزیز من به علت اینکه روی سیستم نمی تونم نرم افزاری رو به صورت دائم نصب کنم (سیستم فریز است) مجبورم از توربو استفاده کنم چون سریع نصب میشه. کامپایلر بهتری شما سراغ دارید که نیاز به نصب نداشته باشه یا سریع نصب بشه؟؟؟



به صورت داینامیک بهش حافظه اختصاص بده حل میشه راحت.
int* pNum;
pNum = (int*) mallock(sizeof(int) * 1000000);

بعدم مثل ارایه ازش استفاه کن

pNum[1] = 200;

دوست عزیز به این صورتی هم که شما میگید هم امتحان کردم نوع دوم که نوشتم برای همین، فقط فرقشون اینه که شما برای زبان سی نوشتید من سی پلاس پلاس. ولی در کل هیچ کدوم اجرا نمیشه

saied_hacker
پنج شنبه 22 فروردین 1392, 14:19 عصر
در جواب سوال اول در پست بالا باید بگم که هست نمونش CodeBlock هست. ( 100 مگ با gcc در کمتر از 2 دقیقه نصب میشه)

ولی راه حل مشکل رو دیگه نمی دونم :)