الخوارزميات التعامل مع المصفوفة ذات البعد الواحد - التمرين الثاني

المطلوب

هذا التمرين مقسّم إلى ثلاثة أفكار رئيسية, عليك اتباع التقسيم التالي خطوة خطوة حتى تنجز البرنامج.

  1. أكتب برنامج يطلب من المستخدم إعطائه عدد يمثل عدد عناصر مصفوفة إسمها vector و يخزنه في متغير إسمه N.
    تذكر: يجب أن يدخل المستخدم عدد أكبر من صفر, لأن عدد عناصر المصفوفة لا يمكن أن يكون صفر أو أقل من صفر.
  2. ثم يطلب من المستخدم إدخال قيمة لكل عنصر من عناصر المصفوفة vector.
  3. ثم يعرض للمستخدم ناتج جمع جميع قيم عناصر المصفوفة vector.

النتيجة المطلوبة

لنفترض أن المستخدم أدخل 6 قيم كما في الصورة التالية.

الخوارزمية

كود الجافا

import java.util.Scanner;
 
public class Vector {
 
    public static void main (String[] args) {
 
        Scanner input = new Scanner(System.in);
 
        int N;
        int S = 0;
        int[] vector;
 
        do
        {
            System.out.print("Enter the length of the vector: ");
            N = input.nextInt();
        }
        while ( N<= 0 );
 
        vector = new int[N];
 
        for (int i=0; i<=N-1; i++)
        {
            System.out.print("Enter vector[" +i+ "]: " );
            vector[i] = input.nextInt();
            S = S + vector[i];
        }
 
        System.out.print("The sum of all elements is: " +S+ "\n" );
 
    }
 
}
		

شرح الكود


		int N;
		int S = 0;
		int[] vector;
			
  • هنا قمنا بتجهيز المتغير N لتخزين عدد عناصر المصفوفة, و هو أول شيء سيطلب من المستخدم إدخاله.
  • و المتغير S لتخزين مجموع قيم عناصر المصفوفة.
  • و المصفوفة vector و التي لم يتم تحديد عدد عناصرها.


		do
		{
			System.out.print("Enter the length of the vector: ");
			N = input.nextInt();
		}
		while ( N <= 0 );
			
  • هنا سيطلب من المستخدم إدخال عدد عناصر المصفوفة, بعدها سيتم تخزينه في المتغير N.
  • بعدها سيتم فحص قيمة المتغير N, إذا كانت أصغر أو تساوي 0 سيطلب من المستخدم إدخال العدد من جديد.
  • إذاً هذه الحلقة تضمن أن لا يقوم المستخدم بإدخال عدد أصغر أو يساوي 0.


		vector = new int[N];
			
  • هنا سيتم تحديد عدد عناصر المصفوفة و الذي يساوي قيمة العدد N التي أدخلها المستخدم.


		for (int i=0; i<=N-1; i++)
		{
			System.out.print("Enter vector[" +i+ "]: " );
			vector[i] = input.nextInt();
			S = S + vector[i];
		}
			
  • هنا أنشأنا حلقة تبدأ من index العنصر الأول في المصفوفة إلى آخر عنصر موجود فيها.
  • في كل دورة من دورات الحلقة i سيحدث التالي:
    • سيطلب من المستخدم إدخال قيمة لعنصر محدد من عناصر المصفوفة.
    • بعدها سيتم تخزين العدد الذي سيدخله في هذا العنصر.
    • بعدها سيتم إضافة قيمة العنصر على قيمة المتغير S.


		System.out.print("The sum of all elements is: " +S+ "\n" );
			
  • في الأخير سيتم عرض ناتج جمع جميع عناصر المصفوفة vector المخزن في المتغير S.

نرجو منك الإنتقال لدورة البرمجة للمبتدئين الجديدة التي أنشأنها كبديل أفضل لهذه الدورة ففي تلك الدورة قمنا بتبسيط الشرح أكثر و جعلناك قادر على تجربة الكود بشكل مباشر في موقعنا.

دورة تعلم البرمجة للمبتدئين >

الدورات

أدوات مساعدة

أقسام الموقع

دورات
مقالات كتب مشاريع أسئلة