إعلان
تعلم الآن

تعلم البرمجة للمبتدئين الحلقات المتداخلة - التمرين الثاني عشر

المطلوب

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

ملاحظة: في حال قام المستخدم بإدخال عدد زوجي قم بإضافة واحد عليه حتى يصبح عدد فردي لأن هذا الرسم يتطلب أن يكون عدد الأسطر فردي.


إرشادات

  • العدد الذي يدخله المستخدم قم بتخزينه في متغير إسمه n.
  • إستخدم الحلقة do while لإجبار المستخدم على إدخال قيمة أكبر من صفر.
  • فيما يلي طريقة تحليل الرسم كجدول.


الحل

var n;

do 
{
    write("Enter number of lines: ");
    n = read();
}
while (n<=0 || isNaN(n));

if (n%2 == 0)
{
    n++;
}

for (var i=1; i<=n; i++)
{
    if (i<n/2)
	{
		for (var k=1; k<=(n/2)-i+1; k++)
		{
			write(" ");
		}
        for (var j=1; j<=(i*2)-1; j++)
		{
			write("*");
		}
	}
    else
	{
        for (var k=1; k<i-(n/2); k++)
		{
			write(" ");
		}
		for (var j=1; j<=(n*2)-(i*2)+1; j++)
		{
			write("*");
		}
	}
    
    write("\n");
}
        

سنحصل على النتيجة التالية في حال أدخلنا العدد 4 أو 5 عند التشغيل.

Enter number of lines: 5
  *
 ***
*****
 ***
  *

جرب الكود


شرح الكود

الفيديو التالي يشرح طريقة عمل الكود خطوة خطوة.

إعلان
دورة قواعد بيانات MySQL في هذه الدورة ستتعلم أساسيات قواعد البيانات و أوامر SQL، العلاقات (Join) بين الجداول، Normalization مع تطبيق مشروع متكامل. سعر الدورة الآن هو 20 ريال سعودي فقط بدلاً من 600 ريال
سعر الدورة الآن هو 20 ريال سعودي فقط بدلاً من 600 ريال
تعلم الآن

الدورات

أدوات مساعدة

أقسام الموقع

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