வியாழன், 19 மார்ச், 2026

தமிழ்நாடு அரசுப் பொதுப்பணித் தேர்வு (TNPSC) | தமிழ்த் தகுதித் தேர்வு | 6 மாத பயிற்சித் திட்டம்

தமிழ்நாடு அரசுப் பொதுப்பணித் தேர்வு (TNPSC) | தமிழ்த் தகுதித் தேர்வு | 6 மாத பயிற்சித் திட்டம்

TNPSC தமிழ் தகுதித் தேர்வு

6 மாத முழுமையான பயிற்சித் திட்டம் | 100 கேள்விகள்

6 மாதங்கள்
240 மணிநேரம்
5000+ வினாக்கள்
7 அலகுகள்
அறிமுகம்

தமிழ்நாடு அரசுப் பணியாளர் தேர்வாணையம் (TNPSC) நடத்தும் பல்வேறு போட்டித் தேர்வுகளில் 'தமிழ் தகுதித் தேர்வு' என்பது மிக முக்கியமான ஒரு கட்டமாகும். இத்தேர்வில் தேர்ச்சி பெற்றால் மட்டுமே விண்ணப்பதாரர்களின் முதன்மைத் தாள்கள் மதிப்பீடு செய்யப்படும் என்பதால், இதற்கான முறையான தயாரிப்பு அவசியமாகிறது.

இதனை கருத்தில் கொண்டு, 6 மாத கால அளவில் நாள் வாரியாகவும், அலகு வாரியாகவும் வடிவமைக்கப்பட்டுள்ள இந்த விரிவான பயிற்சித் திட்டம், இலக்கணம், இலக்கியம், மற்றும் பொதுத்தமிழ் என அனைத்துப் பகுதிகளையும் உள்ளடக்கியது.

240 மணிநேரப் பயிற்சியுடன், 5000-க்கும் மேற்பட்ட வினாக்களைக் கையாளும் வகையில் உருவாக்கப்பட்டுள்ள இந்த அட்டவணை, தேர்வர்கள் அடிப்படை முதல் ஆழமான இலக்கியச் செய்திகள் வரை அனைத்தையும் முறையாகக் கற்று, தேர்வில் தன்னம்பிக்கையுடன் வெற்றி பெற ஒரு சிறந்த வழிகாட்டியாக அமையும்.

7 அலகுகள் 24 வாரங்கள் நாள்வாரி பயிற்சி

7

அலகுகள்

24

வாரங்கள்

240

மணிநேரம்

100

வினாக்கள்

மாதம் 1: அலகு I - எழுத்தியல் & சொல்லியல் (வாரம் 1-4) 40 மணி
வாரம் 1
10 மணி

எழுத்தியல் பகுதி 1

  • 1 எழுத்துகளின் வகைப்பாடு
  • 2 குறில், நெடில்
  • 3 மெய் எழுத்துகள்
  • 4 உயிர்மெய் 216
  • 5 ஆய்தம், மொத்தம் 247
வாரம் 2
10 மணி

எழுத்தியல் பகுதி 2

  • 1 ல-ள-ழ வேறுபாடு
  • 2 ன-ண வேறுபாடு
  • 3 ர-ற வேறுபாடு
  • 4 இனவெழுத்துகள்
  • 5 மயங்கொலி எழுத்துகள்
வாரம் 3
10 மணி

எழுத்தியல் பகுதி 3

  • 1 பிரித்து எழுதுதல்
  • 2 சேர்த்து எழுதுதல்
  • 3 பிரித்து/சேர்த்து
  • 4 சுட்டு எழுத்துகள்
  • 5 வினா எழுத்துகள்
வாரம் 4
10 மணி

சொல்லியல் பகுதி 1

  • 1 வேர்ச்சொல்
  • 2 வினைமுற்று
  • 3 வினையெச்சம்
  • 4 பெயரெச்சம்
  • 5 வடிவங்கள்
வாரம் 1 - முழு அட்டவணை
நாள்பாடம்நேரம்பயிற்சி
நாள் 1எழுத்துகளின் வகைப்பாடு2 மணிவகைப்படுத்தல்
நாள் 2குறில், நெடில்2 மணிஅட்டவணை
நாள் 3மெய் எழுத்துகள்2 மணிவகைப்பாடு
நாள் 4உயிர்மெய் 2162 மணிஎழுதிப் பழகல்
நாள் 5ஆய்தம் & மீள்பார்வை2 மணிவினாடி வினா
மாதம் 2: அலகு I & II - சொல்லியல் & சொல்லகராதி (வாரம் 5-8) 40 மணி
வாரம் 5
10 மணி

சொல்லியல் பகுதி 2

  • வினையாலணையும் பெயர்
  • தொழிற்பெயர்
  • 5 வடிவங்கள்
  • அயற்சொல்-தமிழ்ச்சொல்
  • 100 பயிற்சி
வாரம் 6
10 மணி

சொல்லியல் பகுதி 3

  • எதிர்ச்சொல்-வினை
  • எதிர்ச்சொல்-பெயர்
  • ஒற்றுப்பிழை விதிகள்
  • வல்லினம் மிகா இடங்கள்
  • வினைச்சொல் வேறுபாடு
வாரம் 7
10 மணி

சொல்லகராதி பகுதி 1

  • ஓரெழுத்து ஒருமொழி-42
  • ஒருபொருள் பன்மொழி
  • இருபொருள் சொற்கள்
  • பேச்சு vs எழுத்து
  • மீள்பார்வை
வாரம் 8
10 மணி

சொல்லகராதி பகுதி 2

  • ஊர்ப் பெயர்கள் மரூஉ
  • மரூஉச் சொற்கள்
  • பிழை திருத்தம்
  • பேச்சு → தூய தமிழ்
  • மீள்பார்வை
மாதம் 3: அலகு II & III - சொல்லகராதி & எழுதும் திறன் (வாரம் 9-12) 40 மணி
வாரம் 9
10 மணி

சொல்லகராதி பகுதி 3

  • கோடிட்ட சொல் தேர்வு
  • பொருள் தெரிவு
  • சொற்களை இணைத்தல்
  • அடைப்புச் சொல்
  • அகர வரிசை
வாரம் 10
10 மணி

அலகு II முழுத்தேர்வு

  • கோட்பாட்டு மீள்பார்வை
  • மாதிரித் தேர்வு 1
  • மாதிரித் தேர்வு 2
  • மாதிரித் தேர்வு 3
  • பிழை பகுப்பாய்வு
வாரம் 11
10 மணி

எழுதும் திறன் பகுதி 1

  • சொற்றொடர் அமைத்தல்
  • தொடர் வகைகள்
  • செய்வினை/செயப்பாட்டு
  • தன்வினை/பிறவினை
  • ஒருமை-பன்மை
வாரம் 12
10 மணி

எழுதும் திறன் பகுதி 2

  • திணை மரபு
  • பால் மரபு
  • கால மரபு
  • இளமைப்பெயர்
  • ஒலிமரபு
மாதம் 4: அலகு III, IV, V - எழுதும் திறன், கலைச்சொற்கள், வாசித்தல் (வாரம் 13-16) 40 மணி
வாரம் 13
10 மணி

எழுதும் திறன் பகுதி 3

  • வினைமரபு
  • தொகை மரபு
  • நிறுத்தக்குறிகள் 1
  • நிறுத்தக்குறிகள் 2
  • அலகு III தேர்வு
வாரம் 14
10 மணி

கலைச்சொற்கள் பகுதி 1

  • அறிவியல்
  • மருத்துவம்
  • சட்டம் & நிர்வாகம்
  • புவியியல் & சூழல்
  • மீள்பார்வை
வாரம் 15
10 மணி

கலைச்சொற்கள் 2 & மொழிபெயர்ப்பு

  • மேலாண்மை & வணிகம்
  • தொழில்நுட்பம் & IT
  • ஊடகம்
  • ஆங்கிலம் → தமிழ்
  • அலுவலகப் பயன்பாடு
வாரம் 16
10 மணி

வாசித்தல் பகுதி 1

  • பத்தியிலிருந்து விடை
  • செய்தித் தலைப்புகள்
  • தலையங்கம்
  • அரசு செய்திகள்
  • கட்டுரைகள்
மாதம் 5: அலகு V & VII - வாசித்தல் & திருக்குறள் (வாரம் 17-20) 40 மணி
வாரம் 17
10 மணி

வாசித்தல் பகுதி 2

  • உவமைத் தொடர்கள்
  • மரபுத் தொடர்கள்
  • பழமொழிகள்
  • ஆவணப் புரிதல்
  • அலகு V தேர்வு
வாரம் 18
10 மணி

திருக்குறள் பகுதி 1

  • ஒழுக்கமுடைமை, பொறை
  • ஊக்கம், விருந்தோம்பல்
  • அறன், ஈகை
  • பெரியாரைத் துணைக்கோடல்
  • அவையஞ்சாமை, கண்ணோட்டம்
வாரம் 19
10 மணி

திருக்குறள் பகுதி 2

  • அன்பு, கல்வி
  • நடுநிலை, கூடா ஒழுக்கம்
  • கல்லாமை, செங்கோன்மை
  • பண்பு, நட்பாராய்தல்
  • புறங்கூறாமை, அருள்
வாரம் 20
10 மணி

அறநூல்கள் & தமிழின் தொன்மை

  • நாலடியார்
  • நான்மணி, பழமொழி
  • முதுமொழி, திரிகடுகம்
  • இன்னா, சிறுபஞ்சமூலம்
  • அவ்வையார் பாடல்கள்
மாதம் 6: அலகு VII - தமிழ்த்தொண்டு & அறிஞர்கள் (வாரம் 21-24) 40 மணி
வாரம் 21
10 மணி

தமிழின் தொன்மை & திராவிட மொழிகள்

  • தொல்காப்பியம்
  • தமிழின் சிறப்புகள்
  • திராவிட மொழிகள்
  • மொழித் தொடர்பு
  • கல்வெட்டுகள்
வாரம் 22
10 மணி

தமிழ்ப்பணி அறிஞர்கள் 1

  • உ.வே.சாமிநாத ஐயர்
  • தெ.பொ.மீனாட்சி
  • தேவநேயப் பாவாணர்
  • அகரமுதலி
  • ஜி.யு.போப்
வாரம் 23
10 மணி

தமிழ்ச் சான்றோர்கள் 2

  • பாவேந்தர்
  • டி.கே.சிதம்பரனாதர்
  • கண்ணதாசன்
  • தாரா பாரதி
  • பட்டுக்கோட்டை
வாரம் 24
10 மணி

இறுதிக் கட்டம்

  • தமிழ் ஒளி
  • கி.வா.ஜகந்நாதர்
  • குறள்கள் தேர்வு
  • அறிஞர்கள் தேர்வு
  • இறுதி முழுத்தேர்வு
அலகு வாரியான மதிப்பெண்
அலகுஉள்ளடக்கம்மதிப்பெண்முக்கியத்துவம்
அலகு Iஇலக்கணம்25⭐⭐⭐⭐⭐
அலகு IIசொல்லகராதி15⭐⭐⭐⭐
அலகு IIIஎழுதும் திறன்15⭐⭐⭐⭐
அலகு IVகலைச்சொற்கள்10⭐⭐⭐
அலகு Vவாசித்தல்15⭐⭐⭐⭐
அலகு VIமொழிபெயர்ப்பு5⭐⭐
அலகு VIIஇலக்கியம்15⭐⭐⭐⭐
மொத்தம்100
பயிற்சி உத்திகள்

தினசரி பயிற்சி

2 மணி: 1 மணி கோட்பாடு + 1 மணி பயிற்சி

வாராந்திரம்

100 வினாக்கள் தேர்வு, பிழை பகுப்பாய்வு

மாதாந்திரம்

200+ வினாக்கள், பலவீனம் மேம்படுத்தல்

குறிப்புகள்

அலகு வாரியான சுருக்கக் குறிப்புகள்

பிழைப் பகுப்பாய்வு

தவறுகளுக்கான காரணம் ஆய்வு

மனப்பாடம்

குறள்கள், அறிஞர்கள், கலைச்சொற்கள்

🏆 வெற்றி உறுதி

"கற்க கசடறக் கற்பவை கற்றபின்

நிற்க அதற்குத் தக" - திருக்குறள்

240 மணிநேரம் 5000+ வினாக்கள் 6 மாதங்கள்

செவ்வாய், 17 மார்ச், 2026

வாரம் 8: தொல்காப்பியம் - நூன்மரபு (பைத்தான்வழி உரை-8)

📜 வாரம் 8: தொல்காப்பியம் - நூன்மரபு (பைத்தான்வழி உரை-8) | Tolkappiyam Nunmarabu Python Text-8

வாரம் 8: தொல்காப்பியம் - நூன்மரபு (பைத்தான்வழி உரை-8)

Tolkappiyam - Nunmarabu (Python Text-8)

சத்தியராஜ் தங்கச்சாமி

தமிழ் உதவிப்பேராசிரியர், முதன்மைப் பதிப்பாசிரியர், விக்கிமீடியர்

ஸ்ரீ கிருஷ்ணா ஆதித்யா கலை மற்றும் அறிவியல் கல்லூரி, கோயம்புத்தூர் – 641042.

பகுதி 1 - அறிமுகம்

முந்தைய வகுப்பில் 17 முதல் 21 வரையுள்ள நூற்பாக்களுக்கும் தீப்சீக் செய்யறிவுக் கருவியின் (AI Tool) மூலம் நிரல் எழுதி இயக்கும் முறை விளக்கப்பட்டது. அதன் தொடர்ச்சியாக 22 முதல் 33 வரையுள்ள நூற்பாக்களுக்கு அதே கருவியைப் பயன்படுத்தி ஒரு விளையாட்டுச் செயலியை உருவாக்கும் முறையையும், அது இயங்கும் முறையையும் இங்குக் காணலாம். முந்தைய வகுப்பில் குறிப்பிட்டது போல், இப்பகுதி நூற்பாக்கள் மெய்ம்மயக்கம் (மெய்யெழுத்துகள் சேர்வது) பற்றிய விதிகளை விரிவாக எடுத்துரைக்கின்றன. இவ்விதிகளை அடிப்படையாகக் கொண்டு மெய்ம்மயக்க விளையாட்டுச் செயலியும் உருவாக்கப்பட்டுள்ளது.

நூற்பா விளக்கம் (22-33)

முப்பத்து மூன்று நூற்பாக்கள் கொண்ட நூன்மரபு இயலின் இறுதிப் பகுதியாக 22 முதல் 33 வரையுள்ள நூற்பாக்கள் அமைந்துள்ளன. இவை மெய்ம்மயக்கம், சுட்டு, வினா ஆகியவற்றின் இலக்கணங்களை விளக்குகின்றன.

22 "அம் மூ ஆறும் வழங்கு இயல் மருங்கின் / மெய்ம்மயக்கு உடனிலை தெரியும் காலை" - மேற்கூறிய மூன்று மெய்வகைகளும் (வல்லெழுத்து, மெல்லெழுத்து, இடையெழுத்து) தம்முள் மயங்கி வரும் முறைமையை இனி விளக்கப்படும் என்பதைக் குறிக்கிறது.
23 "ட ற ல ள என்னும் புள்ளி முன்னர் / க ச ப என்னும் மூ எழுத்து உரிய" - ட, ற, ல, ள என்னும் மெய்களுக்கு முன்னர் க, ச, ப ஆகிய மூன்று எழுத்துகளே மயங்கி வரும்.
24 "அவற்றுள், ல ளஃகான் முன்னர் ய வவும் தோன்றும்" - அவற்றுள், ல, ள என்பவற்றின் முன்னர் ய, வ ஆகிய எழுத்துகளும் மயங்கி வரும்.
25 "ங ஞ ண ந ம ன எனும் புள்ளி முன்னர் / தம்தம் இசைகள் ஒத்தன நிலையே" - மெல்லெழுத்துகள் (ங, ஞ, ண, ந, ம, ன) தமக்கு ஒத்த இசையுள்ள மெய்களுடன் மயங்கி நிற்கும்.
26 "அவற்றுள், ண னஃகான் முன்னர் / க ச ஞ ப ம ய வ ஏழும் உரிய" - அவற்றுள், ண, ன என்பவற்றின் முன்னர் க, ச, ஞ, ப, ம, ய, வ என்னும் ஏழு எழுத்துகளும் மயங்கி வரும்.
27 "ஞ ந ம வ என்னும் புள்ளி முன்னர் / யஃகான் நிற்றல் மெய் பெற்றன்றே" - ஞ, ந, ம, வ என்பவற்றின் முன்னர் யகரம் மட்டுமே நிற்கும்.
28 "மஃகான் புள்ளி முன் வவ்வும் தோன்றும்" - மகரத்தின் முன்னர் வகரமும் தோன்றும்.
29 "ய ர ழ என்னும் புள்ளி முன்னர் / முதல் ஆகு எழுத்து ஙகரமொடு தோன்றும்" - ய, ர, ழ என்பவற்றின் முன்னர் முதல் எழுத்தாக (அதாவது அந்த இடத்தில் வரும் எழுத்தாக) ஙகரம் தோன்றும்.
30 "மெய்ந் நிலை சுட்டின் எல்லா எழுத்தும் / தம் முன் தாம் வரூஉம் ர ழ அலங்கடையே" - மெய்களின் இயல்பை ஆராயின், ர, ழ தவிர மற்ற எல்லா எழுத்துகளும் தமக்கு முன்னர் தாமே வரும் (அதாவது ர, ழ ஆகிய இரண்டு எழுத்துகளைத் தவிர மற்ற மெய்கள் தம்முன் தம்மைப் பெற்று இருமடங்காக வரும்).
31 "அ இ உ அம் மூன்றும் சுட்டு" - அ, இ, உ ஆகிய மூன்றும் சுட்டெழுத்துகள் (demonstrative particles).
32 "ஆ ஏ ஓ அம் மூன்றும் வினா" - ஆ, ஏ, ஓ ஆகிய மூன்றும் வினாவெழுத்துகள் (interrogative particles).
33 "அளபு இறந்து உயிர்த்தலும் ஒற்று இசை நீடலும் / உள என மொழிப இசையொடு சிவணிய / நரம்பின் மறைய என்மனார் புலவர்" - அளவு கடந்து ஓசை நீட்டித்தலும் (ஆகாரத்தை ஏழு மாத்திரை நீட்டுதல் போன்றவை), ஒற்றெழுத்து இசையில் நீடித்து ஒலித்தலும் (ஒற்றெழுத்தை இரட்டித்து ஒலித்தல் போன்றவை) உண்டு என்று கூறுவர்; இவை இசையோடு பொருந்திய யாழ் நரம்பின் மறைவான ஒலி போன்றவை என்று புலவர்கள் கூறுவர்.
பைத்தான் குறியாக்க விளக்கம்

முந்தைய வகுப்பில் நாம் random, random.choice, f, else, main(), input, .strip(), while, __name__ == "__main__" ஆகிய குறியாக்கங்களின் விளக்கங்களைக் கண்டோம். இம்முறை, மெய்ம்மயக்க விதிகளைக் கணினியில் செயற்படுத்தும் போது கூடுதலாகச் சில பைத்தான் கூறுகளைப் பயன்படுத்த வேண்டியுள்ளது.

புதிய பைத்தான் குறியீடுகள் விளக்கம்

1. சொற்களஞ்சியம் (Dictionary - {})

பைத்தானில் சொற்களஞ்சியம் (Dictionary) என்பது ஒரு தகவலை அதன் அடையாளத்தோடு (Key) சேமிக்க உதவும். ஒரு அகராதியில் ஒரு சொல்லைத் தேடினால் அதன் பொருள் கிடைப்பது போல, இங்கே 'திறவுகோலை' கொடுத்தால் அதன் 'மதிப்பு' (Value) கிடைக்கும்.

மெய்ம்மயக்கப் பயன்பாடு: மெய்ம்மயக்கத்தில் ஒரு மெய்யெழுத்தைத் தொடர்ந்து வரும் எழுத்துகளைக் கண்டறிய இது மிகச்சிறந்த வழி.

# மெய்ம்மயக்க விதிகள் - அகராதி வடிவில் meymayakku_rules = { 'க்': ['க', 'கா', 'கி', 'கீ'], # உடல்நிலை மெய்ம்மயக்கம் 'ட்': ['க', 'ச', 'ப'], # வேற்றுநிலை மெய்ம்மயக்கம் 'ற்': ['க', 'ச', 'ப'] } # பயன்பாடு: print(meymayakku_rules['ட்']) # வெளியீடு: ['க', 'ச', 'ப']

கடைப்பிடிக்க வேண்டிய முக்கியப் பண்புகள்:

• இது சதுர அடைப்புக்குறிக்குள் வராது, நெளிவு அடைப்புக்குறிக்குள் {} வரும்.
• திறவுகோல்கள் (Keys) தனித்துவமானவை; அவை மீண்டும் வரக்கூடாது.

2. பட்டியல் (List - [])

பட்டியல் (List) என்பது ஒன்றுக்கும் மேற்பட்ட தகவல்களை ஒரே பெயரில் சேமிக்கப் பயன்படும். மெய்ம்மயக்க விதிகளில் வரும் எழுத்துத் தொகுப்புகளைச் சேமிக்க இது பயன்படும் என்பது குறிப்பிடத்தக்கது.

மெய்ம்மயக்கப் பயன்பாடு: நூற்பா 26-இல் குறிப்பிடப்படும் வேற்றுநிலை மெய்ம்மயக்க எழுத்துகளை (ய, ர, ல, வ, ழ, ள, ற) ஒரு பட்டியலில் சேமிக்கலாம்.

# வேற்றுநிலை மெய்ம்மயக்கத்திற்கு உரிய 7 எழுத்துகள் special_consonants = ['ய', 'ர', 'ல', 'வ', 'ழ', 'ள', 'ற'] # பட்டியலில் ஒரு எழுத்து உள்ளதா எனச் சரிபார்க்க: char = 'ழ' if char in special_consonants: print(f"{char} வேற்றுநிலை மெய்ம்மயக்கத்திற்கு உரியது.")

பட்டியலின் வசதிகள்:
• .append() மூலம் புதிய எழுத்துகளைச் சேர்க்கலாம்.
• len() மூலம் பட்டியலில் எத்தனை எழுத்துகள் உள்ளன என அறியலாம்.

3. பிழை கையாளுதல் (Try-Except)

நிரலை இயக்கும்போது எதிர்பாராத பிழைகள் (சான்றாக: பயனர் தவறான உள்ளீடு தருவது அல்லது அகராதியில் இல்லாத ஒரு மெய்யெழுத்தைத் தேடுவது) ஏற்பட்டால், நிரல் அப்படியே "Crash" ஆகிவிடும். அதைத் தவிர்க்க பிழை கையாளுதல் (Try-Except) நுட்பம் பயன்படுகிறது.

மெய்ம்மயக்கப் பயன்பாடு: பயனர் உள்ளீடு செய்யும் எழுத்து நமது அகராதியில் (Dictionary) இல்லை என்றால், நிரல் நின்றுவிடாமல் "இந்த எழுத்திற்கு விதிமுறை இல்லை" எனத் தெரிவிக்கலாம்.

search_char = input("மெய்யெழுத்தை உள்ளிடுக: ") try: # அகராதியில் தேடுகிறது result = meymayakku_rules[search_char] print(f"{search_char}-ஐத் தொடர்ந்து வரும் எழுத்துகள்: {result}") except KeyError: # எழுத்து அகராதியில் இல்லையென்றால் இந்தப் பகுதி இயங்கும் print("மன்னிக்கவும்! இந்த எழுத்திற்கான விதிமுறை நிரலில் இல்லை.") except Exception as e: # வேறு ஏதேனும் பொதுவான பிழை வந்தால் print(f"பிழை ஏற்பட்டுள்ளது: {e}")
மெய்ம்மயக்கச் செயல்பாட்டு விளக்கம் (மாதிரி நிரல்)

இவை அனைத்தையும் இணைத்து ஒரு சிறிய மெய்ம்மயக்கச் சரிபார்ப்பு நிரல் இதோ:

def check_meymayakkam(): rules = { 'ட்': ['க', 'ச', 'ப'], 'ற்': ['க', 'ச', 'ப'] } try: user_input = input("மெய்யெழுத்தை உள்ளிடுக (எ.கா: ட்): ").strip() if user_input in rules: print(f"விதி: {user_input} மெய்யெழுத்தின் பின் {rules[user_input]} வரும்.") else: print("இந்த மெய்யெழுத்து பட்டியலில் இல்லை.") except Exception as e: print("ஏதோ தவறு நடந்துள்ளது!") if __name__ == "__main__": check_meymayakkam()
பகுதி 2 - தீப்சீக் (DeepSeek) செய்யறிவுக் கருவி - மெய்ம்மயக்க விளையாட்டுச் செயலி
அன்பா! மெய்ம்மயக்க விளையாட்டுச் செயலி எழுதச் சொல்லி, தீப்சீக் கருவிக்குப் பின்வருமாறு கட்டளை எழுதுவோமா? ஆம் ஐயா...

தொல்காப்பிய மெய்ம்மயக்க விளையாட்டுச் செயலி

"""
தொல்காப்பிய மெய்ம்மயக்க விதிகள் - விளையாட்டுச் செயலி
நூற்பாக்கள் 22-33
"""
import random

# நூற்பா 19-21: மெய்யெழுத்து வகைகள்
valli = ['க', 'ச', 'ட', 'த', 'ப', 'ற']      # வல்லெழுத்துகள்
melli = ['ங', 'ஞ', 'ண', 'ந', 'ம', 'ன']      # மெல்லெழுத்துகள்
idai = ['ய', 'ர', 'ல', 'வ', 'ழ', 'ள']       # இடையெழுத்துகள்

# நூற்பா 31-32: சுட்டு, வினா எழுத்துகள்
chuttu = ['அ', 'இ', 'உ']          # சுட்டெழுத்துகள்
vinaa = ['ஆ', 'ஏ', 'ஓ']           # வினாவெழுத்துகள்


# நூற்பா 23-29: மெய்ம்மயக்க விதிகள்
# dictionary - திறவுகோல்: முன்னர் வரும் எழுத்து, மதிப்பு: அதனுடன் மயங்கும் எழுத்துகளின் பட்டியல்
meymayakku_rules = {
    # நூற்பா 23: ட ற ல ள முன்னர் க ச ப உரிய
    'ட': ['க', 'ச', 'ப'],
    'ற': ['க', 'ச', 'ப'],
    'ல': ['க', 'ச', 'ப'],  # அடிப்படை விதி
    'ள': ['க', 'ச', 'ப'],  # அடிப்படை விதி
    
    # நூற்பா 25: மெல்லெழுத்துகள் தமக்கு ஒத்த இசையுடன் மயங்கும்
    'ங': ['ங', 'க்'],       # ங-ங, ங-க் மயக்கம்
    'ஞ': ['ஞ', 'ச்'],       # ஞ-ஞ, ஞ-ச் மயக்கம்
    'ண': ['ண', 'ட்'],       # ண-ண, ண-ட் மயக்கம்
    'ந': ['ந', 'த்'],       # ந-ந, ந-த் மயக்கம்
    'ம': ['ம', 'ப்'],       # ம-ம, ம-ப் மயக்கம்
    'ன': ['ன', 'ற்'],       # ன-ன, ன-ற் மயக்கம்
}


# நூற்பா 24: ல ள முன்னர் ய வவும் தோன்றும்
meymayakku_rules['ல'].extend(['ய', 'வ'])
meymayakku_rules['ள'].extend(['ய', 'வ'])


# நூற்பா 26: ண ன முன்னர் க ச ஞ ப ம ய வ ஏழும் உரிய
meymayakku_rules['ண'] = ['க', 'ச', 'ஞ', 'ப', 'ம', 'ய', 'வ']
meymayakku_rules['ன'] = ['க', 'ச', 'ஞ', 'ப', 'ம', 'ய', 'வ']


# நூற்பா 27: ஞ ந ம வ முன்னர் ய மட்டும்
meymayakku_rules['ஞ'] = ['ய']
meymayakku_rules['ந'] = ['ய']
meymayakku_rules['ம'] = ['ய']
meymayakku_rules['வ'] = ['ய']


# நூற்பா 28: ம முன் வவும் தோன்றும்
meymayakku_rules['ம'].append('வ')


# நூற்பா 29: ய ர ழ முன்னர் ஙகரம்
meymayakku_rules['ய'] = ['ங']
meymayakku_rules['ர'] = ['ங']
meymayakku_rules['ழ'] = ['ங']


# நூற்பா 30: இரட்டித்தல் விதி (ர, ழ தவிர)
all_letters = valli + melli + idai
double_exceptions = ['ர', 'ழ']  # இரட்டிக்காத எழுத்துகள்
double_letters = [l for l in all_letters if l not in double_exceptions]


def main():
    """main() - முதன்மைச் செயல்பாடு"""
    print("=" * 70)
    print("               தொல்காப்பிய மெய்ம்மயக்க விளையாட்டு (நூற்பா 22-33)")
    print("=" * 70)
    
    while True:
        print("\n" + "=" * 60)
        print("முதன்மைப் பட்டியல்:")
        print("1. தொல்காப்பிய நூற்பாக்களைக் காண (22-33)")
        print("2. மெய்ம்மயக்க விதிகளைப் பயில")
        print("3. விளையாட்டு - மெய்ம்மயக்கத்தை அடையாளம் காண")
        print("4. சுட்டு/வினா எழுத்துகளை அறிய")
        print("5. இரட்டித்தல் விதியை அறிய")
        print("6. வெளியேறு")
        print("=" * 60)
        
        choice = input("உங்கள் தேர்வு (1-6): ").strip()
        
        if choice == '1':
            show_noorpaakkal()
        elif choice == '2':
            practice_rules()
        elif choice == '3':
            play_game()
        elif choice == '4':
            show_chuttu_vinaa()
        elif choice == '5':
            show_double_rule()
        elif choice == '6':
            print("\nநன்றி! மீண்டும் வருக!")
            break
        else:
            print("தவறான தேர்வு. மீண்டும் முயற்சி செய்க.")


def show_noorpaakkal():
    """நூற்பா 22-33-ஐக் காட்டும் செயல்பாடு"""
    print("\n" + "=" * 70)
    print("                   தொல்காப்பிய நூற்பாக்கள் (22-33)")
    print("=" * 70)
    
    noorpaakkal = [
        f"22. அம் மூ ஆறும் வழங்கு இயல் மருங்கின்\n    மெய்ம்மயக்கு உடனிலை தெரியும் காலை.",
        f"23. ட ற ல ள என்னும் புள்ளி முன்னர்\n    க ச ப என்னும் மூ எழுத்து உரிய.",
        f"24. அவற்றுள், ல ளஃகான் முன்னர் ய வவும் தோன்றும்.",
        f"25. ங ஞ ண ந ம ன எனும் புள்ளி முன்னர்\n    தம்தம் இசைகள் ஒத்தன நிலையே.",
        f"26. அவற்றுள், ண னஃகான் முன்னர்\n    க ச ஞ ப ம ய வ ஏழும் உரிய.",
        f"27. ஞ ந ம வ என்னும் புள்ளி முன்னர்\n    யஃகான் நிற்றல் மெய் பெற்றன்றே.",
        f"28. மஃகான் புள்ளி முன் வவ்வும் தோன்றும்.",
        f"29. ய ர ழ என்னும் புள்ளி முன்னர்\n    முதல் ஆகு எழுத்து ஙகரமொடு தோன்றும்.",
        f"30. மெய்ந் நிலை சுட்டின் எல்லா எழுத்தும்\n    தம் முன் தாம் வரூஉம் ர ழ அலங்கடையே.",
        f"31. அ இ உ அம் மூன்றும் சுட்டு.",
        f"32. ஆ ஏ ஓ அம் மூன்றும் வினா.",
        f"33. அளபு இறந்து உயிர்த்தலும் ஒற்று இசை நீடலும்\n    உள என மொழிப இசையொடு சிவணிய\n    நரம்பின் மறைய என்மனார் புலவர்."
    ]
    
    for i, nool in enumerate(noorpaakkal, 22):
        print(f"\n{nool}")
    
    input("\n[தொடர Enter அழுத்துக] ")


def practice_rules():
    """மெய்ம்மயக்க விதிகளைப் பயிற்சி செய்ய"""
    print("\n" + "=" * 70)
    print("                   மெய்ம்மயக்க விதிகள் - பயிற்சி")
    print("=" * 70)
    
    rules_summary = {
        'ட/ற': "ட, ற முன்னர் க, ச, ப மட்டுமே",
        'ல/ள': "ல, ள முன்னர் க, ச, ப, ய, வ",
        'ண/ன': "ண, ன முன்னர் க, ச, ஞ, ப, ம, ய, வ",
        'ஞ/ந/வ': "ஞ, ந, வ முன்னர் ய மட்டுமே",
        'ம': "ம முன்னர் ய, வ",
        'ய/ர/ழ': "ய, ர, ழ முன்னர் ங மட்டுமே"
    }
    
    for key, value in rules_summary.items():
        print(f"\n• {key}: {value}")
    
    # random.choice - சீரற்ற விதியைக் காட்டுதல்
    print("\n" + "-" * 50)
    print("சீரற்ற மெய்ம்மயக்க உதாரணம்:")
    mey = random.choice(list(meymayakku_rules.keys()))
    allowed = ', '.join(meymayakku_rules[mey])
    print(f"  '{mey}' முன்னர் வரக்கூடிய எழுத்துகள்: {allowed}")
    
    input("\n[தொடர Enter அழுத்துக] ")


def play_game():
    """மெய்ம்மயக்க விளையாட்டு"""
    print("\n" + "=" * 70)
    print("                   மெய்ம்மயக்க அடையாளம் காணும் விளையாட்டு")
    print("=" * 70)
    
    score = 0
    total_questions = 5
    
    question_num = 0
    while question_num < total_questions:
        question_num += 1
        
        # சீரற்ற முன்னெழுத்தைத் தேர்வு செய்தல்
        first_letter = random.choice(list(meymayakku_rules.keys()))
        allowed_letters = meymayakku_rules[first_letter]
        
        # 50% வாய்ப்பு சரியான கூட்டுக்கும், 50% வாய்ப்பு தவறான கூட்டுக்கும்
        if random.choice([True, False]):
            # சரியான கூட்டு
            second_letter = random.choice(allowed_letters)
            is_correct = True
        else:
            # தவறான கூட்டு - அனுமதிக்கப்பட்ட எழுத்துகள் இல்லாத ஒன்றைத் தேர்வு செய்தல்
            all_possible = valli + melli + idai
            # அனுமதிக்கப்பட்டவை தவிர மற்றவற்றிலிருந்து தேர்வு
            not_allowed = [l for l in all_possible if l not in allowed_letters]
            if not_allowed:  # ஏதேனும் அனுமதிக்கப்படாத எழுத்துகள் இருந்தால்
                second_letter = random.choice(not_allowed)
                is_correct = False
            else:
                # அனுமதிக்கப்படாத எழுத்துகள் இல்லை என்றால் (அரிதாக), சரியானதையே தேர்வு செய்
                second_letter = random.choice(allowed_letters)
                is_correct = True
        
        print(f"\nகேள்வி {question_num}/{total_questions}:")
        print(f"  '{first_letter}{second_letter}' - இது மெய்ம்மயக்க விதிப்படி சரியானதா?")
        print("  1. சரி")
        print("  2. தவறு")
        
        answer = input("  உங்கள் விடை (1/2): ").strip()
        
        if (answer == '1' and is_correct) or (answer == '2' and not is_correct):
            print(f"  ✓ சரி! {'சரியான மெய்ம்மயக்கம்' if is_correct else 'தவறான மெய்ம்மயக்கம்'}")
            score += 1
        else:
            correct_answer = "சரி" if is_correct else "தவறு"
            print(f"  ✗ தவறு. இது {correct_answer}.")
            if is_correct:
                print(f"     ஏனெனில் '{first_letter}' முன்னர் {', '.join(allowed_letters)} மட்டுமே வரும்.")
            else:
                print(f"     '{first_letter}' முன்னர் {', '.join(allowed_letters)} மட்டுமே வரும்.")
    
    # f-strings - இறுதி மதிப்பெண்ணைக் காட்டுதல்
    print(f"\n" + "=" * 50)
    print(f"  விளையாட்டு முடிந்தது!")
    print(f"  உங்கள் மதிப்பெண்: {score}/{total_questions}")
    
    percentage = (score / total_questions) * 100
    print(f"  விழுக்காடு: {percentage:.1f}%")
    
    if percentage >= 80:
        print("  பாராட்டுகள்! மெய்ம்மயக்க விதிகளை நன்கு அறிந்துள்ளீர்கள்!")
    elif percentage >= 50:
        print("  நல்லது! மேலும் பயிற்சி எடுங்கள்!")
    else:
        print("  மீண்டும் முயற்சி செய்யுங்கள்!")
    
    input("\n[தொடர Enter அழுத்துக] ")


def show_chuttu_vinaa():
    """சுட்டு மற்றும் வினா எழுத்துகளைக் காட்டும்"""
    print("\n" + "=" * 70)
    print("                   சுட்டு மற்றும் வினா எழுத்துகள்")
    print("=" * 70)
    
    print(f"\nநூற்பா 31: சுட்டெழுத்துகள் - {', '.join(chuttu)}")
    print("  'அ' - அப்பொருள், அவன், அது")
    print("  'இ' - இப்பொருள், இவன், இது")
    print("  'உ' - உப்பொருள், உவன், உது (உயர்திணை/அஃறிணை)")
    
    print(f"\nநூற்பா 32: வினாவெழுத்துகள் - {', '.join(vinaa)}")
    print("  'ஆ' - ஆங்கு? (எங்கே?), ஆர்? (யார்?)")
    print("  'ஏ' - ஏன்? (எதற்கு?)")
    print("  'ஓ' - ஓங்கு? (எங்கே?), ஓர்? (யார்?)")
    
    print("\nநூற்பா 33: அளபெடை மற்றும் ஒற்று நீடல்")
    print("  'ஆஆஆ' என்று ஏழு மாத்திரை நீட்டித்தல்")
    print("  ஒற்றெழுத்துகளை இரட்டித்தல் (இயற்கை, புல்லென)")
    
    input("\n[தொடர Enter அழுத்துக] ")


def show_double_rule():
    """இரட்டித்தல் விதியைக் காட்டும் - நூற்பா 30"""
    print("\n" + "=" * 70)
    print("                   இரட்டித்தல் விதி (நூற்பா 30)")
    print("=" * 70)
    
    print("\n'ர', 'ழ' தவிர மற்ற எல்லா எழுத்துகளும் தமக்கு முன் தாமே வரும்:")
    print(f"\nஇரட்டிக்கும் எழுத்துகள்: {', '.join(double_letters[:10])} ...")
    
    print("\nஎடுத்துக்காட்டுகள்:")
    examples = [
        ("க்", "அக்கு", "அ(க்)கு"),
        ("ச்", "அச்சு", "அ(ச்)சு"),
        ("ட்", "அட்டம்", "அ(ட்)டம்"),
        ("த்", "அத்தை", "அ(த்)தை"),
        ("ப்", "அப்பம்", "அ(ப்)பம்")
    ]
    
    for letter, word, split in examples:
        print(f"  {letter}: {word} - {split}")
    
    print("\nவிதிவிலக்குகள் (இரட்டிக்கா எழுத்துகள்):")
    print(f"  ர, ழ - எ.கா: அரா, அழகு")
    
    input("\n[தொடர Enter அழுத்துக] ")


if __name__ == "__main__":
    main()
                    
பகுதி 3 - நிரல் செயல்படும் முறை

மேலே உள்ள நிரலை tholkaappiyam_nunmarapu_part8.py எனச் சேமித்து, பின்வருமாறு இயக்கலாம்:

python3 tholkaappiyam_nunmarapu_part8.py

வெளியீட்டுத் திரை:

====================================================================== தொல்காப்பிய மெய்ம்மயக்க விளையாட்டு (நூற்பா 22-33) ====================================================================== ============================================================ முதன்மைப் பட்டியல்: 1. தொல்காப்பிய நூற்பாக்களைக் காண (22-33) 2. மெய்ம்மயக்க விதிகளைப் பயில 3. விளையாட்டு - மெய்ம்மயக்கத்தை அடையாளம் காண 4. சுட்டு/வினா எழுத்துகளை அறிய 5. இரட்டித்தல் விதியை அறிய 6. வெளியேறு ============================================================ உங்கள் தேர்வு (1-6): 3 ====================================================================== மெய்ம்மயக்க அடையாளம் காணும் விளையாட்டு ====================================================================== கேள்வி 1/5: 'ணச' - இது மெய்ம்மயக்க விதிப்படி சரியானதா? 1. சரி 2. தவறு உங்கள் விடை (1/2): 2 ✓ சரி! தவறான மெய்ம்மயக்கம் கேள்வி 2/5: 'ளவ' - இது மெய்ம்மயக்க விதிப்படி சரியானதா? 1. சரி 2. தவறு உங்கள் விடை (1/2): 1 ✓ சரி! சரியான மெய்ம்மயக்கம் கேள்வி 3/5: 'னக' - இது மெய்ம்மயக்க விதிப்படி சரியானதா? 1. சரி 2. தவறு உங்கள் விடை (1/2): 1 ✓ சரி! சரியான மெய்ம்மயக்கம் கேள்வி 4/5: 'மய' - இது மெய்ம்மயக்க விதிப்படி சரியானதா? 1. சரி 2. தவறு உங்கள் விடை (1/2): 1 ✓ சரி! சரியான மெய்ம்மயக்கம் கேள்வி 5/5: 'ழங' - இது மெய்ம்மயக்க விதிப்படி சரியானதா? 1. சரி 2. தவறு உங்கள் விடை (1/2): 1 ✓ சரி! சரியான மெய்ம்மயக்கம் ================================================== விளையாட்டு முடிந்தது! உங்கள் மதிப்பெண்: 5/5 விழுக்காடு: 100.0% பாராட்டுகள்! மெய்ம்மயக்க விதிகளை நன்கு அறிந்துள்ளீர்கள்!
இந்த விளையாட்டு நன்றாக இயங்குகின்றது ஐயா... அதுதரும் விளைவினை உற்றுப்பார் அன்பா!
அது இருக்கட்டும் உன் கற்பனைக்கு ஏற்ப இந்தச் செய்யறிவுக் கருவியிடம் வினவலாகக் கேட்டுப் புதிய புதிய விளையாட்டுகளை உருவாக்கலாம். சரி ஐயா. சரி. இதற்குரிய நிரலை என்னுடைய கித்துப்பில் [6] தருகின்றேன், இதனை நீயும் இயக்கிப் பார் அன்பா. சரி ஐயா.
முந்தைய 8 பாடவேளைகளில் அறிந்துகொண்ட புதிய பைத்தான் குறியாக்கங்கள்
சொற்களஞ்சியம் (Dictionary - {})

திறவுகோல் (Key) மற்றும் மதிப்பு (Value) சேமிக்கும் அமைப்பு

பட்டியல் (List - [])

தகவல்களை வரிசையாகச் சேமிக்கும் அமைப்பு

பிழை கையாளுதல் (Try-Except)

நிரலில் ஏற்படும் பிழைகளைச் சமாளிக்க

உள்ளிருப்புச் சரிபார்ப்பு (In operator - x in y)

ஒரு மதிப்பு பட்டியலில்/அகராதியில் உள்ளதா சரிபார்க்க

பட்டியல் விரிவாக்கம் (List methods - .append(), .extend())

பட்டியலில் புதிய உருப்படிகளைச் சேர்க்க

இந்தக் குறியாக்கங்கள் அனைத்தும் இணைந்துதான் ஒரு முழுமையான மெய்ம்மயக்க விளையாட்டுச் செயலியை உருவாக்க நமக்கு உதவின. ஆம் ஐயா!

சரி அன்ப! இனி இந்த நிரலினை ஓர் இணையச் செயலியாக உருவாக்கி மாணாக்கப் பயன்பாட்டிற்கு வழங்கும் நுட்பத்தினை அடுத்துவரும் பாடங்களில் அறிவோம். இன்றுடன் எட்டு வாரப் பாடங்கள் நிறைவுபெறுகின்றன. சரி ஐயா. மிக்க நன்றி!
துணைநின்றவை
📺 காணொலி விரிவுரையைப் பாருங்கள்
எட்டாம் வார முழு விளக்கவுரை (காணொலி நேரம்: 52:15)

வாரம் 7: தொல்காப்பியம் - நூன்மரபு (பைத்தான்வழி உரை-7)

📜 வாரம் 7: தொல்காப்பியம் - நூன்மரபு (பைத்தான்வழி உரை-7) | Tolkappiyam Nunmarabu Python Text-7

வாரம் 7: தொல்காப்பியம் - நூன்மரபு (பைத்தான்வழி உரை-7)

Tolkappiyam - Nunmarabu (Python Text-7)

முனைவர் சத்தியராஜ் தங்கச்சாமி

தமிழ் உதவிப்பேராசிரியர், முதன்மைப் பதிப்பாசிரியர், விக்கிமீடியர்

ஸ்ரீ கிருஷ்ணா ஆதித்யா கலை மற்றும் அறிவியல் கல்லூரி, கோயம்புத்தூர் – 641042.

அறிமுகம்

முந்தைய வகுப்பில் தொல்காப்பிய நூன்மரபின் 10 முதல் 16 வரைக்கும் உள்ள நூற்பாக்களுக்கு தீப்சீக் செய்யறிவுக் கருவியின் (AI Tool) மூலம் நிரல் எழுதி இயக்கும் முறை விளக்கப்பட்டது. அதன் அடுத்த படிநிலையாக 17 முதல் 21 வரைக்கும் உள்ள நூற்பாக்களுக்கு அதே கருவியைப் பயன்படுத்தி ஒரு விளையாட்டுச் செயலியை உருவாக்கும் முறையையும் அது இயங்கும் முறையையும் முந்தைய வகுப்பில் குறிப்பிட்டதுபோல் random, random.choice, f, else, main(), input, .strip(), while, __name__ == "__main__" ஆகிய குறியாக்கங்களின் விளக்கங்களையும் இங்குக் காணலாம்.

பைத்தான் குறியாக்க விளக்கம்
அன்பா! முதலில் நாம் random, random.choice, f, else, main(), input, .strip(), while, __name__ == "__main__" ஆகிய குறியாக்கங்களின் விளக்கங்களை அறிவோமா?
சரி ஐயா…

பைத்தான் குறியீடுகள் விளக்கம்

1. random, random.choice()

பைத்தானில் எதேச்சையாக (random) எண்களையோ அல்லது தரவுகளையோ தேர்ந்தெடுக்க இந்தக் கூறு (Module) பயன்படுகிறது.

import random: இந்த வசதியைப் பயன்படுத்த முதலில் இதை 'Import' செய்ய வேண்டும்.

random.choice(பட்டியல்): ஒரு List-இல் உள்ளவற்றிலிருந்து ஒன்றை மட்டும் வரிசைமுறை இன்றித் தேர்வு செய்யும்.

சான்று: random.choice(["Red", "Blue", "Green"]) என்பது மூன்றில் ஏதோ ஒன்றை மட்டும் தரும்.

2. f-strings (f)

மாறிகளை (Variable-களை) மிக எளிதாக சரத்திற்குள் (String-க்குள்) (Text) இணைக்க இது பயன்படுகிறது.

எப்படி இதனைப் பயன்படுத்துவது?: வரிக்கு முன்னால் f என்று போட்டு, மாறிப் பெயர்களை { } குறிக்குள் போட வேண்டும்.

சான்று: name = "அருண்", print(f"வணக்கம் {name}") -> வெளியீடு: வணக்கம் அருண்.

3. else

இது if அல்லது while கட்டளைகளுடன் இணைந்து வரும். 'ஒருவேளை நிபந்தனை பொய்த்துப்போனால் (False) என்ன செய்ய வேண்டும்' என்பதை இது சொல்லும்.

4. input()

பயனரிடமிருந்து (User) ஒரு தகவலைப் பெற்றுக்கொள்ள இது பயன்படுகிறது. இது எப்போதும் தரவை ஒரு 'சரம் (String)' (Text) ஆகத்தான் வாங்கும்.

5. .strip()

ஒரு சொல்லின் ஆரம்பத்திலும் முடிவிலும் தேவையில்லாமல் இருக்கும் காலி இடங்களை (Whitespaces) நீக்க இது உதவும்.

சான்று: " Hello ".strip() என்பது "Hello" என்று மாறும்.

6. while

ஒரு நிபந்தனை உண்மையாக இருக்கும் வரை ஒரு செயலைத் திரும்பத் திரும்ப (Loop) செய்ய இது பயன்படுகிறது.

7. main(), if __name__ == "__main__"

இது ஒரு நிரலாக்கத் தரக்கட்டுப்பாட்டு முறை (Best Practice).

main(): உங்கள் நிரலாக்கத்தின் முக்கியமான வேலைகளை ஒரு செயற்கூறுக்குள் (Function-க்குள்) வைப்பது வழக்கம், அதற்கு main என்று பெயரிடுவோம்.

if __name__ == "__main__": உங்கள் கோப்பை நேரடியாக 'இயக்கி (Run)' செயலினால் மட்டுமே குறிப்பிட்ட வேலைகள் நடக்க வேண்டும் என்பதற்காக இதைச் சேர்ப்போம். மற்றொரு கோப்பில் இருந்து இதை 'Import' செய்யும்போது இது தானாக இயங்காது.

அன்பா! இப்பொழுது மேலே சொன்ன குறியீடுகளைப் புரிந்து கொண்டீர்களா?
ஆம் ஐயா…
மகிழ்ச்சி… இனி நாம் தொல்காப்பிய எழுத்ததிகார நூன்மரபு நூற்பா 17 முதல் 21 வரையுள்ள கருத்தியல்களுக்கு தீப்சீக் செய்யறிவுக் கருவிகொண்டு ஒரு நிரல் எழுதி இயக்கிப் பார்ப்போமா?
சரி ஐயா…
நூற்பா 17-21 - மெய்-உயிர் இயல்புகள்
17 புள்ளி இல்லா எல்லா மெய்யும்
உரு உரு ஆகி அகரமொடு உயிர்த்தலும்
ஏனை உயிரொடு உருவு திரிந்து உயிர்த்தலும்
ஆயீர் இயல உயிர்த்தல் ஆறே.
18 மெய்யின் வழியது உயிர் தோன்று நிலையே.
19 வல்லெழுத்து என்ப க ச ட த ப ற.
20 மெல்லெழுத்து என்ப ங ஞ ண ந ம ன.
21 இடையெழுத்து என்ப ய ர ல வ ழ ள.
DeepSeek AI - மெய்-உயிர் விளையாட்டுச் செயலி

சரி மெய்-உயிர் விளையாட்டுச் செயலி எழுதச் சொல்லி, தீப்சீக் கருவிக்குப் பின்வருமாறு கட்டளை எழுதுவோமா?

ஆம் ஐயா…

தொல்காப்பிய மெய்-உயிர் விளையாட்டுச் செயலி

"""
தொல்காப்பிய மெய்யெழுத்து வகைப்பாடு - விளையாட்டுச் செயலி
பயன்படுத்தப்பட்ட புதிய குறிச்சொற்கள்:
- random, random.choice
- f-strings (f)
- else
- main()
- input()
- .strip()
- while
- __name__ == "__main__"
"""

import random

# தொல்காப்பியர் வகைப்படுத்திய மெய்யெழுத்துக்கள்
valli = ['க', 'ச', 'ட', 'த', 'ப', 'ற']      # வல்லெழுத்துகள் - நூற்பா 19
melli = ['ங', 'ஞ', 'ண', 'ந', 'ம', 'ன']      # மெல்லெழுத்துகள் - நூற்பா 20
idai = ['ய', 'ர', 'ல', 'வ', 'ழ', 'ள']       # இடையெழுத்துகள் - நூற்பா 21

# உயிரெழுத்துக்கள் - 12
uyir = ['அ', 'ஆ', 'இ', 'ஈ', 'உ', 'ஊ', 'எ', 'ஏ', 'ஐ', 'ஒ', 'ஓ', 'ஔ']

def main():
    """main() - முதன்மைச் செயல்பாடு"""
    print("=" * 60)
    print("                   தொல்காப்பிய மெய்-உயிர் விளையாட்டு")
    print("=" * 60)
    
    # while - மீண்டும் மீண்டும் விளையாடும் வசதி
    while True:
        print("\n" + "=" * 50)
        print("முதன்மைப் பட்டியல்:")
        print("1. தொல்காப்பிய நூற்பாக்களைக் காண")
        print("2. மெய்-உயிர் சேரும் முறைகளைப் பயில")
        print("3. விளையாட்டு - எழுத்துகளை அடையாளம் காண")
        print("4. வெளியேறு")
        print("=" * 50)
        
        # input() - பயனரிடமிருந்து தேர்வைப் பெறுதல்
        choice = input("உங்கள் தேர்வு (1-4): ")
        
        # .strip() - வெற்றிடங்களை நீக்குதல்
        choice = choice.strip()
        
        # else - வேறு நிபந்தனைகளைச் சரிபார்த்தல்
        if choice == '1':
            show_noorpaakkal()
        elif choice == '2':
            practice_combinations()
        elif choice == '3':
            play_game()
        elif choice == '4':
            print("\nநன்றி! மீண்டும் வருக!")
            break
        else:
            print("தவறான தேர்வு. மீண்டும் முயற்சி செய்க.")

def show_noorpaakkal():
    """நூற்பாக்களைக் காட்டும் செயல்பாடு"""
    print("\n" + "=" * 60)
    print("                   தொல்காப்பிய நூற்பாக்கள்")
    print("=" * 60)
    
    # f-strings - மாறிகளை சரத்துடன் இணைத்தல்
    noorpaakkal = [
        f"17. புள்ளி இல்லா எல்லா மெய்யும்\n    உரு உரு ஆகி அகரமொடு உயிர்த்தலும்\n    ஏனை உயிரொடு உருவு திரிந்து உயிர்த்தலும்\n    ஆயீர் இயல உயிர்த்தல் ஆறே.",
        f"18. மெய்யின் வழியது உயிர் தோன்று நிலையே.",
        f"19. வல்லெழுத்து என்ப {', '.join(valli)}",
        f"20. மெல்லெழுத்து என்ப {', '.join(melli)}",
        f"21. இடையெழுத்து என்ப {', '.join(idai)}"
    ]
    
    for nool in noorpaakkal:
        print(f"\n{nool}")
    
    input("\n[தொடர Enter அழுத்துக] ")

def practice_combinations():
    """மெய்-உயிர் சேரும் முறைகளைக் காட்டும் செயல்பாடு"""
    print("\n" + "=" * 60)
    print("            மெய்-உயிர் சேரும் முறைகள் - நூற்பா 17, 18")
    print("=" * 60)
    
    # f-strings பயன்பாடு - 1. அகரத்துடன் சேர்த்தல்
    print("\n1. அகரமொடு உயிர்த்தல் (மெய் + அகரம்):")
    for mey in valli[:3]:  # முதல் மூன்று வல்லெழுத்துகள்
        print(f"   {mey} + அ = {mey}அ", end="  ")
    print("\n   ... மற்றும் பிற மெய்களும்")
    
    # f-strings பயன்பாடு - 2. பிற உயிர்களுடன் சேர்த்தல்
    print("\n2. ஏனை உயிரொடு உருவு திரிந்து உயிர்த்தல்:")
    
    # random.choice - சீரற்ற மெய்யெழுத்தைத் தேர்வு செய்தல்
    sample_mey = random.choice(valli + melli + idai)
    sample_uyir = random.choice(uyir[1:4])  # ஆ, இ, ஈ
    
    print(f"   உதாரணம்: {sample_mey} + {sample_uyir} = {sample_mey + sample_uyir}")
    print("   (எழுத்தின் உருவம் திரிகிறது)")
    
    input("\n[தொடர Enter அழுத்துக] ")

def play_game():
    """விளையாட்டுச் செயல்பாடு"""
    print("\n" + "=" * 60)
    print("                   எழுத்து வகை அடையாளம் காணும் விளையாட்டு")
    print("=" * 60)
    
    score = 0
    total_questions = 5
    
    # while - கேள்விகள் கேட்பதற்கான சுழற்சி
    question_num = 0
    while question_num < total_questions:
        question_num += 1
        
        # random.choice - சீரற்ற மெய்யெழுத்தைத் தேர்வு செய்தல்
        all_letters = valli + melli + idai
        letter = random.choice(all_letters)
        
        # எழுத்தின் வகையைக் கண்டறிதல்
        # else - பல நிபந்தனைகளைச் சரிபார்த்தல்
        if letter in valli:
            correct_type = "வல்லெழுத்து"
            hint = "க ச ட த ப ற - வன் மெய்கள்"
        elif letter in melli:
            correct_type = "மெல்லெழுத்து"
            hint = "ங ஞ ண ந ம ன - மென் மெய்கள்"
        else:
            correct_type = "இடையெழுத்து"
            hint = "ய ர ல வ ழ ள - இடை மெய்கள்"
        
        print(f"\nகேள்வி {question_num}/{total_questions}:")
        print(f"  '{letter}' - இது எந்த வகை மெய்யெழுத்து?")
        print(f"  (குறிப்பு: {hint})")
        print("  1. வல்லெழுத்து")
        print("  2. மெல்லெழுத்து")
        print("  3. இடையெழுத்து")
        
        # input() மற்றும் .strip() - பயனர் பதிலைப் பெறுதல்
        answer = input("  உங்கள் விடை (1/2/3): ").strip()
        
        # f-strings - பதிலைச் சரிபார்த்தல்
        if (answer == '1' and correct_type == "வல்லெழுத்து") or \
           (answer == '2' and correct_type == "மெல்லெழுத்து") or \
           (answer == '3' and correct_type == "இடையெழுத்து"):
            print(f"  ✓ சரி! {letter} ஒரு {correct_type}")
            score += 1
        else:
            print(f"  ✗ தவறு. {letter} ஒரு {correct_type}")
    
    # f-strings - இறுதி மதிப்பெண்ணைக் காட்டுதல்
    print(f"\n" + "=" * 50)
    print(f"  விளையாட்டு முடிந்தது!")
    print(f"  உங்கள் மதிப்பெண்: {score}/{total_questions}")
    
    percentage = (score / total_questions) * 100
    print(f"  விழுக்காடு: {percentage:.1f}%")
    
    if percentage >= 80:
        print(f"  பாராட்டுகள்! சிறந்த அறிவு!")
    elif percentage >= 50:
        print(f"  நல்லது! மேலும் பயிற்சி எடுங்கள்!")
    else:
        print(f"  மீண்டும் முயற்சி செய்யுங்கள்!")
    
    input("\n[தொடர Enter அழுத்துக] ")

# __name__ == "__main__" - நிரல் நேரடியாக இயங்கும்போது மட்டுமே main() செயல்பட
if __name__ == "__main__":
    main()
                    
இந்த விளையாட்டு நன்றாக இயங்குகின்றது ஐயா… அதுதரும் விளைவினை உற்றுப்பார் அன்பா!
sathiyaraj@sathiyaraj-Aspire-ES1-521:~/ஆவணங்கள்/core_stable_Sathiyaraj/0தொல்காப்பியர்_விதிகள்$ python3 01_tholkappiya_nuunmarapu2.py ============================================================ தொல்காப்பிய மெய்-உயிர் விளையாட்டு ============================================================ ================================================== முதன்மைப் பட்டியல்: 1. தொல்காப்பிய நூற்பாக்களைக் காண 2. மெய்-உயிர் சேரும் முறைகளைப் பயில 3. விளையாட்டு - எழுத்துகளை அடையாளம் காண 4. வெளியேறு ================================================== உங்கள் தேர்வு (1-4): 1 ============================================================ தொல்காப்பிய நூற்பாக்கள் ============================================================ 17. புள்ளி இல்லா எல்லா மெய்யும் உரு உரு ஆகி அகரமொடு உயிர்த்தலும் ஏனை உயிரொடு உருவு திரிந்து உயிர்த்தலும் ஆயீர் இயல உயிர்த்தல் ஆறே. 18. மெய்யின் வழியது உயிர் தோன்று நிலையே. 19. வல்லெழுத்து என்ப க, ச, ட, த, ப, ற 20. மெல்லெழுத்து என்ப ங, ஞ, ண, ந, ம, ன 21. இடையெழுத்து என்ப ய, ர, ல, வ, ழ, ள [தொடர Enter அழுத்துக] ================================================== முதன்மைப் பட்டியல்: 1. தொல்காப்பிய நூற்பாக்களைக் காண 2. மெய்-உயிர் சேரும் முறைகளைப் பயில 3. விளையாட்டு - எழுத்துகளை அடையாளம் காண 4. வெளியேறு ================================================== உங்கள் தேர்வு (1-4): 3 ============================================================ எழுத்து வகை அடையாளம் காணும் விளையாட்டு ============================================================ கேள்வி 1/5: 'ங' - இது எந்த வகை மெய்யெழுத்து? (குறிப்பு: ங ஞ ண ந ம ன - மென் மெய்கள்) 1. வல்லெழுத்து 2. மெல்லெழுத்து 3. இடையெழுத்து உங்கள் விடை (1/2/3): 2 ✓ சரி! ங ஒரு மெல்லெழுத்து ... ================================================== விளையாட்டு முடிந்தது! உங்கள் மதிப்பெண்: 5/5 விழுக்காடு: 100.0% பாராட்டுகள்! சிறந்த அறிவு!
அது இருக்கட்டும் உன் கற்பனைக்கு ஏற்ப இந்தச் செய்யறிவுக் கருவியிடம் வினவலாகக் கேட்டுப் புதிய புதிய விளையாட்டுக்களை உருவாக்கலாம். சரி ஐயா… சரி… இதற்குரிய நிரலை என்னுடைய கித்துப்பில் [6] தருகின்றேன்; இதனை நீயும் இயக்கிப் பார் அன்பா… சரி ஐயா…
முடிவு

இனி இந்த நிரலினை ஒரு இணையச் செயலியாக உருவாக்கி மாணாக்கப் பயன்பாட்டிற்கு வழங்கும் நுட்பத்தினை அடுத்துவரும் பாடவேளையில் அறிவோம்.

சரி ஐயா. மிக்க நன்றி!
துணைநின்றவை
📺 காணொலி விரிவுரையைப் பாருங்கள்
ஏழாம் வார முழு விளக்கவுரை (காணொலி நேரம்: 48:30)

தமிழ்நாடு அரசுப் பொதுப்பணித் தேர்வு (TNPSC) | தமிழ்த் தகுதித் தேர்வு | 6 மாத பயிற்சித் திட்டம்

தமிழ்நாடு அரசுப் பொதுப்பணித் தேர்வு (TNPSC) | தமிழ்த் தகுதித் தேர்வு | 6 மாத பயிற்சித் திட்டம் ...