(۲۲ آبان ۱۳۹۳ ۰۸:۵۰ ق.ظ)zahra.s نوشته شده توسط: (22 آبان ۱۳۹۳ ۱۲:۳۰ ق.ظ)miladcr7 نوشته شده توسط: فرمول به دست اوردن ادرس array(i,j,c) در ارایه سه بعدی array(L1...U1,L2...U2,L3...U3) به روش ستونی و با فرض اینکه n تعداد بایتیه که ارایه اشغال میکنه و α ادرس شروع ارایه هست:
((c−L3)(U2−L21)(U1−L11)(j−L2)(U1−L11)(i−L1))∗nα
که اگه بخوایم عنصر چندم رو به دست بیاریم به جای n,α مقدار 1 میذاریم
خب:
((5−2)∗6∗8(2−0)∗8(4−(−1)))∗11=1441651=166
خب پس 1 اضافه همون α بودش
ولی گفته میشه در صورتی که خود سوال آلفا رو نگفته باشه , باید اون رو صفر گرفت!
پ چرا ۱ گرفته؟؟!!!
آلفا رو یک نگرفته . به خاطر اینکه اندیس بعد اول از منهای یک شروع شده اشتباه تصور میشه . بلکه جوابش درسته .
از سمت راست شروع میکنیم هر اندیسی که داده اختلافشو از اندیش پایه بدست میاریم در اندازه ابعاد سمت چپ ضرب میکینم و وقتی به اندیس سمت چپ رسیدیم فقط اختلافشو از اندیس پایه بدست میاریم که از ۴ تا منهای ۱ میشه ۶ تا
---------------------------
اختلاف اندیس سمت راست از اندیس پایه میشه ۳ که در ابعاد سمت چپش یعنی ۶ و ۸ ضرب میشه = ۶*۸*۳
اختلاف اندیس دوم از سمت راست ، از اندیس پایش میشه ۲ که در بعد سمت چپش یعنی ۸ ضرب میشه = ۲*۸
اختلاف اندیس سوم از سمت راست ، با اندیس پایش میشه ۶ که دیگه بعد چپم نداره پس انم میشه ۶ = ۶
در نهایت میشه ۱۶۶