السلام عليكم
لدي homework مفاده هو عمل برنامج يستقبل من المستخدم رقما ما
ويقوم بعمل هرم من النجوم ارتفاعه هو الرقم الذي ادخله المستخدم
فاذا ادخل المستخدم الرقم 3 فان البرنامج يطبع الشكل التالي (تقريبا هكذا...)
** **** ******
حسنا قمت بعمل البرنامج وتاكدت منه وهو يعمل 100% ...
لكن حينما اردت ان اضيف له restriction على الارتفاع المدخل بحيث يكون بين 1 و 30
ظهرت مشكلة بسيطة...فانا اريد انه اذا ادخل المستخدم القيمة 32 مثلا تظهر له رسالة
تذكره بالمدى المسموح به(1 الى 30) ثم يقوم بادخال القيمة الصحيحة فيعمل البرنامج
#include <iostream.h>
main ()
int n,i,y=0,x,c,e;
for(e=1;e<=1;e++)
cout<<"How high would you like the pyramid?:\n";
cin>>n;
x=n;
if(n<1 || n>30)
{
cout<<"it must be between 1 & 30 , understood?"<<endl;
continue;
}
else
{
هذا القسم هو الجزء الحيوي في البرنامج وقد تاكدت منه وهو يعمل 100%
for(c=1;c<=n;++c)
{
x=x-1;
y=y+1;
for(i=1;i<=x;++i)
{cout<<" ";}
for(i=1;i<=y;++i)
{cout<<"**";}
cout<<endl;
}
}
return 0;
}ما قمت به هو استخدام if ثم طباعة شاشة الخطا وبعدها مباشرة كلمة continue
بحيث بعد ظهور الرسالة التذكيرية يرجع البرنامج للعمل من البداية وكان شيئا لم يكن
وحيث ان كلمة continue لا تستخدم الا ضمن الـ loops لذلك اضطررت لعمل loop وهمية
بدورة واحدة ( من 1 الى 2) باستخدام for لكن البرنامج اظهر الخطا التالي illegal continue
(لاحظ انني اذا حذفت for الاولى(الوهمية) وحذفت if (وتابعتها else) فان البرنامج يعمل دون مشاكل
السؤال هو: ما هو موقع كلمة continue من البرنامج ؟
اي : اين استطيع ان استخدمها لتفي بالغرض؟
مع ملاحظة عدم استخدام اي كلمة دونها لانني لم ادرس اي كلمة اخرى بنفس هذا الغرض...
والسلام مسك الختام