PDA

View Full Version : سوال: حذف دستور Continue



irpersian20
سه شنبه 08 مرداد 1392, 15:51 عصر
سلام
به جای دستور continue چه چیزی میتونم به کار ببرم که همان کاربرد continue داشته باشه؟

sr2m72
سه شنبه 08 مرداد 1392, 16:33 عصر
سلام
میتونید از برچسب استفاده کنید.
مثال:
کد اول با استفاده از Continue:

int main(int argc, char *argv[])
{
for(int i=0;i<10;i++)
{
if (i==5)
continue;
else
cout<<i<<endl;
}
system("pause");
}


و این کد بدون استفاده از Continue:

int main(int argc, char *argv[])
{
for(int i=0;i<10;i++)
{
if (i==5)
goto l1;
else
{
cout<<i<<endl;
l1:
cout<<"";
}
}
system("pause");
}


این کد C++ هست تبدیل کنید به C#

موفق باشید :)

irpersian20
سه شنبه 08 مرداد 1392, 18:22 عصر
سلام خیر goto جالب نیست

hojjatshariffam
سه شنبه 08 مرداد 1392, 19:14 عصر
خود Continue مگه چشه ؟ که گوتو رو هم نمی پسندید؟
کاربردتون پیه؟ کاربردتونو بگین تا شاید بشه بهتر کمک کرد.

irpersian20
سه شنبه 08 مرداد 1392, 22:36 عصر
سلام
والا یک جا به عنوان مساله مطرح شده بود. break رو اول گفته بود که میشه تو شرط گذاشتش و کار تمام
for (int i = 0 ; i<=a , a==5;i++)
منتها برای continue چیزی پیدا نکردم.

hojjatshariffam
سه شنبه 08 مرداد 1392, 22:52 عصر
اینو برای Continue تست کن

String bb = String.Empty;
for (int i = 0; i <= 10; i++ ,i = (i == 5 ? i + 1 : i))
{
bb += i.ToString() + " - ";
}
MessageBox.Show(bb);

همونطوری که می بینی از روی پنج رد میشه
یعنی همیشه چک می کنه که اگه i مساوی با 5 شد ، یکی دیگه به i اضافه میشه (یعنی به 5 که رسید Continue می کنه )
میشه بهینه ترشم کرد.

hojjatshariffam
سه شنبه 08 مرداد 1392, 23:05 عصر
اینم برای break

int a = 10;
String bb = String.Empty;
for (int i = 0; i < a; i++ ,i = (i == 5 ? a : i))
{
bb += i.ToString() + " - ";
}
MessageBox.Show(bb);