عرض مشاركة واحدة
منتديات طلاب وطالبات جامعة الملك عبد العزيز منتديات طلاب وطالبات جامعة الملك عبد العزيز
قديم 24-02-2012, 06:29 PM   #67

ೋ ĴỮṦṰ ŜḾĨŁE

جامعي

الصورة الرمزية ೋ ĴỮṦṰ ŜḾĨŁE

 
تاريخ التسجيل: Dec 2011
التخصص: عندي احساس انو انا تكنكال اوف رايتنق Oo
نوع الدراسة: إنتظام
المستوى: الثالث
الجنس: أنثى
المشاركات: 65
افتراضي رد: }{ تعالو نفهم بعض الsheet }{....برمجة 2

المشاركة الأصلية كتبت بواسطة deathpain مشاهدة المشاركة
أولاً هذا السؤال ما دخل مزاجي لأنه فوق مستوانا جميعاً ويجيب المرض وإحنا بالعافية نمشي في الرياضيات ( تكلم عن نفسك نقرتين لعرض الصورة في صفحة مستقلة
هناك 3 أشياء رئيسية يجب حسابها في السؤال هذا حتى نجد مقلوب المصفوفة،،
أول شيء لازم تحسبي محددات المصفوفة determinant ،،
قانونه من الشكل الموجود في نفس السؤال :
كود PHP:
double determinant = array[0][0]*(array[1][1]*array[2][2]-array[2][1]*array[1][2])
                        -array[
0][1]*(array[1][0]*array[2][2]-array[1][2]*array[2][0])
                        +array[
0][2]*(array[1][0]*array[2][1]-array[1][1]*array[2][0]); 
ثاني شيء نحسب محددات مقلوب المصفوفة inverse determinant وهيا حسب السؤال بالقانون التالي:
كود PHP:
double invdet 1/determinant
وأخيراً حساب المقلوب حق المصفوفة حسب الشكل الموضح في السؤال:
كود PHP:
array2[0][0] =  (a[1][1]*a[2][2]-a[2][1]*a[1][2])*invdet;
array2[0][1] = -(a[0][1]*a[2][2]-a[0][2]*a[2][1])*invdet;
array2[0][2] =  (a[0][1]*a[1][2]-a[0][2]*a[1][1])*invdet;
array2[1][0] = -(a[1][0]*a[2][2]-a[1][2]*a[2][0])*invdet;
array2[1][1] =  (a[0][0]*a[2][2]-a[0][2]*a[2][0])*invdet;
array2[1][2] = -(a[0][0]*a[1][2]-a[1][0]*a[0][2])*invdet;
array2[2][0] =  (a[1][0]*a[2][1]-a[2][0]*a[1][1])*invdet;
array2[2][1] = -(a[0][0]*a[2][1]-a[2][0]*a[0][1])*invdet;
array2[2][2] =  (a[0][0]*a[1][1]-a[1][0]*a[0][1])*invdet
خطوات حل السؤال:
1- نقوم بإنشاء مصفوفة ثنائية الأبعاد 2d array وندخل لها قيم داخل فور نستد لوب بواسطة السكانر:
كود PHP:
double[][] array = new double[3][3];
for (
int i 03i++)
for (
int j 03j++)
array[
i][j] = input.nextdouble(); 
2- نقوم بإنشاء ميثود تستقبل المصفوفة وتقوم بإيجاد مقلوبها وننشيء داخل الميثود مصفوفة ثانية من نفس الحجم:
كود PHP:
public static double[][] inverse(double[][] array) {
double[][] array2 = new double[3][3]; 
3- نضع القوانين التالية حسب الترتيب داخل الميثود:
أولاً نوجد الـdeterminant ثم inverse determinant ثم مقلوب المصفوفة باستخدام القوانين الموضحة أعلاه ،،

4- نسوي return للمصفوفة الثانية array2 في آخر الميثود ،،

5- في المين ميثود نسوي مصفوفة ثانية غير المصفوفة إلي أرسلها عشان نسوي كول للميثود داخلها:
كود PHP:
double[][] result inverse(a); 
6- وأخيراً نسوي فور نستد لوب لطباعة مقلوب المصفوفة ،،

وبالتوفيق
اول شئ جزاك الله خير اخوي
بس عندي سؤال يا ريت لو تشرح لنا المطلوب في السؤال و وظيفه البرنامج ؟ هل المستخدم يدخل مصفوفتين و يضربها في بعض و كيف ...!!
ادري والله تعبناك كثير بس ربي يفتحها لك و ييسر لك كل عسير

 

 

أنا نفسها just smile بس للأسف يوزري خرب ولما دحين الادارة ما عملو شئ ...نقرتين لعرض الصورة في صفحة مستقلة

 

ೋ ĴỮṦṰ ŜḾĨŁE غير متواجد حالياً   رد مع اقتباس