பைத்தான் செயற்கூறுகள் (12ஆம் வகுப்பு கணினி அறிவியல், சமச்சீர் கல்வி) அத்தியாயத்திற்கான, பாடநூலில் இல்லாத 15 கூடுதல் வினாக்கள் — ஒவ்வொன்றிலும் சரியான விடை தனித்துக் காட்டப்பட்டு, தெளிவான படிப்படியான விளக்கத்துடன். தமிழிலும் ஆங்கிலத்திலும் இலவசமாகப் படிக்கலாம்.
Q1
பைத்தானில் ஒரு செயற்கூறு தொகுதியைத் தொடங்க எந்த சிறப்புச் சொல் பயன்படுத்தப்படுகிறது?
- A. function
- B. defசரி
- C. define
- D. func
விளக்கம். பைத்தானில் பயனர் வரையறுக்கும் செயற்கூறுகள் def என்ற சிறப்புச் சொல்லைத் தொடர்ந்து செயற்கூறின் பெயர் மற்றும் அடைப்புக்குறிகளுடன் வரையறுக்கப்படுகின்றன.
Q2
ஒரு செயற்கூறின் return கூற்றில் செயலுருபுகள் இல்லையெனில் அல்லது return கூற்றே இல்லையெனில், பைத்தான் தானமைவாக எந்த பொருளைத் திருப்பி அனுப்பும்?
- A. 0
- B. False
- C. Noneசரி
- D. Null
விளக்கம். ஒரு செயற்கூறில் return கூற்று இல்லாவிட்டாலோ அல்லது செயலுருபு இல்லாத return கூற்று இருந்தாலோ, அது None என்ற பொருளைத் திருப்பி அனுப்பும்.
Q3
செயற்கூறு வரையறையில் நட்சத்திரக் குறியை (*) பயன்படுத்தி வரையறுக்கப்படும் செயலுருபு வகை எது?
- A. தேவைப்படும் செயலுருபுகள் (Required arguments)
- B. சிறப்புச் சொல் செயலுருபுகள் (Keyword arguments)
- C. தானமைவு செயலுருபுகள் (Default arguments)
- D. மாறும் நீள செயலுருபுகள் (Variable-length arguments)சரி
விளக்கம். செயற்கூறின் தலைப்பில் செயலுருபு பெயருக்கு முன் நட்சத்திரக் குறியை (*) இட்டு மாறும் நீள செயலுருபுகளைப் பைத்தான் வரையறுக்கிறது; இதனால் எத்தனை செயலுருபுகளையும் அனுப்ப முடியும்.
Q4
ஒரு உள்ளமை மாறியை அது வரையறுக்கப்பட்ட செயற்கூறின் வரையெல்லைக்கு வெளியே அணுக முயன்றால் எந்தப் பிழை எழுப்பப்படும்?
- A. ValueError
- B. TypeError
- C. NameErrorசரி
- D. ScopeError
விளக்கம். உள்ளமை மாறி செயற்கூறு இயங்கும்போது மட்டுமே இருக்கும். செயற்கூறுக்கு வெளியிலிருந்து அதைக் குறிப்பிட முயன்றால் NameError பிழை ஏற்படும்.
Q5
ஒரு செயற்கூறு திருப்பி அனுப்பும் மதிப்பை மற்றொரு செயற்கூறுக்கு செயலுருபாக உள்ளமைந்த முறையில் அனுப்புவது எவ்வாறு அழைக்கப்படுகிறது?
- A. தற்சுழற்சி (Recursion)
- B. தொகுப்பு (Composition)சரி
- C. ஒருங்கிணைப்பு (Integration)
- D. சங்கிலித்தொடர் (Chaining)
விளக்கம். ஒரு செயற்கூறின் வெளியீடு மற்றொரு செயற்கூறின் உள்ளீட்டுச் செயலுருபாக அமையும்படி செயற்கூறு அழைப்புகளை ஒன்றினுள் ஒன்றாக அமைப்பது செயற்கூறில் தொகுப்பு (Composition) எனப்படும்.
Q6
RecursionError எழுப்பப்படுவதற்கு முன், ஒரு தற்சுழற்சிச் செயற்கூறு தன்னைத்தானே எத்தனை முறை அழைக்க பைத்தான் தானமைவாக அனுமதிக்கும்?
- A. 500
- B. 1000சரி
- C. 2000
- D. 3000
விளக்கம். நினைவக அடுக்கு வழிதலை (stack overflow) தடுக்க, பைத்தான் தற்சுழற்சியின் அதிகபட்ச ஆழத்தைத் தானமைவாக 1000 அழைப்புகளாக வரம்பிடுகிறது.
Q7
பைத்தானில் தற்சுழற்சி ஆழத்தின் தானமைவு வரம்பை மாற்றியமைக்க sys தொகுதியின் எந்த செயற்கூறு பயன்படுகிறது?
- A. sys.recursion_limit()
- B. sys.setrecursionlimit()சரி
- C. sys.limit_recursion()
- D. sys.maxrecursion()
விளக்கம். sys.setrecursionlimit() செயற்கூறு மூலம் தற்சுழற்சி ஆழத்தின் தானமைவு வரம்பை நிரலர் விரும்பும் அதிக மதிப்பிற்கு மாற்றியமைக்கலாம்.
Q8
பைத்தானில் print(ord('A')) என்பதன் வெளியீடு என்னவாக இருக்கும்?
- A. 97
- B. 65சரி
- C. 'A'
- D. 66
விளக்கம். உள்ளிணைந்த ord() செயற்கூறு ஒரு குறியுருவின் ASCII முழு எண் மதிப்பைத் திருப்பி அனுப்பும். 'A' இன் மதிப்பு 65 ஆகும்.
Q9
பின்வரும் உள்ளிணைந்த செயற்கூறுகளில் எது ord() செயற்கூறின் நேர் தலைகீழ் செயற்கூறு ஆகும்?
- A. bin()
- B. chr()சரி
- C. str()
- D. id()
விளக்கம். chr() செயற்கூறு ஒரு ASCII முழு எண் மதிப்பைப் பெற்று அதற்கு நிகரான குறியுருவைத் திருப்பி அனுப்பும். எனவே இது ord() செயற்கூறின் தலைகீழ் ஆகும்.
Q10
பைத்தானில் ஒருமுறை மட்டும் பயன்படும் பெயரில்லா செயற்கூறுகளை (Anonymous functions) உருவாக்க எந்த சிறப்புச் சொல் பயன்படுகிறது?
- A. anonymous
- B. def
- C. lambdaசரி
- D. inline
விளக்கம். பெயரில்லா செயற்கூறுகள் பெயர் இல்லாமல் lambda என்ற சிறப்புச் சொல்லைக் கொண்டு வரையறுக்கப்படுகின்றன. எனவே அவை lambda செயற்கூறுகள் என்றும் அழைக்கப்படுகின்றன.
Q11
ஒரு முழுதளவிய மாறியை (Global variable) global என முதலில் அறிவிக்காமல் செயற்கூறின் உள்ளே மாற்ற முயன்றால் எந்த விதிவிலக்கு (exception) ஏற்படும்?
- A. NameError
- B. UnboundLocalErrorசரி
- C. ValueError
- D. GlobalError
விளக்கம். global என்ற சிறப்புச் சொல்லைப் பயன்படுத்தாமல் உள்ளமை வரம்பினுள் (local scope) முழுதளவிய மாறியை மாற்ற முயன்றால் பைத்தானில் UnboundLocalError பிழை ஏற்படும்.
Q12
பைத்தானில் format(25, 'o') என்ற செயற்கூறு எதைத் திருப்பி அனுப்பும்?
- A. 31சரி
- B. 25
- C. 0o31
- D. 11001
விளக்கம். format() செயற்கூறுக்கு 'o' என்ற வடிவமைப்புக் குறியைக் கொடுத்தால், பதின்ம எண் 25 அதன் எண்ம (octal) வடிவமான 31 ஆக மாற்றப்படும்.
Q13
math தொகுதியை இறக்கிய (import) பின், math.floor(-26.7) என்ற கணிதச் செயற்கூறின் வெளியீடு என்ன?
- A. -26
- B. -27சரி
- C. -26.0
- D. 26
விளக்கம். math.floor() செயற்கூறு உள்ளீட்டை விடக் குறைவான அல்லது அதற்குச் சமமான மிகப்பெரிய முழு எண்ணைத் திருப்பி அனுப்பும். -26.7 க்கு அத்தகைய முழு எண் -27 ஆகும்.
Q14
math தொகுதியை இறக்கிய (import) பின், math.ceil(-26.7) என்பதன் வெளியீடு என்ன?
- A. -26சரி
- B. -27
- C. -26.0
- D. 27
விளக்கம். math.ceil() செயற்கூறு உள்ளீட்டை விடப் பெரிய அல்லது அதற்குச் சமமான மிகச்சிறிய முழு எண்ணைத் திருப்பி அனுப்பும். -26.7 க்கு அது -26 ஆகும்.
Q15
பைத்தானில் மதிப்புகளை அளபுருக்களின் பெயர்களுடன் பொருத்தி, வரையறுத்த வரிசையிலிருந்து மாறுபட்ட வரிசையில் அனுப்ப அனுமதிக்கும் செயலுருபு வகை எது?
- A. தேவைப்படும் செயலுருபுகள் (Required arguments)
- B. சிறப்புச் சொல் செயலுருபுகள் (Keyword arguments)சரி
- C. தானமைவு செயலுருபுகள் (Default arguments)
- D. மாறும் நீள செயலுருபுகள் (Variable-length arguments)
விளக்கம். சிறப்புச் சொல் செயலுருபுகள் இட வரிசையின் அடிப்படையில் அல்லாமல் அளபுருக்களின் பெயர்களின் அடிப்படையில் மதிப்புகளைப் பொருத்துகின்றன. எனவே அழைக்கும்போது செயலுருபுகளை எந்த வரிசையிலும் கொடுக்கலாம்.