أساسيات البرمجةالمصفوفات الثنائية - التمرين الثامن
المطلوب
- أكتب برنامج يعرّف مصفوفة إسمها
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.
شرح الكود
الفيديو التالي يشرح طريقة عمل الكود خطوة خطوة.