Programming Basics SQL HTML CSS JavaScript React Python C++ Java JavaFX Swing Problem Solving English English Conversations Computer Fundamentals Linux Learn Typing

أساسيات البرمجةتعريف دوال جديدة - التمرين الخامس

المطلوب

أكتب دالة إسمها findAll، فيها باراميترين، الأول عبارة عن مصفوفة أعداد و الثاني عبارة عن عدد عادي.
مهمة الدالة هي معرفة كم عنصر في المصفوفة يملك نفس قيمة هذا العدد.
إذاً ستقوم الدالة بمقارنة جميع قيم عناصر المصفوفة مع قيمة هذا العدد. و كل عنصر تجد قيمته تساوي قيمة هذا العدد, ستعرض رقم فهرس ( index ) العنصر الذي وجدت فيه القيمة.

بعدها قم بإنشاء مصفوفة ذات بعد واحد إسمها numbers تحتوي على قيم أولية.
ثم أطلب من المستخدم إدخال أي عدد.
في الأخير قم باستدعاء الدالة findAll() لطباعة رقم فهرس ( index ) كل عنصر في المصفوفة يحتوي على نفس قيمة هذا العدد.


إرشادات

إذا أفترضنا أن المصفوفة numbers تحتوي على نفس القيم التالية و أن المستخدم حاول البحث عن القيمة 5 فإنه سيتم إعلامه أنه تم إيجاد نفس القيمة مرتين في المصفوفة.


الحل

function findAll(arr, val)
{
    var count = 0;
    
    for (var i=0; i<arr.length; i++)
    {
        if (arr[i] == val)
        {
            write(val + " is found at index " + i + "\n");
            count++;
        }
    }
    
    if (count == 0)
    {
        write("No match found!\n");
    }
    else if (count == 1)
    {
        write(count + " match found.\n");
    }
    else {
        write(count + " matches found.\n");
    }
}


numbers = [2, 5, 7, 6, 5];

write("Find: ");
var num = read();

findAll(numbers, num);

ستحصل على النتيجة التالية عند التشغيل.

Find: 5
5 is found at index 1
5 is found at index 4
2 matches found.

جرب الكود


شرح الكود

الفيديو التالي يشرح طريقة عمل الكود خطوة خطوة.