English  

كتب example of functional symmetry

اذا لم تجد ما تبحث عنه يمكنك استخدام كلمات أكثر دقة.

عرض المزيد

مثال على التماثل الوظيفي (معلومة)


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

extern int array1[]; extern int array2[]; int sum1 = 0; int sum2 = 0; int average1 = 0; int average2 = 0; for (int i = 0; i < 4; i++) { sum1 += array1[i]; } average1 = sum1/4; for (int i = 0; i < 4; i++) { sum2 += array2[i]; } average2 = sum2/4;

يمكن كتابة الحلقتين التكرارتين كمعادلة واحدة:

int calcAverage (int* Array_of_4) { int sum = 0; for (int i = 0; i < 4; i++) { sum += Array_of_4[i]; } return sum/4; }

باستخدام المعادلة السابقة ينتج كود مصدري ليس له حلقة مكررة:

extern int array1[]; extern int array2[]; int average1 = calcAverage(array1); int average2 = calcAverage(array2);

المصدر: wikipedia.org