إعلان
دورة تطوير التطبيقات باستخدام لغة JavaScript في هذه الدورة ستتعلم لغة جافا سكريبت, استخدام مكتبة React.js, بناء API الموقع بواسطة Node.js, تطوير تطبيق جوال باستخدام React Native, و في نهاية الدورة ستتعلم تطوير تطبيق محادثة شبيه بتطبيق WhatsApp. تعلم الآن
دورة تطوير واجهات المستخدم في هذه الدورة ستتعلم لغة HTML و لغة CSS و لغة JavaScript. من ناحية التطبيق العملي ستتعلم طريقة بناء واجهة متجر إلكتروني مكون من ست صفحات, تحويل خمسة تصاميم PSD إلى صفحات ويب, بناء واجهة مستخدم تشبه موقع يوتيوب, بناء لوحة تحكم إحترافية. تعلم الآن
تطوير تطبيقات باستخدام لغة بايثون في هذه الدورة ستتعلم أساسيات البرمجة بلغة بايثون وصولاً إلى التعامل مع أشهر أطر العمل (Flask و Django) و ستتعلم كيف تبني متجر إلكتروني يمكن للمستخدمين البيع و الشراء من خلاله. تعلم الآن
دورة تطوير تطبيقات الويب باستخدام لغة PHP في هذه الدورة ستتعلم لغة PHP من الصفر, استخدام إطار العمل Laravel بشرح مفصّل و عملي, كيفية تطوير شبكة اجتماعية تشبه Instagram, بناء API لتطبيق جوال وفق أسلوب RESTful, تطوير موقع إعلانات مبوبة, تطوير نظام إدارة محتوى CMS كامل. تعلم الآن
دورة تطوير تطبيقات الويب باستخدام لغة Ruby في هذه الدورة ستتعلم البرمجة بلغة Ruby إنطلاقاً من أبسط المفاهيم وحتى بناء تطبيق حقيقي, إستخدام إطار العمل Ruby on Rails بشرح مفصّل و عملي, بناء تطبيق حقيقي عبارة عن شبكة اجتماعية تشبه تويتر, تطوير مجتمع الكتروني يشبه حسوب I/O. تعلم الآن
دورة علوم الحاسوب هذه الدورة معدة لتكون مدخل لعلوم الحاسوب و لغات البرمجة حيث ستتعرف فيها على أنظمة التشغيل و ستتعمق في نظام لينكس و في كيفية التعامل معه من خلال موجه الأوامر, بالإضافة إلى قواعد البيانات و أساسيات الشبكات و الخوادم و مبادئ الحماية والأمان في الويب. تعلم الآن

    الخوارزميات حساب قيمة الـ Power للعدد - التمرين الخامس

    المطلوب

    أكتب برنامج يطلب من المستخدم إعطائه عدد صحيح و يخزنه في المتغير N.
    بعدها يعرض له ناتج القيمة المضاعفة للأعداد التي قام بإدخالها.


    إرشادات

    1. S هو المتغير الذي سيحتوي على مجموع كل الأرقام الموجودة من 1 إلى N.
    2. i هو المتغير (العداد) الذي يزيد واحد في كل دورة.
    3. N هو المتغير الذي يخزن العدد الذي سيدخله المستخدم و الذي تتوقف عنده الحلقة.
    4. الحلقة تبدأ من 1 و تتوقف عند N, أي عند العدد الذي أدخله المستخدم.
    5. في كل دورة سيتم إعتبار قيمة العداد i هي الـ Base و الـ Power, و سنحصل على Power لها من خلال الحلقة k.
    6. سنحتاج إلى المتغير P لتخزين ناتج ضرب المتغير i بنفسه في كل دورة بداخل الحلقة k قبل إضافته على قيمة المتغير S.

    إنتبه: يجب تعريف المتغيرين S و F كـ double حتى لا نخسر أي رقم موجود بعد الفاصلة أثناء إجراء عمليات القسمة.


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

    لنفترض أن المستخدم أدخل العدد 5.

    تحليل النتيجة

    طريقة التحليل

    الخوارزمية

    كود الجافا

    import java.util.Scanner;
     
    public class Power_And_Factorial {
     
        public static void main (String[] args) {
     
            Scanner input = new Scanner(System.in);
     
            int N;
            double P;
            double F;
            double S = 0;
     
            System.out.print("Enter a number for N: ");
            N = input.nextInt();
     
            for (int i=1; i<=N; i++)
            {
     
                if (i%2 == 1 )
                {
                    P = 1;
                    for (int k=1; k<=i; k++)
                    {
                        P = P * i;
                    }
                    S = S + P;
                }
     
                else
                {
                    F = 1;
                    for (int k=1; k<=i; k++)
                    {
                        F = F * k;
                    }
                    S = S + ( 1/F );
                }
     
            }
     
            System.out.print("S = " +S+ "\n");
     
        }
     
    }
    		

    شرح الكود


    		int N;
    		double P;
    		double F;
    		double S = 0;
    			
    • هنا قمنا بإنشاء المتغير N لتخزين الرقم الذي سيدخله المستخدم.
    • و المتغير P لتخزين القيمة المضاعفة لكل قيمة مفردة من قيم العداد i الذي سنستخدمه في الحلقة.
    • و المتغير F لتخزين قيمة الـ Factorial لكل قيمة مزدوجة من قيم العداد i الذي سنستخدمه في الحلقة.
    • و المتغير S لتخزين المجموع.


    		System.out.print("Enter a number for N: ");
    		N = input.nextInt();
    			
    • هنا طلبنا من المستخدم إدخال عدد, ثم وضعناه في المتغير N.


    		for (int i=1; i<=N; i++)
    		{
    		
    			if (i%2 == 1 )
    			{
    				P = 1;
    				for (int k=1; k<=i; k++)
    				{
    					P = P * i;
    				}
    				S = S + P;
    			}
    		
    			else
    			{
    				F = 1;
    				for (int k=1; k<=i; k++)
    				{
    					F = F * k;
    				}
    				S = S + ( 1/F );
    			}
    		
    		}
    			
    • هنا في كل دورة من دورات الحلقة i سيتم فحص قيمة العداد i لمعرفة إذا كانت قيمته مفردة أم مزدوجة.

    • إذا كانت قيمة العداد i عبارة عن عدد مفرد سيحدث التالي:
      • سيتم إنشاء حلقة داخلية لحساب القيمة المضاعفة للعداد i.
      • ناتج القيمة المضاعفة للعداد i سيتم تخزينه بشكل مؤقت في المتغير P حتى تتوقف الحلقة الداخلية عن التنفيذ.
      • بعدها سيتم إضافة قيمة المتغير P على قيمة المتغير S.

    • إذا كانت قيمة العداد i عبارة عن عدد مزدوج سيحدث التالي:
      • سيتم إنشاء حلقة داخلية لحساب قيمة الـ Factorial للعداد i.
      • ناتج الـ Factorial للعداد i سيتم تخزينه بشكل مؤقت في المتغير F حتى تتوقف الحلقة الداخلية عن التنفيذ.
      • بعدها سيتم إضافة 1 مقسوم على قيمة المتغير F على قيمة المتغير S.


    		System.out.print("S = " +S+ "\n");
    			
    • في الأخير سيعرض نتيجة جمع جميع الأرقام المضاعفة المخزنة في المتغير S.
    إعلان

    Eqla3Tech.com

    شروحات مكتوبة حول لغات البرمجة و تقنية المعلومات باللغة العربية مقدمة من إقلاع تك.

    لغة جافا لغة ++C قواعد البيانات نظام ويندوز نظام لينكس الشبكات تقنية المعلومات

    الدورات

    أدوات مساعدة

    الأقسام

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