کسی میتونه سئوال به این اسانی رو حل کنه؟
الگوریتمی برای محاسبهی 3 به توان n به 5 روش بنویسید؟
1):تتا(N) به روش بازگشتی
2):تتا(N) به روش غیر بازگشتی
3):تتا(n به توان 3)
4):تتا(2 به توان N)
5):تتا (5n)
2 و 5 رو نوشتم سه تای دیگر رو اگه کسی میتونه کمک کنه
من تازه این ترم طراحی الگوریتم میخونم و اوایل ترم زیاد از طراحی هنوز یاد نگرفتم
ای کسی که میای پست رو انتقال میدی لااقل یه جوابی هم بده بعدش انتقال بده.
کسی نیست جواب بده
متوجه منظور سئوال نشدم
چون نوشتید الگوریتمی برای محاسبه 3 به توان n ولی در گزینه های3و4و5 چیز دیگه ای نوشته شده
منظورتون محاسبه مرتبه اجرایی هرکدوم از سئوالات 1 تا 5 هست؟
لطف کنید فارسی بنویسید ممنون
من هم روش حل رو نوشته بودم بعد پاکش کردم چون فکر میکردم مرتبه زمانی رو میخوان
مرتبه زمانی مسئله اول میشه N
ومسئله 3 میشه 1 و مسئله 4 برابر n
(30 آبان 1390 11:08 ب.ظ)variant20002000 نوشته شده توسط: [ -> ]۳------------------
long int counter=0;
for(int i=1 to n)
for (int j=1 to n)
for (int k=1 to n)
counter++;
این روش چطوره به نظرتون؟درسته؟:
حل 3:
Int Function n_3(int n)
p=1
for (i=1;i<=3;i++)
{
p=n*p
return(p)
{
حل 4:
int function 2_n(int n)
{p=1
for(i=1;i<=n;i++)
p=2*p
return(p)
}
نمیدونم hamed_k2 جوابشون رو گرفتند یا نه؟
خانم فاطیما من فکر میکنم منظورشون از این سوال نوشتن این برنامه با پیچیدگی های مختلف بود. الگوریتم هایی هم که نوشتید جالب بود
ولی توی الگوریتم اولتون باید p=1 قبل از for باشه و return هم بعد از for باشه. این الگریتم پیچیدگیش ثابته ... الگوریتم دومتون هم پیچیدگیش n هست که 2 به توان n رو برمیگردونه....! فکر نمیکنم منظور حامد خان این بوده باشه.
به هر حال مرسی الگوریتماتون قشنگ بود.
در مورد الگوریتم 4 که باید 2 به توان n باشه باید بگم که اولن این تابع باید برگشتی باشه و دوما به فرم 2f(n-1)l باشه
من اینو نوشتم امیدوارم درست باشه و حامد خان به نتیجه برسه از این پست
int f(n)
{
if(n==0)return 1;
return 1.5f(n-1);
return 1.5f(n-1);
}
"انرژی مثبت" جان چشم فارسی مینویسم....!
درسته p=1باید خارج forباشه.اشتباه از بی دقتی بود.درست شد. اطلاعات صورت مسئله کامل نبود والا بهتر میشد جواب داد حالا چرا "خنده زیاد"! کردید به الگوریتم های من؟
دوستان خیلی ممنون از همهی شما تشکر ویژه منم دیگه خودم به کمک استاد نوشتم که شامل موارد زیر می باشد نوشتم شاید به درد دوستان بخوره:
1- long pow (int n)
}
long a = 1
int;
for(i=1 ; i<=n; i++)
a*=3
return(a)
{
2-long pwr (int n)
}
if(n==0)
return 1;
else
return (3*pwr(n-1));
{
3-
long pwr(int n)
}
if (n==0)
return 1;
else
return(pwr(n-1) + pwr(n-1) + pwr(n-1));
}
4-
long pwr (int n )
}
if (n==0)
return 1;
else
return (pwr(n-1) + 2*pwr(n-1)
5-
این حالت الگوریتم بهترین حالت می باشد که مرتبه زمانیش log n
long optpow(int n )
}
lon q;
if(n==0)
q=1;
else}
q=optpow(n/2);
q*=q
if(n%2==1)
q*=3;
}
return q;
}
در کل منظور و هدف از این سئوال نوشتن الگوریتم برای محاسبه 3 به توان n که دارای 5 پیچیدگی زمانی مختلف که از نوع تتا های مختلف باشد پیچیدگی زمانی هر یک از الگوریتم های فوق هم حل شده که دیگه نشد بنویسم