توضيحات مربوط به نوشتن توابع را در سايت نمي گذاريد؟
تمرین سوم درس برنامه نویسی پیشرفته
آخرین به روز رسانی در شنبه 25 مهر 1388 ساعت 16:18 نوشته شده توسط مدیر سایت سه شنبه 21 مهر 1388 ساعت 14:29
1. تابعی بنویسید که فاکتوریل یک عدد را حساب کند.int fact(int n);2. همین تابع را به گونه ای بنویسید که اگر عدد وارد شده کمتر از صفر باشد false برگرداند! خروجی باید در *pFact ذخیره شود.
bool fact(int n, int* pFact);3. تابعی بنویسید که سینوس زاویه ورودی را با استفاده از بسط تیلور (تا 16 جمله) حساب کند. استفاده از تابع آماده sin مجاز نیست.
راهنمایی: اگر بسط تیلور سینوس را نمی دانید به آدرس زیر مراجعه کنید:
sin(x) = x/1! - x3/3! + x5/5! -x7/7! + ...
//angle must be in degree
double sin(double angle);4. تابع دیگری بنویسید که exp(x) را حساب کند (با استفاده از بسط تیلور)
5. خروجی برنامه زیر چیست؟
int increase(int x, int count)
{
x += count;
return x;
}
int main(int argc, char* argv[])
{
int i = 10;
int j = increase(i, 5);
cout << "i = " << i << "\n";
cout << "j = " << j << "\n";
j = increase(10, 5);
cout << "j = " << j << "\n";
return 0;
}int increase(int &x, int count)
{
x += count;
return x;
}
int main(int argc, char* argv[])
{
int i = 10;
int j = increase(i, 5);
cout << "i = " << i << "\n";
cout << "j = " << j << "\n";
//j = increase(10, 5);
cout << "j = " << j << "\n";
return 0;
}اگر کامنت خطی که کامنت شده است را برداریم، آیا برنامه به درستی اجرا خواهد شد؟ چرا؟

