المصفوفات الثنائية في البرمجة - التمرين الثامن
المطلوب
- أكتب برنامج يعرّف مصفوفة إسمها
matrixتتألف من 3 أسطر و 3 أعمدة و فيها قيم جاهزة. - ثم يطلب من المستخدم إدخال أي عدد و العدد الذي يدخله يخزنه في متغير إسمه
keyword. - بعدها يبحث في المصفوفة عن العدد الذي أدخله المستخدم ليرى إن كان هذا العدد موجوداً فيها أم لا.
إنتبه: يكفي أن يكون العدد موجوداً مرة واحدة في المصفوفة و بالتالي عملية البحث يجب أن تتوقف بمجرد إيجاد تطابق. - في الأخير يعرض للمستخدم ناتج عملية البحث، أي إذا وجد نفس قيمة المتغير
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.
'1' is found.