Skip to main content

പാഠം 4: നെസ്റ്റഡ് ലൂപ്പുകളുള്ള പ്രോജക്റ്റ് ഫ്ലോ

നെസ്റ്റഡ് ലൂപ്പുകൾ ഉള്ളപ്പോൾ, പ്രോജക്റ്റ് ഒഴുക്ക് അമിതമായി തോന്നാം. പുറം ലൂപ്പിന്റെ ആവർത്തനങ്ങളോ അവസ്ഥകളോ പരിശോധിച്ച്, ആന്തരിക ലൂപ്പ് ആരംഭിക്കുന്നതിനായി ട്രിഗർ ചെയ്തുകൊണ്ടാണ് പ്രോജക്റ്റ് ആരംഭിക്കുന്നത്.
എല്ലാ ആവർത്തനങ്ങളും പൂർത്തിയാകുന്നതുവരെ അല്ലെങ്കിൽ വ്യവസ്ഥ പാലിക്കുന്നതുവരെ ആന്തരിക ലൂപ്പ് എക്സിക്യൂട്ട് ചെയ്യുന്നു, തുടർന്ന് പുറം ലൂപ്പിലേക്ക് മടങ്ങുന്നു. പുറം ലൂപ്പിന്റെ എല്ലാ ആവർത്തനങ്ങളും പൂർത്തിയാകുന്നതുവരെ അല്ലെങ്കിൽ പുറം ലൂപ്പിന്റെ അവസ്ഥ പാലിക്കുന്നതുവരെ ഈ ചക്രം ആവർത്തിക്കുന്നു.

താഴെയുള്ള ഉദാഹരണത്തിൽ, പുറം ലൂപ്പിന്റെ ആദ്യ ആവർത്തനം ആരംഭിച്ചുകൊണ്ട് പ്രോജക്റ്റ് ആരംഭിക്കുന്നു. ഈ സാഹചര്യത്തിൽ, പുറം ലൂപ്പ് മൂന്ന് തവണ ആവർത്തിക്കുന്നു.

  • ആദ്യത്തെ [Repeat until] ബ്ലോക്ക് ആദ്യത്തെ ആന്തരിക ലൂപ്പ് ആണ്.

    മൂന്ന് ഡിസ്കുകളും ലക്ഷ്യങ്ങളിലേക്ക് നീക്കുന്നതിന് മുൻ പേജിൽ നിന്ന് പ്രോജക്റ്റിന്റെ പുറം, അകത്തെ ലൂപ്പ് തിരിച്ചറിയുന്നതിനുള്ള പ്രോജക്റ്റ് ഫ്ലോയുടെ ഒരു ഡയഗ്രം. 3 ആയി സജ്ജീകരിച്ചിരിക്കുന്ന റിപ്പീറ്റ് ലൂപ്പിനെ ഔട്ടർ ലൂപ്പ് എന്നും, ഡൗൺ ഐ സെൻസർ ഉപയോഗിച്ച് ഡിസ്കിലേക്ക് ഡ്രൈവ് ചെയ്യുന്നതിനുള്ള റിപ്പീറ്റ് അൺടിൽ ലൂപ്പ് ഇന്നർ ലൂപ്പ് എന്നും ലേബൽ ചെയ്തിരിക്കുന്നു.
  • കണ്ടീഷൻ TRUE ആയി റിപ്പോർട്ട് ചെയ്യപ്പെടുന്നതുവരെ ആദ്യത്തെ ആന്തരിക ലൂപ്പ് പ്രവർത്തിക്കും. തുടർന്ന് പ്രോജക്റ്റ് ആദ്യത്തെ ആന്തരിക ലൂപ്പിൽ നിന്ന് വേർപെട്ട് പുറം ലൂപ്പിനുള്ളിലെ ബാക്കി ബ്ലോക്കുകളിലൂടെ നീങ്ങാൻ തുടങ്ങും.

    അതേ പ്രോജക്റ്റിന്റെ പ്രോജക്റ്റ് ഫ്ലോയുടെ ഒരു ഡയഗ്രം, ഇത്തവണ ഇന്നർ ലൂപ്പിന്റെ പ്രവർത്തനങ്ങളിൽ ശ്രദ്ധ കേന്ദ്രീകരിക്കുന്നു, റിപ്പീറ്റ് അണ്ടിൽ ലൂപ്പ്. ഡൗൺ ഐ ഒരു വസ്തുവിനെ കണ്ടെത്തുന്നതുവരെ പ്രോജക്റ്റ് ആന്തരിക ലൂപ്പ് നടപ്പിലാക്കും, മുന്നോട്ട് നീങ്ങും, ആ ഘട്ടത്തിൽ അത് സ്റ്റാക്കിലെ ബാക്കി ബ്ലോക്കുകളിലേക്ക് നീങ്ങും.
  • രണ്ടാമത്തെ [Repeat until] ബ്ലോക്ക് ആരംഭിക്കുന്നത് വരെ ഇത് തുടരും. ഇത് രണ്ടാമത്തെ ആന്തരിക ലൂപ്പാണ്.

    അതേ പ്രോജക്റ്റിന്റെ പ്രോജക്റ്റ് ഫ്ലോയുടെ ഒരു ഡയഗ്രം, ഇത്തവണ രണ്ടാമത്തെ ആന്തരിക ലൂപ്പിനെ തിരിച്ചറിയുന്നു - ഡിസ്റ്റൻസ് സെൻസർ ഉപയോഗിച്ച് ലക്ഷ്യത്തിലേക്ക് തിരികെ ഡ്രൈവ് ചെയ്യാൻ ഉപയോഗിക്കുന്ന റിപ്പീറ്റ് അൺടിൽ ബ്ലോക്ക്. പ്രോജക്റ്റ് ആദ്യത്തെ ആന്തരിക ലൂപ്പിൽ നിന്ന് നീങ്ങുമ്പോൾ, VR റോബോട്ട് ഡ്രൈവിംഗ് നിർത്തി, ഡിസ്ക് എടുത്ത്, ലക്ഷ്യത്തെ അഭിമുഖീകരിക്കാൻ തിരിഞ്ഞുനിൽക്കും. രണ്ടാമത്തെ ആന്തരിക ലൂപ്പ് പിന്നീട് എക്സിക്യൂട്ട് ചെയ്യും, ഇത് 200 മില്ലിമീറ്ററിൽ താഴെയുള്ള മൂല്യം ഡിസ്റ്റൻസ് സെൻസർ റിപ്പോർട്ട് ചെയ്യുന്നതുവരെ റോബോട്ട് മുന്നോട്ട് ഓടിക്കാൻ ഇടയാക്കും.
  • ബ്ലോക്കിന്റെ അവസ്ഥ പാലിക്കുന്നതുവരെ രണ്ടാമത്തെ ഇന്നർ ലൂപ്പിനുള്ളിലെ ബ്ലോക്കുകൾ ആവർത്തിക്കും. തുടർന്ന് പ്രോജക്റ്റ് രണ്ടാമത്തെ ആന്തരിക ലൂപ്പിൽ നിന്ന് വേർപെട്ട് പുറം ലൂപ്പിനുള്ളിലെ ബാക്കി ബ്ലോക്കുകളിലൂടെ നീങ്ങാൻ തുടങ്ങും.

    ഒരേ പ്രോജക്റ്റിന്റെ പ്രോജക്റ്റ് ഫ്ലോയുടെ ഒരു ഡയഗ്രം, ഇത്തവണ രണ്ട് ആന്തരിക ലൂപ്പുകൾക്കിടയിലുള്ള ഒഴുക്ക് തിരിച്ചറിയുന്നു. ആദ്യത്തെ ആന്തരിക ലൂപ്പ്, ഡൗൺ ഐ സെൻസർ വസ്തുവിനെ കണ്ടെത്തുന്നതുവരെ റോബോട്ടിനെ ആവർത്തിച്ച് മുന്നോട്ട് ഓടിക്കാൻ പ്രേരിപ്പിക്കും, തുടർന്ന് ഡിസ്ക് എടുത്ത് ലക്ഷ്യത്തിലേക്ക് തിരിയാനുള്ള ബ്ലോക്കുകൾ നടപ്പിലാക്കും. അടുത്തതായി, രണ്ടാമത്തെ ആന്തരിക ലൂപ്പ് VR റോബോട്ടിനെ 200mm-ൽ താഴെയുള്ള മൂല്യം റിപ്പോർട്ട് ചെയ്യുന്നതുവരെ മുന്നോട്ട് കൊണ്ടുപോകും, ​​തുടർന്ന് ലക്ഷ്യത്തിൽ ഡിസ്ക് ഉപേക്ഷിച്ച് അടുത്ത ലക്ഷ്യത്തിലേക്ക് തിരിയാൻ ആവശ്യമായ ബ്ലോക്കുകൾ പ്രവർത്തിക്കും.
  • പുറം ലൂപ്പിലെ എല്ലാ ബ്ലോക്കുകളും പൂർത്തിയായിക്കഴിഞ്ഞാൽ, പ്രോജക്റ്റ് പുറം ലൂപ്പിന്റെ തുടക്കത്തിലേക്ക് തിരികെ പോയി പ്രക്രിയ വീണ്ടും ആവർത്തിക്കുന്നു.

    ഈ സ്വഭാവങ്ങളെല്ലാം പുറം ലൂപ്പ് മൂന്ന് തവണ ആവർത്തിക്കുന്നത് എങ്ങനെയെന്ന് കാണിക്കുന്ന പ്രോജക്റ്റിന്റെ ഒഴുക്കിന്റെ ഒരു ഡയഗ്രം, ആ ഘട്ടത്തിൽ 3 ആയി സജ്ജീകരിച്ചിരിക്കുന്ന പുറം ആവർത്തന ലൂപ്പിന്റെ പാരാമീറ്റർ ശരിയാണെന്ന് റിപ്പോർട്ട് ചെയ്യുകയും പ്രോജക്റ്റ് പുറം ലൂപ്പിൽ നിന്ന് പുറത്തുവരുകയും ചെയ്യുന്നു.

ചോദ്യങ്ങൾ

പാഠ ക്വിസ് ആക്‌സസ് ചെയ്യുന്നതിന് താഴെയുള്ള ലിങ്ക് തിരഞ്ഞെടുക്കുക.

ഗൂഗിൾ ഡോക് / .ഡോക്സ് / .പിഡിഎഫ്