Skip to main content

Loops (பார்வை - 08)

அனைவருக்கும் வணக்கங்கள்...

இந்தப்பதிப்பின் ஊடாக சுலபமான வழிகளின் ஊடாக அதிக தடவைகள் சில தகவல்களை எவ்வாறு Print பண்ணலாம் என நோக்குவோம்.

குறிப்பாக

Print "Hello" என்ற குறியீடு பிரதான திரையில் ஒரு முறை “Hello" எனும் வாசகத்தை அச்சிடுகிறது. மேற்படி “Hello” எனும் வாசகம் பிரதான திரையில் 10 தடவைகள் அச்சிடப்பட வேண்டும் எனில் Print "Hello" எனும் குறியீட்டினை ஒன்றன் கீழ் ஒன்றாக 10 தடவைகள் தட்டச்சு செய்து பெற முடியும்.

 
இவ்வாறு ஒரே வகையில் கையாளக்கூடிய தகவல்களை மீண்டும் மீண்டும் குறியீடுகளை தட்டச்சு செய்வதன் மூலம் பெறுவதை விடுத்து சில அடிப்படை கணித அறிவினை இங்கு புகுத்துவதன் மூலம் இவ்வாறான செயல்களை இலகுவாக செய்திடலாம். அதாவது மீண்டும் மீண்டும் ஒரே வகையான செயலினை செய்வதை தான் Loop என்கிறோம். 

மேற்படி “Hello” வாசகத்தினை பத்து தடவைகள் Print "Hello" என்று தட்டச்சு செய்யாமல் வேறு எந்த வழியில் இலகுவாக பிரதான திரையில் பதியச்செய்யலாம் என்று நோக்குவோம். 

  

மீண்டும் மீண்டும் Print "Hello" என்று தட்டச்சு செய்யாமல் இங்கு 5 வரிகளுக்குள்ளாகவே பத்து தடவைகள் " Hello" என்று தட்டச்சு செய்யப்படுகிறது. பத்து தடவைகளுக்கு மட்டுமல்ல 1000 தடவைகள் என்றாலும் மேற்படி 5 வரிகளுக்குள்ளாகவே அதற்குரிய கட்டளைகள் இடப்படுகின்றன.

இங்கு எழுதப்பட்டிருக்கின்ற கட்டளைகள் மூலம் நிறைவேற்றப்படுவது தான் Loop எனும் செயன்முறை. அதாவது குறிப்பிட்ட சில கட்டளைகள் மீண்டும் மீண்டும் இயங்குவதன் ஊடாகவே எம்மால் 10 தடவைகள் Hello எனும் வாசகத்தை பெறமுடிந்துள்ளது. குறியீட்டு பகுதியில் Print “Hello” என்று ஒரு தடவை மாத்திரம் எழுதப்பட்டும் பிரதான திரையில் மேற்படி வாசகம் 10 தடவைகள் இடம் பெறுகின்றதென்றால் மேற்படி குறியீடு (Print "Hello")பத்து தடவைகள் இயங்கியுள்ளது என்று தானே அர்த்தம். 
பார்க்கலாம். Loop பற்றிய ஒரு பார்வையை மேலுள்ள பகுதி மூலம் பார்த்துவிட்டோம். இனி, Loop பற்றியதான விளக்கங்களின் ஊடாக மேலும் சில விடயங்களை நோக்கலாம். 

பொதுவாக Visual Basic இல் Loops இனை பொதுவாக 3 வழிகளில் கையாளலாம். கையாளும் வழிமுறைகள் பற்றி பார்க்கலாம். 

1. Do... While
2. Do ... Until
3. For...

1. Do... While

இந்த வகையான Loop இனை இருவழிகளில் கையாளலாம்.
அவற்றினை குறியீகளை பயன்படுத்துவதன் மூலம் வாய்ப்பு பார்க்கலாம். 

மேலே உதாரணத்தில் காட்டப்பட்ட குறியீட்டுத்தொகுதி மூலம் இது தான் கையாளப்பட்டுள்ளது. 


1 என இலக்கமிடப்பட்டுள்ள குறியீடு இடப்பட்டதன் நோக்கம் என்னவென்பதை தாங்கள் முன்னைய பதிவுகளின் மூலம் அறியக்கூடயதாக இருக்கும் என எண்ணுகிறேன். x எனும் integer Variable இனை Declare பண்ணும் குறியீடு தான் அது.
குறிப்பிட்ட Variable (x) Declare பண்ணுப்பட்டவுடன் அதன் பெறுமதி 0 ஆக கருதப்படுகிறது. 

அதன் பின்னர் எழுதப்படும் 4 வரிகளுமே குறிப்பிட்ட Loop இனை கையாளும் குறியீடுகளாக (Codes) அமைகின்றன. அதிலும் "Do" என்று குறிப்பிடும் பட்சத்தில் அவற்றிற்கு கீழே உள்ளவற்றை செயல்படுத்து எனும் கட்டளை அங்கே பிறப்பிக்கப்படுகிறது. 

இங்கு “Do” என்று குறிப்பிட்டு அதனுடனேயே குறிப்பிட்ட செயற்முறைக்கான வரையறையையும் செய்து கொள்ளுகிறோம். (Condition). மஞ்சள் நிறத்தால் மூடப்பட்டிருக்கும் குறியீட்டுப்பகுதி (While x<10) இனால் மேற்படி Loop எந்த கட்டம் வரைக்கும் இயங்கவேண்டும் எனும் வரையறை வழங்கப்படுகிறது. அதாவது x இன் பெறுமானம் 10இற்கு குறைவானதாக இருக்கும் சந்தர்ப்பத்தில் Loop இனை செயற்படுத்து என்று பொருள்படுகிறது. 

ஏற்கனவே செயற்படுத்தக்கூடிய குறியீடுகள் "Do" எனும் குறியீட்டிற்கு கீழ் உள்ள பகுதிகளை என்று கூறிவிட்டேன்...

ஆகவே இலக்கம் 2 ஆல் குறிப்பிடப்பட்ட ( Print "Hello", x=x+1) போன்ற குறியீடுகள் செயற்படுத்தப்படுகின்றன. 

காரணம் "Loop" எனும் குறியீட்டினை Loop இயக்கமானது முடிவடைவதை குறிப்பிடுவதற்காக தான் அங்கு பதிவு செய்கிறோம். ஆகையால் “Do” எனும் பகுதிக்கு கீழே உள்ளதும் “Loop” எனும் பகுதிக்கு மேலே உள்ளதுமான குறியீடுகளை  குறிப்பிட்ட வரையறைகளிற்கு(Condition,x<10) அமைவாக இயக்கு என்பதை பொருள்படக்கூடியவாறே மேற்படி குறியீட்டுத்தொகுதி (Code set) அமைக்கப்பட்டுள்ளது. 

 இப்போது மீண்டும் மீண்டும் செயற்படுத்தப்படுகின்ற அந்த இரு குறியீடுகள் மூலம்  ( Print "Hello", x=x+1 ) என்ன குறிப்பிடப்பட்டுள்ளது என்று நோக்குவோம். 


Print "Hello"
 "Hello" எனும் வாசகத்தை பிரதான திரையில் பதிவு செய்.

x=x+1
x+1 இன் பெறுமதி எதுவோ அதை x இற்கு வழங்கு...
அதாவது Variable x இனை Declare பண்ணியவுடன் அதன் பெறுமதி 0 என குறிப்பிட்டிருந்தேன். ஆகவே x+1 (0+1) இன் பெறுமதியான 1 இனை x இன் பெறுமதியாக்கு என்று பொருள்படுகிறது. 

மேலே காட்டப்பட்ட படம் மூலமாக குறியீடுகள் கையாளப்படும் படிமுறைகளும் குறித்த படிமுறையில் x இன் பெறுமதியும் காட்டப்பட்டுள்ளது. 
அங்கு 2ம் படிமுறையின் பின்னர் 3,4ம் படிமுறைகள் செயல்படுத்தப்படும். செயற்படுத்தப்பட்ட பின்னர் குறியீட்டு வரைமுறை (Condition, x<10) ஆராயப்பட்டு (படிமுறை 5) சரியாகும் பட்சத்தில் மீண்டும் Print "Hello" மற்றும் x=x+1 எனும் குறியீடுகள் செயல்படுத்தப்படுகின்றன. Condition பிழையாகும் வரை மேற்படி இரு குறீயீடுகளும் மீண்டும் மீண்டும் செயல்படுத்தப்படுவதை மேலே காட்டப்பட்ட படம் விளங்கப்படுத்துகிறது. 

இங்கு Condition இல் 10 இற்கு குறைவாக என்று கட்டளை இட்டதன் காரணமாக “Hello”  எனும் வாசகம் 10 தடவைகள் மாத்திரம் பதிவு செய்யப்பகிறது. 
அங்கே x<1000 என கொடுக்கப்படும் பட்சத்தில் ஒன்றன் பின் ஒன்றாக “Hello” எனும் வாசகம் 1000 தடவைகள் பதிவு செய்யப்படும்.

Loop பற்றிய தெளிவான ஆழமான விளக்கத்தினை என்னால் இயன்ற அளவு விளக்கியிருக்கிறேன் என எண்ணுகிறேன். 
அடுத்த பதிவுகளின் ஊடாக Loop கையாளப்படும் ஏனைய வழிமுறைகளை பார்க்கலாம். 

பார்வைகள் தொடரும் ...

Comments

Popular posts from this blog

பெர்முடாவும் கருந்துளையும் ( மாய இராஜ்ஜியம் 20 )

பெர்முடா மர்மம் பற்றிய ஆய்வுத்தொடர் (மாய ராஜ்ஜியம்) 19 பகுதிகளுடன் நிறைவடைந்து விட்டது. இந்த ஆய்வு தொடர்பாக வாசகர் ஒருவரின் கருத்துகளிற்குரிய பதில் கருத்துகளாக இப்பகுதி வெளிவருகிறது. அவ்வாசகரின் கருத்துக்களை பார்வையிட கீழுள்ள தொடர்பினை அணுகவும்.           http://unmayinpakkam.blogspot.com/2010/05/05_22.html#comments என்னுடைய ஆய்வு முடிவை நான் இரண்டு படிகளில் தெரிவித்திருந்தேன். முதலாவதாக அண்டவெளியில் ஆங்காங்கே தோன்றுகின்ற காலத்தால் வேறுபட்ட இடங்களை ஒத்த இடங்கள் பூமியில் தோன்றுவதன் சாத்தியமும் , இரண்டாவதாக இதன் விளைவாக கருந்துளை அவ்விடத்தில் உருவாகுவதற்கான வாய்ப்பும் ஆகும்.   1.சடத்துவ மற்றும் சடத்துவமல்லாத சார்புச்சட்டங்களின் சார்பியக்கத்தின் விளைவாக ஏற்படும் கால வேறுபாடு பற்றி ஐன்ஸ்டீன் உள்ளிட்ட பல விஞ்ஞானிகள் ஆராய்ந்திருக்கிறார்கள். இச்சார்பு விளைவு காரணமாக பிரபஞ்சத்தின் நடுவில் ஒரு பொதுக்கடிகாரம் பயன்படுத்தப்படுவது என்பது சாத்தியமற்றதாகின்றது. மேலும் விளக்குகையில், விரியும் பிரபஞ்சம், அதன் தாக்கத்தை தமக்குள் வெளிப்படுத்தும் ...

கண்ணம்மா 03

பிள்ளைகளை பாடசாலைக்கு அனுப்பிய அவர்கள் கவலை தோய்ந்த முகத்துடன் வீட்டினுள் நுழைய, "டேய் கணேஸ்!! , டேய் கணேஸ்"   என்று உரக்கக் கேட்ட சத்தத்தை கேட்டதும் வீட்டினுள் சென்ற இருவரும் வெளியே விரைந்து அழைத்தவனைக் கண்டனர். அங்கு கணேசன், "ஆ,  கமலண்ணாவா, அண்ணா !!, என்ர நிலமய உங்களுக்கு என்னண்டு புரிய வைக்கிறது எண்டு தெரியாமலிருக்கு. அண்ணா இப்ப எங்கட் குடும்பம் சரியான கஸ்டத்துல இருக்குது . எப்பிடியும் இந்த மாதம் முடிய கிடைக்கிற சம்பளத்துல அஞ்சு பத்துண்டு ஒரு வருசத்துல கடன அடச்சிர்றண்ண". என விழி அருவி சொரிய மொழிந்தான். " இந்தச் சாட்டெல்லாம் எவ்வளவு நாளுக்குத்தான் சொல்லுவாய்? இதெல்லாம் என்னட்ட வச்சிருக்காத சரியோ!!!! நீ எல்லாம் ஒரு ஆம்பிள...... சொல்ல வெக்கமா இல்ல. அது சரி, மானம் , மரியாத, சூடு, சுறண... இதெல்லாம் இல்லாதவங்ககிட்ட வெக்கம் எங்கால இருக்கப்போகுது??!!. நான் மட்டும் உன்ர நிலயில இருந்திருந்தா நாக்க புடுங்கிக்கிட்டு செத்துப் போயிருப்பன்டா!!! நீ இதெல்லாம் இந்த உலகத்துல இருக்கிறதே வேஸ்ட் தூ...." என்று வெந்த புண்ணில் வேல் பாய்ந்த வலியை சொற்களால் கோர்த்துவிட்...

யார் ? இவர்கள் 01

முன்னுரை ஏன்? எதற்கு? எப்படி? இந்தக்கேள்விகளுக்கு விடை இல்லாமல் எதுவும் இல்லை என்ற நம்பிக்கையுடன் அறிவியல் வளர்ந்துள்ளது. உலகம் படைக்கப்பட்டது முதல் இன்று வரை அறிவியல் துறையில் ஏற்பட்ட வளர்ச்சி பிரமாண்டமானது; பிரம்மிக்கத்தக்கது. அறிவியல் கண்டுபிடிப்புக்கள் மூலமே இன்றைய நாகரிக மனிதனின் வாழ்வு வளம் பெற்றிருக்கிறது என்று கூறும் வண்ணம் அறிவியலின் ஆக்கிரமிப்பு மனித வாழ்க்கையோடு ஒன்றிவிட்டது. உலகையும் மனிதனையும் அறிவியலும் அதன் படைப்புகளும் ஆக்கிரமித்துக்கொண்டாலும் அவ்வப்போது நிகழும் சில அதிசய சம்பவங்கள் அறிவியல் உலகோடு கண்ணாமூச்சி ஆடுகின்றன. அறிவியலின் கழுத்தை அவ்வப்போது நெரிக்கும் இந்த மர்ம முடிச்சுக்கள் ஏன் நிகழ்கின்றன. என்பன புரியாத புதிர். அவிழ்க்கப்படாத இந்த சிக்கலான முடிவுகள் பல உண்டு. அவற்றுள் ஒன்று தான் U.F.O (UNIDENTIFIED FLYING OBJECTS ) எமக்கு “பறக்கும் தட்டுகள்” என்று பரிச்சயமானவை தான் இந்த “U.F.O” கள் காலங்காலமாகவே இந்தப்பறக்கும் தட்டுகள் உலகின் பல்வேறு இடங்களிலும் உள்ளோரால் அவதானிக்கப்பட்டு வந்துள்ளன. எனினும் மேற்படி அனைத்து சந்தர்ப்பங்களிலும் அவதானித்தோரால் வெற்றிகரமாக ...