الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

المتوسط الحسابي

مغلق
بدأه أبو أفنان1393 في 11 سبتمبر 2003 · 4 رد · 645 مشاهدة · في مراجعة المواضيع
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

أخوتي أرجوا الرد عاجل على سؤال البسيط

هوه أنني عملت برنامج لجمع درجات الطلاب الاختبار الأول والثاني والثالث و أريد المتوسط الحسابي لهذه الاختبارات الثالث بحث إذا أدخلت درجة الطالب في الاختبار الاول فقط يكون المتوسط الحسابي لهذ الدرجة وبالطبع لا تتغير وإذا أدخلت الاختبار الاول والثاني ويكون المتوسط لهذه الاختبارين بغض النظر عن درجة الاختبار الثالث

وسؤالي الاخر

في التقارير كيف الجمع وقد استعملت الكود التالي

المجموع =[الاختبار الاول]+[الاختبار الثاني]+[الاختبار الثالث]

ولكن في حالة أنه لا يوجد درجة في الاختبار الثاني أو الثلث فإنه لا يجمع

أرجو الرد عاجلاً

ولكم جزيل الشكر

#2

السلام عليكم

عزيزي ابو افنان

لدي فكرة ربما تفيدك وتتغلب على مشكلتك ،،،،

يمكنك انشاء حقل حسابي يقوم بجمع حقل الاختبار الاول وحقل الاختبار الثاني وحقل الاختبار الثالث ثم انشاء حقل اخر تستخدم دالة فيه دالة if حيث اذا وجد قيمة في حقل الاختبار الثالث يقوم بتقسم الحقل الحسابي على 3 واذا لم يتحقق الشرط يذهب الى حقل الاختبار الثاني فاذا وجد قيمة يقوم بالقسمة على 2 واذا لم يتحقق الشرط يقوم بالقسمة على 1 او ياخذ القيمة من حقل الاختبار الاول

اما بالنسبة لعدم اظهار المجموع في التقرير :

يمكنك استخدام دالة NZ قبل اسم الحقل

مع تحياتي

#3

السلام عليكم

أعتقد أن دالة avg() لا تحتاج إلى if فهي تقوم لاقسمة على عدد الحقول الغير null فيمكنك الله أعلم ان تجعل نموذجك مبني على استعلام وتجعل الحقل المحسوب مصدر بياناته الحقل المحسوب في الاستعلام

#4

هناك في الاوراكل Function اسمها nvl تستخدم لهذا الغرض ولكن لاأعلم اذا كانت توجد في الـ Access أو لا ..

طريقة استخدامها

nvl(A,0)+nvl(B,0)+nvl(C,0)+etc

وعملها انها اذا وجدت القيمة بـ null فانها تعتبرها صفر ..

#5

اخي ابو عبدالله :

كلامك صحيح اذا كان المتوسط المطلوب يعتمد على عمود واحد من الجدول ولكن اخونا ابو افنان يريد الحصول على متوسط ثلاثة اعمدة بشكل افقي ولتوضيح اكثر لنفترض ان الطالب محمد كان بياناته على النحو الاتي :

حقل درجة الاختبــــــــــــار الاول : 12

حقل درجة الاختبار الشهر الثاني : 11

حقل درجة الاختبار الشهر الثالث : 10

حقل الـــــمـــــــــــجـمـــــــــوع : 33

حقل الـــــمــــــــتــــــــوســــط : 33÷3 = 11

الاخ MSO :

دالةnvl في الاوراكل = دالة NZ في الاكسيس

مع تحياتي للجميع ;)

هذا الموضوع مغلق.

مواضيع مشابهة