۰
subtitle
ارسال: #۱
  
چطوری تشخیص بدم دو حلقه تو در تو به هم وابستن یا نه؟
سلام
چطوری تشخیص بدم دو حلقه تو در تو به هم وابستن یا نه؟
ممنون میشم با حوصله واسم توضیح بدین
چطوری تشخیص بدم دو حلقه تو در تو به هم وابستن یا نه؟
ممنون میشم با حوصله واسم توضیح بدین
۰
ارسال: #۲
  
چطوری تشخیص بدم دو حلقه تو در تو به هم وابستن یا نه؟
سلام
وقتی در قسمت شرط حلقه داخلی مقدار اندیس حلقه داخلی با توجه به اندیس حلقه بیرونی شرطش قید شود
وقتی در قسمت شرط حلقه داخلی مقدار اندیس حلقه داخلی با توجه به اندیس حلقه بیرونی شرطش قید شود
۰
ارسال: #۳
  
چطوری تشخیص بدم دو حلقه تو در تو به هم وابستن یا نه؟
دقیقا درسته
یعنی حلقه داخلی از اندیس حلقه بالاترش جهت حرکت اندیس یا شروع اندیس یا پایان اندیس استفاده کنه. مثلا حلقه اول(بیرونی ترین حلقه) شمارندش i باشه و حلقع دوم به این صورت ها باشه:
for j=i to n
for j=1 to i
for j=1 to i; j=j+1
و حالات دیگه از ترکیب این حالت ها.
در کل یا شروع شمارنده حلقه ، یا گام شمارنده یا پایان شماره داخلی تابعی از شمارنده (های) خارجی باشه.
یعنی حلقه داخلی از اندیس حلقه بالاترش جهت حرکت اندیس یا شروع اندیس یا پایان اندیس استفاده کنه. مثلا حلقه اول(بیرونی ترین حلقه) شمارندش i باشه و حلقع دوم به این صورت ها باشه:
for j=i to n
for j=1 to i
for j=1 to i; j=j+1
و حالات دیگه از ترکیب این حالت ها.
در کل یا شروع شمارنده حلقه ، یا گام شمارنده یا پایان شماره داخلی تابعی از شمارنده (های) خارجی باشه.
۰
ارسال: #۴
  
چطوری تشخیص بدم دو حلقه تو در تو به هم وابستن یا نه؟
ببینید یه سئوال هست که به این صورته
for(i=1,i=n,i++)a
for(j=1,j=n,j++)aبعد گفته این دو حلقه وابسته نیستن ! حالا طبق نکته اولی که شما گفتین باید وابسته باشن! همین ها منو گیج کرده میشه توضیح بیشتری بدین؟
این دوتاa رو آخر حلقه ها گذاشتم که متن به هم نریزه جزو مثال نیست
for(i=1,i=n,i++)a
for(j=1,j=n,j++)aبعد گفته این دو حلقه وابسته نیستن ! حالا طبق نکته اولی که شما گفتین باید وابسته باشن! همین ها منو گیج کرده میشه توضیح بیشتری بدین؟
این دوتاa رو آخر حلقه ها گذاشتم که متن به هم نریزه جزو مثال نیست
ارسال: #۵
  
RE: چطوری تشخیص بدم دو حلقه تو در تو به هم وابستن یا نه؟
(۱۲ آبان ۱۳۹۱ ۱۰:۵۶ ق.ظ)ania_13 نوشته شده توسط: ببینید یه سئوال هست که به این صورته
for(i=1,i=n,i++)a
for(j=1,j=n,j++)aبعد گفته این دو حلقه وابسته نیستن ! حالا طبق نکته اولی که شما گفتین باید وابسته باشن! همین ها منو گیج کرده میشه توضیح بیشتری بدین؟
این دوتاa رو آخر حلقه ها گذاشتم که متن به هم نریزه جزو مثال نیست
ضمن تصدیق حرفهای همه دوستان و همچنین کامنت اخری (جناب esi) ، این حلقه ای که شما نوشتین در صورتی اجرا میشه که n=1 باشه، و در این صورت فقط حلقه یک بار اجرا میشه. چون شرط حلقه = قرار داده شده پس فقط همون بار اول اجرا میشه( توجه کن که بار بعدی با توجه به گام حرکت، i یا j برابر با ۲ میشن و دیگه شرط درست نخواهد بود). همون طور که دوستان گفتن،(درست تر اینه که از > یا => استفاده بشه). در صورتی که از متغیر های یکسان در مقدار اولیه، یا شرط حلقه ، یا گام حرکت استفاده شد، حلقه ها به هم وابسته خواهند بود.
موفق باشی.
۰
ارسال: #۶
  
چطوری تشخیص بدم دو حلقه تو در تو به هم وابستن یا نه؟
مهندس سلام
اینها وابسته نیستند دیگه جون در حلقه دوم که نیاز به حلقه اول نبوده خوب نگاه کن اولی i هستش دیدی ؟
که ای آقای i تا مساوی n که یک عدد می ره ولی در دومی خوب نگاه کن تو شرطی که داده آیا از i برابر j با چیز دیگری اسم برده ؟
نه دیگه نیست فقط تا n گفته n هم یک عدد سراسری هست اصلا وابستگی ندارند اگر j صدا کرده بود i رو اونوقت وابسته بودند
فهمیذی مهندس ؟
اینها وابسته نیستند دیگه جون در حلقه دوم که نیاز به حلقه اول نبوده خوب نگاه کن اولی i هستش دیدی ؟
که ای آقای i تا مساوی n که یک عدد می ره ولی در دومی خوب نگاه کن تو شرطی که داده آیا از i برابر j با چیز دیگری اسم برده ؟
نه دیگه نیست فقط تا n گفته n هم یک عدد سراسری هست اصلا وابستگی ندارند اگر j صدا کرده بود i رو اونوقت وابسته بودند
فهمیذی مهندس ؟
۰
ارسال: #۷
  
چطوری تشخیص بدم دو حلقه تو در تو به هم وابستن یا نه؟
حلقه دوم که ربطی به حلقه اول نداره !!!!
مرتبه اجراییش میشه O(n^2)a میشه (a برای بهم نخوردن متن).
البته شرط حلقه i<=n . j<=n هستش دیگه درسته !!!
تو حلقه دوم یعنی شمارنده j که از شمارنده i استفاده نکرده که وابسته بشن !!
مرتبه اجراییش میشه O(n^2)a میشه (a برای بهم نخوردن متن).
البته شرط حلقه i<=n . j<=n هستش دیگه درسته !!!
تو حلقه دوم یعنی شمارنده j که از شمارنده i استفاده نکرده که وابسته بشن !!
۰
ارسال: #۸
  
چطوری تشخیص بدم دو حلقه تو در تو به هم وابستن یا نه؟
مرسی از لطف همه شما عزیزان من مطلبو گرفتم.
اما اجازه بدین یه مثال دیگه بگم:
k:=0
for i:=1 to n do begin
for j:=1 to m do
begin
k:=k+1
j:=1
while j<n do begin
k:=k+1
j:=j*2
end
end
جواب شده
n(m+logn)a
a برای به هم نخوردن متن
خوب تحلیلتونو میگید؟ و اینکه آیا این do و begin تاثیری دارن توی وابستگی حلقه ها؟
اما اجازه بدین یه مثال دیگه بگم:
k:=0
for i:=1 to n do begin
for j:=1 to m do
begin
k:=k+1
j:=1
while j<n do begin
k:=k+1
j:=j*2
end
end
جواب شده
n(m+logn)a
a برای به هم نخوردن متن
خوب تحلیلتونو میگید؟ و اینکه آیا این do و begin تاثیری دارن توی وابستگی حلقه ها؟
۰
ارسال: #۹
  
چطوری تشخیص بدم دو حلقه تو در تو به هم وابستن یا نه؟
مهندس سلام
الان من منظورتو از وابستگی نمی فهمم توی هیچ کدام از حلقه هات وابستگی نداری حلقه اول m بار حلقه دوم n بار و آخری چون در while عمل ضرب شده می شه log چیزی هست باز هم شاید دوستان بهتر از من واست تریس کنن
الان من منظورتو از وابستگی نمی فهمم توی هیچ کدام از حلقه هات وابستگی نداری حلقه اول m بار حلقه دوم n بار و آخری چون در while عمل ضرب شده می شه log چیزی هست باز هم شاید دوستان بهتر از من واست تریس کنن
۰
ارسال: #۱۰
  
چطوری تشخیص بدم دو حلقه تو در تو به هم وابستن یا نه؟
سلام
منم همین جاها گیر میکنم دیگه مهندس!
منم همین جاها گیر میکنم دیگه مهندس!
۰
ارسال: #۱۱
  
چطوری تشخیص بدم دو حلقه تو در تو به هم وابستن یا نه؟
ببین نمی دونم واسه من خیلی سخته بخوام پشت نت واست تریس کنم ولی باید یکمی خودت کار کنی
ارسال: #۱۲
  
RE: چطوری تشخیص بدم دو حلقه تو در تو به هم وابستن یا نه؟
خب درسته دیگه :دی
for j:=1 to m do
و
for j:=1 to m do
توی حلقه ی for i:=1 to n do begin هستند
حلقه ی i به تعداد n بار اجرا می شه پس داخلش را ضربدر N می کنیم
n(داخلش)
داخلش هم حلقه for j به تعداد m بار , while هم لگاریتمیه اینجا چون شمارنده while داره با این دستور تغیر می کنه j:=j*2
پس داخل حلقه i می شه m+logn
در کل شد : n(m+logn)a
for j:=1 to m do
و
for j:=1 to m do
توی حلقه ی for i:=1 to n do begin هستند
حلقه ی i به تعداد n بار اجرا می شه پس داخلش را ضربدر N می کنیم
n(داخلش)
داخلش هم حلقه for j به تعداد m بار , while هم لگاریتمیه اینجا چون شمارنده while داره با این دستور تغیر می کنه j:=j*2
پس داخل حلقه i می شه m+logn
در کل شد : n(m+logn)a
۰
ارسال: #۱۳
  
چطوری تشخیص بدم دو حلقه تو در تو به هم وابستن یا نه؟
دقیقا این دوستمون خوبم واست تریس کرد ببین مهندس تریس اینها نیاز به یکمی تمرین داره خیلی گیر داری به متغیر ها مقدار بده رفتارش دستت می یاد جدول تریس بکش بعدش قشنگ تریس کن مقدار ها را کم هم نده تا ۸ بده رفتارش دستت می یاد
۰
ارسال: #۱۴
  
چطوری تشخیص بدم دو حلقه تو در تو به هم وابستن یا نه؟
اااااااااااااااا
خط سوم به جای for j:=1 to m do منظورم while بوده ، کپی نشده انگار
ببخشید
یعنی این:
for j:=1 to m do
و
while....
توی حلقه ی for i:=1 to n do begin هستند
خط سوم به جای for j:=1 to m do منظورم while بوده ، کپی نشده انگار
ببخشید
یعنی این:
for j:=1 to m do
و
while....
توی حلقه ی for i:=1 to n do begin هستند
۰
Can I see some ID?
Feeling left out?
نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. رمزت رو فراموش کردی؟ اینجا به یادت میاریم! close