المصفوفات الثنائية في البرمجة - التمرين الثامن

المطلوب

  1. أكتب برنامج يعرّف مصفوفة إسمها matrix تتألف من 3 أسطر و 3 أعمدة و فيها قيم جاهزة.
  2. ثم يطلب من المستخدم إدخال أي عدد و العدد الذي يدخله يخزنه في متغير إسمه keyword.
  3. بعدها يبحث في المصفوفة عن العدد الذي أدخله المستخدم ليرى إن كان هذا العدد موجوداً فيها أم لا.
    إنتبه: يكفي أن يكون العدد موجوداً مرة واحدة في المصفوفة و بالتالي عملية البحث يجب أن تتوقف بمجرد إيجاد تطابق.
  4. في الأخير يعرض للمستخدم ناتج عملية البحث، أي إذا وجد نفس قيمة المتغير keyword في المصفوفة matrix أم لا.

الحل

var matrix = [
    [2, 1, 4],
    [1, 5, 8],
    [6, 3, 1]
];

var keyword;
var isFound = false;

write("Search for number: ");
keyword = read();

for (var i=0; i<matrix.length && !isFound; i++)
{
    for (var j=0; j<matrix[i].length && !isFound; j++)
    {
        if (matrix[i][j] == keyword)
        {
            isFound = true;
        }
    }
}

if (isFound) 
{
    write("'" + keyword + "' is found.");
}
else
{
    write("'" + keyword + "' is not found.");
}

النتيجة: ستكون كما يلي في حال كانت المصفوفة الثنائية تحتوي نفس القيم التي وضعناها فيها.

Search for number: 1
'1' is found.

جرب الكود إفهم الكود