واضح آرشیو وب فارسی:سایت ریسک: mo.mo22-03-2009, 12:34 PMسلام دوستان. من یکم اطلاعات در مورد آرایه های دو بعدی پویا می خواستم. طریقه ی تعریف و اونها ارجاع آنها به یه تابع . کدی که میخوام بنویسم دو تا ماتریس رو باید بگیره بعد جمع شون کنه و بعدش چاپش کنه. البته میخوام طوری باشه که سطر و ستون ماتریس رو از کاربر بگیره. CppBuilder200622-03-2009, 06:52 PMسلام این بخشی از نوشته ی من در باره ++C سه: حالا فرض کنید میخواهیم یک آرایهی دوگانه روی heap درست کنیم. این کار دو حالت دارد. گفتم که آرایهی دوگانه، آرایهای از آرایههاست. در حالت اول، ما آرایهای را که از آرایههاست روی stack تعریف میکنیم اما خود آرایهها را از heap میگیریم: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! که مثل !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!![/B] [RIGHT][SIZE=5]است. [COLOR=#c00000]حالت دوم این است که کلا همه چیز روی heap باشد: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! خوبی آن این است که هم x و هم y متغیر است و لازم نیست ثابت باشند میدانید که در !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! x و y باید ثابت باشند. نوشته ی منو میتو نید از وبلاگم دانلود کنید! mo.mo22-03-2009, 09:23 PMمن کد رو با راهنمایی مفید شما نوشتم ولی نمیدونم چرا بازم وسط کار erorr میده :41: لطفا یه نگاهی بهش بندازین. !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! CppBuilder200622-03-2009, 11:17 PMاولا جمع کردن دو تا ماتریس خیلی ساده هستا و اصلا نیازی به تابع بازگشتی نداره! مثلا این جوری: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! البته من برای این که سریع برنامه اجرا شه سطر و ستون رو توی خود برنامه بهش دادم. باید تغییر بدید تا مقدارها رو از کاربر بگیره. mo.mo23-03-2009, 11:43 AMببخشید فک کنم یه اشتباهی شده. این برنامه دو تا ماتریس رو ضرب میکنه و نه جمع. 1- چرا تابع strassen وقتی آرایه ها رو بهش میدین erorr میده؟ 2- و چرا تابع چاپ نمیتونه a[i][j] رو نمایش بده؟ خیلی ممنون. CppBuilder200623-03-2009, 09:15 PMضرب دو ماتریس هم نیازی به تابع بازگشت نداره و خیلی ساده س. نیازی بهتابع بازگشی نداره. اما دترمینان رو میشه با تابه های بازگشتی نوشت چون یکی از تعریف های دترمینان با بازگشته! CppBuilder200623-03-2009, 09:47 PMانم برنامه ش !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! mo.mo24-03-2009, 10:17 AMضرب دو ماتریس هم نیازی به تابع بازگشت نداره و خیلی ساده س. نیازی بهتابع بازگشی نداره. اما دترمینان رو میشه با تابه های بازگشتی نوشت چون یکی از تعریف های دترمینان با بازگشته! درسته ضرب دو تا ماتریس خیلی ساده است . ولی من باید بازگشتی بنویسم.( خب استاد گفته) . تو اون کدی که گذاشتم فقط تابع استراسنش مشکل داره . و فک میکنم مشکلش تو اشاره گر ها باشه. اگه ممکنه یه کمکی بکنید. mo.mo25-03-2009, 05:36 PMببخشید cppbuilder2006 نظری ندارین؟ CppBuilder200626-03-2009, 12:31 AMسلام (یه مدت صبر کنید من بیام اینجا جواب میدم! ) ببینید وقتی از تابع های بازگشتی استفاده میشه که امکان شکستن مساله به چند مساله کوچکتر باشه. اما برای ضرب دو ماتریس به راحتی این امکان نیست. راه بازگشتی هست ولی کار از نظر ریاضی تخصصی و از نظر برنامه نویسی پر زحمته. اگه بخواید اجراش کنید تا آخر عید سر کارین. راه حل شما اساسا اشتباهه. مثلا وقتی ماتریس ها n در m هست چرا همه جا نوشنین n/4 و اصلا چرا n/4؟ در ضمن برای ضرب باید یک سطر کامل در یک ستون کامل ضرب بشه برای همین با نصف یا یک چارم ماتریس اصلا نمیشه درایه های ماتریس حاصل ضرب رو مشخص کرد. البته اگه جمع n ماتریس رو داشتیم به سختی یه کارایی میشد کرد. برنامه دترمینان رو بنویسد قشنگ تره! بازگشت فقط باید در جایی به کار بره که راه ساده ای نیست و در واقع آخرین راه حله. برای ضرب دو تا ماتریس هیچ توجیهی براش نیست. موفق باشید mo.mo26-03-2009, 09:27 PMاز کمکتون ممنون. خیلی به من کمک کردین. من باید یه کد بنویسم که دو تاچند جمله ی رو تو هم ضرب کنه (البته به روش بازگشتی ) ولی هیچی به ذهنم نمیرسه اگه ممکنه یه راهنمایی هم در این مورد بکنید . ممنون. CppBuilder200627-03-2009, 12:50 AMخواهش می کنم روشنه که تابع بازگشتی باید مساله رو در هر مرحله ساده تر کنه تا به یه جای خیلی ساده برسونه. من روی ضرب چند جمله ای ها فکر نکردم تا حال ا ولی برنامه اولیه رو بذارین یه راهی پیدا می کنیم. به نظرم در هر مرحله باید یکی از جمله ها کم بشه. mo.mo31-03-2009, 11:54 PMکسی به نتیجه ی رسیده ؟ سایت ما را در گوگل محبوب کنید با کلیک روی دکمه ای که در سمت چپ این منو با عنوان +1 قرار داده شده شما به این سایت مهر تأیید میزنید و به دوستانتان در صفحه جستجوی گوگل دیدن این سایت را پیشنهاد میکنید که این امر خود باعث افزایش رتبه سایت در گوگل میشود
این صفحه را در گوگل محبوب کنید
[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 1764]