التعامل مع المصفوفة ذات البعد الواحد في الخوارزميات – التمرين الثالث
جدول المحتويات
التعامل مع المصفوفة ذات البعد الواحد في الخوارزميات – التمرين الثالث
التعامل مع المصفوفة ذات البعد الواحد في الخوارزميات – التمرين الثالث
التعامل مع المصفوفة ذات البعد الواحد في الخوارزميات – التمرين الثالث
التعامل مع المصفوفة ذات البعد الواحد في الخوارزميات – التمرين الثالث
التعامل مع المصفوفة ذات البعد الواحد في الخوارزميات – التمرين الثالث
التعامل مع المصفوفة ذات البعد الواحد في الخوارزميات – التمرين الثالث
هذا التمرين مقسّم إلى ثلاثة أفكار رئيسية, عليك اتباع التقسيم التالي خطوة خطوة حتى تنجز البرنامج.
- أكتب برنامج يطلب من المستخدم إعطائه عدد يمثل عدد عناصر مصفوفة إسمها
vector
و يخزنه في المتغيرL
.
تذكر: يجب أن يدخل المستخدم عدد أكبر من صفر, لأن عدد عناصر المصفوفة لا يمكن أن يكون صفر أو أقل من صفر. - ثم يطلب من المستخدم إدخال قيمة لكل عنصر من عناصر المصفوفة
vector
. - في الأخير يعرض للمستخدم عدد العناصر التي تملك قيم أكبر من صفر, و عدد العناصر التي تملك قيم الأصغر من صفر, و عدد العناصر التي تملك قيم تساوي صفر.
إرشادات
إستخدم متغير خاص لتخزين عدد العناصر التي تملك قيم أكبر من صفر.
و متغير خاص لتخزين عدد العناصر التي تملك قيم أصغر من صفر.
و متغير خاص لتخزين عدد العناصر التي تملك قيم تساوي صفر.
كود الجافا
- package vector;
- import java.util.Scanner;
- public class Vector {
- public static void main (String[] args) {
- Scanner input = new Scanner(System.in);
- int L;
- int[] vector;
- int P = 0;
- int N = 0;
- int Z = 0;
- do
- {
- System.out.print(“Enter the length of the vector: “);
- L = input.nextInt();
- }
- while ( L <= 0 );
- vector = new int[L] ;
- for (int i=0; i<=L-1; i++)
- {
- System.out.print(“Enter vector[“ +i+ “]: “ );
- vector[i] = input.nextInt();
- if ( vector[i] > 0 )
- {
- P = P + 1;
- }
- else if ( vector[i] < 0 )
- {
- N = N + 1;
- }
- else
- {
- Z = Z + 1;
- }
- }
- System.out.print(“The number of positive numbers is: “ +P+ “\n” );
- System.out.print(“The number of negative numbers is: “ +N+ “\n” );
- System.out.print(“The number of zero numbers is: “ +Z+ “\n” );
- }
- }
شرح الكود
- int L;
- int[] vector;
- int P = 0;
- int N = 0;
- int Z = 0;
-
- هنا قمنا بتجهيز المتغير
L
لتخزين عدد عناصر المصفوفة, و هو أول شيء سيطلب من المستخدم إدخاله. - و المصفوفة
vector
و التي لم يتم تحديد عدد عناصرها. - و المتغير
P
لتخزين عدد العناصر التي تملك قيمة أكبر من صفر. - و المتغير
N
لتخزين عدد العناصر التي تملك قيمة أصغر من صفر. - و المتغير
Z
لتخزين عدد العناصر التي تملك قيمة تساوي صفر.
- هنا قمنا بتجهيز المتغير
- do
- {
- System.out.print(“Enter the length of the vector: “);
- L = input.nextInt();
- }
- while ( L <= 0 );
-
- هنا سيطلب من المستخدم إدخال عدد عناصر المصفوفة, بعدها سيتم تخزينه في المتغير
L
- بعدها سيتم فحص قيمة المتغير
L
. إذا كانت أصغر أو تساوي 0, سيطلب من المستخدم إدخال العدد من جديد. - إذاً هذه الحلقة تضمن أن لا يقوم المستخدم بإدخال عدد أصغر أو يساوي 0.
- هنا سيطلب من المستخدم إدخال عدد عناصر المصفوفة, بعدها سيتم تخزينه في المتغير
- vector = new int[L] ;
-
- هنا سيتم تحديد عدد عناصر المصفوفة و الذي يساوي قيمة العدد
L
التي أدخلها المستخدم. - بعدها سيتم طباعة عدد عناصر المصفوفة باستخدام الخاصية
length
- لو وضعنا
L
بدلvector.length
لكان الجواب نفسه لأن عدد العناصر أيضاً يساوي قيمة المتغيرL
- هنا سيتم تحديد عدد عناصر المصفوفة و الذي يساوي قيمة العدد
- for (int i=0; i<=L-1; i++)
- {
- System.out.print(“Enter vector[“ +i+ “]: “ );
- vector[i] = input.nextInt();
- if ( vector[i] > 0 )
- {
- P = P + 1;
- }
- else if ( vector[i] < 0 )
- {
- N = N + 1;
- }
- else
- {
- Z = Z + 1;
- }
- }
-
- هنا أنشأنا حلقة تبدأ من index العنصر الأول في المصفوفة إلى آخر عنصر موجود فيها.
- في كل دورة من دورات الحلقة
i
سيحدث التالي:- سيطلب من المستخدم إدخال قيمة لعنصر محدد من عناصر المصفوفة.
- بعدها سيتم تخزين العدد الذي سيدخله في هذا العنصر.
- بعدها سيتم فحص قيمة العنصر لمعرفة ما إذا كانت عبارة عن عدد أكبر أو أصغر أو يساوي صفر.
- إذا كانت قيمة العنصر عبارة عن عدد أكبر من صفر, سيتم إضافة 1 على قيمة المتغير
P
- إذا كانت قيمة العنصر عبارة عن عدد أصغر من صفر, سيتم إضافة 1 على قيمة المتغير
N
- إذا كانت قيمة العنصر عبارة عن عدد يساوي صفر, سيتم إضافة 1 على قيمة المتغير
Z
- إذا كانت قيمة العنصر عبارة عن عدد أكبر من صفر, سيتم إضافة 1 على قيمة المتغير
- System.out.print(“The number of positive numbers is: “ +P+ “\n” );
- System.out.print(“The number of negative numbers is: “ +N+ “\n” );
- System.out.print(“The number of zero numbers is: “ +Z+ “\n” );
-
- في الأخير سيتم عرض عدد الأرقام الأكبر و الأصغر و التي تساوي صفر, التي تم تخزينها في المتغيرات
P
وN
وZ
- في الأخير سيتم عرض عدد الأرقام الأكبر و الأصغر و التي تساوي صفر, التي تم تخزينها في المتغيرات
المصدر: التعامل مع المصفوفة ذات البعد الواحد في الخوارزميات – التمرين الثالث – المناهج السعودية