PDA

View Full Version : درخواست توضیح چک کردن اعداد 0تا7



mhabat
سه شنبه 22 فروردین 1391, 15:36 عصر
با سلام.دوتا کد زیر اعداد اعداد صفر تا 7را چک میکنه و اگر باقی مانده آنهادر مقدار خاصی برابر صفر باشه رو آنها عملیاتی رو انجام میده.حالا خواستم ببینم کار این عملیات چیه؟چه کار خاصی منظور برنامه نویس بوده..!
سورس:



int main()
{ for (int i = 0; i < 8; i++)
if ( i%2 == 0) cout << i + 1 << "\t";
else if (i%3 == 0) cout << i*i << "\t";
else if (i%5 == 0) cout << 2*i - 1 << "\t";
else cout << i << "\t";

و



int main()
{ for (int i=0; i < 8; i++)
{ if (i%2 == 0) cout << i + 1 << endl;
else if (i%3 == 0) continue;
else if (i%5 == 0) break;
cout << "End of program.\n";
}
cout << "End of program.\n";
}

خیلی ممنون

vistacali
چهارشنبه 23 فروردین 1391, 14:49 عصر
for (int i=0; i < 8; i++)
{
if (i%2 == 0) cout << i+1 << endl;
else if (i%3 == 0) continue;
else if (i%5 == 0) break;
cout << "End of program.\n";
}

داخل این کد خواسته تفاوت دستور continue , break رو شرح بدهد
دستور continue هرگاه در ساختارهای while و do/while يا for اجرا گردد دستورات بعدی آن ساختار ناديده گرفته می شود و بار بعدی حلقه تکرار اجرا می شود. در دو ساختار while و do/while پس از اجرای دستور continue شرط حلقه مورد بررسی قرار می گيرد، اما در ساختار for ابتدا مقدار شمارنده افزايش يا کاهش می يابد، سپس شرط حلقه بررسی می شود. توجه داشته باشيد که در حلقه while وdo/while دستور continue همواره بعد از افزايش يا کاهش شمارنده به کار رود.
دستور break هرگاه که در ساختارهای while و do/while و for يا switch اجرا گردد، باعث خروج فوری برنامه از آن ساختار خواهد شد و برنامه اولين دستور بعد از آن ساختار را اجرا خواهد کرد.
----------------------


for (int i = 0; i < 8; i++)
if ( i%2 == 0)
cout << i + 1 << "\t";
else if (i%3 == 0)
cout << i*i << "\t";
else if (i%5 == 0)
cout << 2*i - 1 << "\t";
else
cout << i << "\t";

والا این کد هم چیز خاصی من داخلش ندیدم فقط خواسته دستورات if else رو برات تشریح کنه فکر کنم وگرنه منظور خاصی نداشته