mgmreza
شنبه 18 آبان 1387, 01:11 صبح
با سلام
لطفا در مورد روش دستي به دست آوردن خروجي تکه برنامه هايي که از دو يا چندين for استفاده ميکنند توضيح دهيد. آيا براي اين کار از فرمول يا روش خاصي استفاده ميکنند ؟ چون من نميتوانم چنين مسائلي که از چندين for استفاده ميکنند را حل نمايم. اگر منبعي در اينترنت مي شناسيد معرفي نماييد يا کاملا در اين مورد توضيح دهيد.
مثلا در مورد برنامه زير چون هر دو شمارنده حلقه ها از صفر شروع شده است تقريبا ساده است و خروجي آن به صورت زير است اما در مورد برنامه هاي پيچيده تر مشکل دارم.
main()
int i,j,x=0;
for(i=0;i<5;++i)
{
for(j=0;j<i;++j)
x+=(i+j+1);
printf("%3d",x);
}
printf("\n%d",x);
}
خروجي :
1 4 9 16 25
25
با تشکر
لطفا در مورد روش دستي به دست آوردن خروجي تکه برنامه هايي که از دو يا چندين for استفاده ميکنند توضيح دهيد. آيا براي اين کار از فرمول يا روش خاصي استفاده ميکنند ؟ چون من نميتوانم چنين مسائلي که از چندين for استفاده ميکنند را حل نمايم. اگر منبعي در اينترنت مي شناسيد معرفي نماييد يا کاملا در اين مورد توضيح دهيد.
مثلا در مورد برنامه زير چون هر دو شمارنده حلقه ها از صفر شروع شده است تقريبا ساده است و خروجي آن به صورت زير است اما در مورد برنامه هاي پيچيده تر مشکل دارم.
main()
int i,j,x=0;
for(i=0;i<5;++i)
{
for(j=0;j<i;++j)
x+=(i+j+1);
printf("%3d",x);
}
printf("\n%d",x);
}
خروجي :
1 4 9 16 25
25
با تشکر