கட்டுப்பாட்டுக் கட்டமைப்புகள் - Study Notes
அத்தியாயச் சுருக்கம்
கட்டுப்பாட்டுக் கட்டமைப்புகள் என்பது நிரலின் பாய்வை அல்லது கட்டுப்பாட்டை மாற்றுவதற்குப் பயன்படுத்தப்படும் முக்கிய கூற்றுகள் ஆகும். பைத்தான் நிரலாக்க மொழியில் வரிசைமுறை (Sequential), கிளைப்பிரிப்பு (Branching) மற்றும் சுழற்சி அல்லது மடக்கு (Iterative/Looping) என மூன்று முதன்மையான கட்டுப்பாடு கட்டமைப்புகள் உள்ளன. கிளைப்பிரிப்பு கட்டமைப்பில் எளிய if, if-else மற்றும் பின்னலான if-elif-else கூற்றுகள் பயன்படுத்தப்படுகின்றன. அதேசமயம், சுழற்சி அல்லது மடக்கு கட்டமைப்பில் while மற்றும் for மடக்குகள் பயன்படுத்தப்படுகின்றன. மேலும், தாவல் கூற்றுகளான break, continue மற்றும் pass ஆகியவை கட்டுப்பாட்டை நிரலின் ஒரு பகுதியிலிருந்து மற்றொரு பகுதிக்கு எவ்வித நிபந்தனையுமின்றி மாற்ற உகந்ததாக உள்ளன.
கற்றல் நோக்கங்கள்
- பைத்தான் மொழியில் உள்ள பல்வேறு பாய்வுக் கட்டுப்பாட்டுக் கட்டமைப்புகளைப் புரிந்துகொள்ளுதல்.
- கிளைப்பிரிவு கூற்றுகளின் கட்டமைப்பு மற்றும் அவற்றின் செயல்பாடுகளை அறிந்துகொள்ளுதல்.
- மடக்கு அமைப்புகளின் (while மற்றும் for) மூலம் மீண்டும் மீண்டும் இயக்கப்படும் நிரல் தொகுதிகளை உருவாக்கக் கற்றல்.
- தாவல் கூற்றுகளான break, continue, மற்றும் pass ஆகியவற்றின் பயன்களை அறிந்து அவற்றை நிரலில் சரியாகப் பயன்படுத்துதல்.
முக்கியக் கருத்துக்கள் மற்றும் வரையறைகள்
கட்டுப்பாட்டுக் கட்டமைப்பு (Control Structure): நிரலின் ஓட்டத்தை அல்லது கட்டுப்பாட்டை நிரலின் ஒரு பகுதியிலிருந்து மற்றொரு பகுதிக்கு மாற்றும் நிரல் கூற்றுகள் கட்டுப்பாட்டு கட்டமைப்புகள் எனப்படும்.
உள்்தள்ளல் (Indentation): பைத்தான் மொழியில் தொகுதிகள் மற்றும் துணைத் தொகுதிகளைக் குறிப்பிட அடைப்புக்குறிகளுக்குப் ({}) பதிலாக வெற்று இடைவெளிகள் (spaces) மற்றும் தத்தல்கள் (tabs) பயன்படுத்தப்படுகின்றன. இதுவே உள்்தள்ளல் ஆகும்.
மடக்கு (Loop): ஒரு குறிப்பிட்ட நிரல் கூற்று அல்லது கூற்றுகளின் தொகுதியை ஒரு குறிப்பிட்ட எண்ணிக்கை வரை அல்லது நிபந்தனை மெய்யாகும் வரை மீண்டும் மீண்டும் இயக்கும் செயல்பாடு மடக்கு எனப்படும்.
தாவல் கூற்றுகள் (Jump Statements): எந்தவொரு நிபந்தனையுமின்றி நிரலின் கட்டுப்பாட்டை ஒரு பகுதியிலிருந்து மற்றொரு பகுதிக்கு மாற்றப் பயன்படும் கூற்றுகள் ஆகும்.
செயல்முறை எடுத்துக்காட்டுகள் மற்றும் வழிமுறைகள்
if-else அமைப்பின் மாற்று முறை (Conditional Operator / Ternary Operator)
பைத்தானில் எளிய if-else அமைப்பினை ஒரே வரியில் மாற்று வடிவில் எழுதலாம். இதன் மூலம் நிரலின் அளவு குறைகிறது. இதன் பொது வடிவம்: மாறி = மதிப்பு1 if நிபந்தனை else மதிப்பு2 ஆகும். எடுத்துக்காட்டாக, x = "even" if a % 2 == 0 else "odd" என்ற கூற்றில், 'a' என்ற எண் இரட்டைப்படையாக இருந்தால் 'x' இல் "even" என்பதும், இல்லையெனில் "odd" என்பதும் இருத்தப்படும்.
range() செயற்கூற்றின் செயல்பாடு
மடக்குகளுடன் இணைந்து எண்களின் வரிசைமுறையை உருவாக்க range() செயற்கூறு பயன்படுகிறது. இதன் பொது வடிவம்: range(start, stop, step) ஆகும். எடுத்துக்காட்டாக, range(2, 10, 2) என்பது 2 இலிருந்து தொடங்கி 10க்கு குறைவாக 2 என்ற இடைவெளியில் 2, 4, 6, 8 ஆகிய மதிப்புகளைத் தோற்றுவிக்கும். இறுதி எல்லை மதிப்பு (stop value) எப்போதும் சேர்க்கப்படாது.
பொதுவான தேர்வுத் தவறுகள்
உள்்தள்ளல் பிழைகள் (Indentation Errors): ஒரு குறிப்பிட்ட தொகுதிக்கு உட்பட்ட அனைத்து நிரல் வரிகளும் ஒரே அளவிலான உள்்தள்ளலைக் கொண்டிருக்க வேண்டும். தவறான வெற்று இடைவெளிகள் IndentationError பிழையை உண்டாக்கும்.
வரம்பின் இறுதி எல்லை (Range Stop Value): range(start, stop) செயற்கூற்றில் 'stop' மதிப்பு எப்போதும் சேர்க்கப்படாது. மாணவர்கள் 1 முதல் 10 வரை அச்சிட range(1, 10) என்று எழுதுவது பொதுவான தவறாகும்; இதனால் 9 வரை மட்டுமே இயங்கும். 10 வரை அச்சிட range(1, 11) என்று எழுத வேண்டும்.
முக்காற்புள்ளி (:) விடுபடுதல்: if, else, while, for போன்ற கட்டுப்பாட்டு கூற்றுகளின் இறுதியில் முக்காற்புள்ளி (:) வைப்பது கட்டாயமாகும். இதனை மாணவர்கள் பெரும்பாலும் விடுத்துவிடுகின்றனர், இது SyntaxError பிழைக்கு வழிவகுக்கும்.
தேர்வு உதவிக்குறிப்புகள்
- கட்டுப்பாட்டுக் கட்டமைப்புகளின் பொது வடிவங்களை (Syntax) எழுதிப் பயிற்சி செய்யவும், குறிப்பாக if-elif-else மற்றும் while-else அமைப்புகள்.
- தாவல் கூற்றுகளான break மற்றும் continue ஆகியவற்றின் செயல்பாடுகளை விளக்கும் எளிய நிரல்களைப் படித்துப் பழகவும்.
- மடக்குகளுடன் வரும் else பகுதி எப்போது இயங்கும், எப்போது இயங்காது என்பதைத் தெளிவாகப் புரிந்துகொள்ளவும் (மடக்கு வழக்கமாக முடிந்தால் மட்டுமே else இயங்கும், break மூலம் நிறுத்தப்பட்டால் இயங்காது).