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

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

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

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

Tholkaappiyam - Nunmarabu (Python Text-3)

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

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

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

அறிமுகம்

முந்தைய வகுப்பில் தொல்காப்பியம் அறிமுகம், பைத்தான் அறிமுகம், பைத்தான் நிரல் எழுதும் முறை, தொல்காப்பிய நூற்பாவைப் பைத்தான் நிரலாக மாற்றும் முறைமைகளை அறிந்தோம். அவை தொல்காப்பிய நூன்மரபு முதல் ஏழு நூற்பாக்களுக்குப் பைத்தான் நிரலாக்கமுறையில் விளக்கம் தரப்பெற்றதாகவும் பைத்தான் நிரல் உருவாக்கும் வழிமுறைகளை விளக்குவதாகவும் அமைந்தன. அதன் தொடர்ச்சியாகத் தொல்காப்பிய நூற்பா 8-ற்கு ஆணைத்தொடர் (Algorithm) உருவாக்கிப் பைத்தான் நிரல் எழுதும் வழிமுறையை இப்பாடம் இயம்புகின்றது.

முந்தைய வகுப்பில் கற்ற முக்கியக் குறிப்புகள்
முந்தைய வகுப்பில் கற்ற முக்கியக் குறிப்புகளை மட்டும் இங்கு மீண்டும் நினைவுபடுத்திப் பார்ப்போமா? சரி ஐயா…
  • input - இது பயனரிடமிருந்து தரவைப் பெறுவதற்குப் பயன்படுகின்றது.
  • if - ஒன்றை ஆய்வுசெய்ய பயன்படுகின்றது.
  • in - பயனர் தரக்கூடிய குறிப்பு, ஏற்கனவே உள்ள பட்டியலில் உள்ளதா எனக் கண்டறிய உதவுகின்றது.
  • elif - if என்பதில் தரப்பெற்ற குறிப்புத் தவறு என்றால் இன்னொரு மாறியில் உள்ள பட்டியலைச் சரிபார்த்துப் பயனர் தந்த குறிப்புச் சரியானதா என உறுதிப்படுத்த இது பயன்படும்.
  • else - if, elif ஆய்விற்குப் பின்பு பயனர் தந்த குறிப்புத் தவறு என்றால். இந்தக் குறிச்சொல்மூலம் அதனைத் தெரிவிக்க உதவுகின்றது.
இவற்றை எல்லாம் ஒருமுறை நினைவுப்படுத்திப் பார்த்துக் கொண்டேன் ஐயா.

மிக்க மகிழ்ச்சி. அதனை வைத்தே இனிவரும் நூற்பா 8-ற்கும் நிரல் எழுதிப் பழகலாம்.

நூற்பா 8 - உயிர் எழுத்துக்கள்
ஔகார இறுவாய்ப்
பன்னீர் எழுத்தும் உயிர் என மொழிப. (நூற்பா 8)

இந்த நூற்பாவில் சொல்லப்பெற்ற கருத்தியலுக்கு எந்தெந்த தன்மைகளில் விளக்கலாமென ஒரு வரைவை உருவாக்க வேண்டும். அதாவது ஒரு குழந்தைக்குக் கற்றுக் கொடுப்பதுபோல் அதனை எடுத்துச் சொல்ல வேண்டும். அதற்கு நாம் முதலில் ஆணைத்தொடர் (Algorithm) எழுதும் பழக்கத்தை ஏற்படுத்திக்கொள்ள வேண்டும்.

ஆணைத்தொடர் என்றால் என்ன ஐயா. கொஞ்சம் விளக்குங்கள்.
ஆணைத்தொடர் (Algorithm) - ஓர் அறிமுகம்

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

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

இப்பொழுது புரிந்துகொண்டாயா?
புரிந்த மாதிரியும் புரியாத மாதிரியும் உள்ளது ஐயா.

அது பயிற்சி செய்யச்செய்ய தானாகப் புரிய ஆரம்பித்துவிடும். எனவே, அவற்றின் பயன்பாட்டை முதலில் தெரிந்து கொள்வாய் அன்ப!

சரி ஐயா.
ஆணைத்தொடர்களின் பயன்பாடு

ஆணைத்தொடர்கள் பல்வேறு துறைகளில் முக்கிய பங்கு வகிக்கின்றன. இது பல பயன்பாடுகளைக் கொண்டுள்ளன.

  • கணினி அறிவியல்: கணினி நிரலாக்கத்தின் அடிப்படையை இது உருவாக்குகின்றது. மேலும் அவை எளிய வரிசைப்படுத்துதல், தேடுதல் முதல் செய்யறிவு, இயந்திரக் கற்றல் போன்ற சிக்கலான பணிகள் வரையிலான சிக்கல்களைத் தீர்க்கப் பயன்படுகின்றன.
  • கணிதத் துறை: நேரியல் சமன்பாடுகளின் அமைப்புக்கு ஏற்றத் தீர்வைக் கண்டறிதல், வரைபடத்தில் குறுகிய பாதையைக் கண்டறிதல் போன்ற கணிதச் சிக்கல்களைத் தீர்க்கப் பயன்படுத்தப்படுகின்றன.
  • போக்குவரத்து, தளவாடங்கள்: வள ஒதுக்கீடு போன்ற துறைகளில் மேம்படுத்தவும் முடிவுகளை எடுக்கவும் பயன்படுத்தப்படுகின்றன.
  • செய்யறிவுத் துறை: இயந்திரக் கற்றலின் துறையில் இது அடித்தளமாகும். மேலும் அவை படத்தை அறிதல், இயற்கை மொழிச் செயலாக்கம், முடிவெடுத்தல் போன்ற பணிகளைச் செய்யக்கூடிய அறிவார்ந்த அமைப்புகளை உருவாக்கப் பயன்படுகின்றன.
  • தரவு அறிவியல்: சந்தைப்படுத்தல், நிதி, சுகாதாரம் போன்ற துறைகளில் உள்ள பெரிய அளவிலான தரவுகளிலிருந்து நுண்ணறிவுகளைப் பகுப்பாய்வு செய்யவும், செயலாக்கவும், பிரித்தெடுக்கவும் பயன்படுத்தப்படுகின்றன.

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

சரி, மேற்கண்ட தொல்காப்பிய எழுத்ததிகார நூன்மரபு 8ஆம் நூற்பாவிற்கு ஒரு ஆணைத்தொடர் உருவாக்குவோமா? சரி ஐயா.
நூற்பா 8 - ஆணைத்தொடர் படிநிலைகள்

அதில் கூறப்பட்டுள்ள செய்திகள் என்ன? ஔ எனும் எழுத்துவரை பன்னிரண்டு எழுத்துக்கள் உள்ளன. அவை உயிர் எழுத்துக்கள் என்று தொல்காப்பியர் கூறுகின்றார். அப்படி என்றால் பின்வருமாறு படிநிலை ஆணைத் தொடர்கள் எழுத வேண்டும்.

படிநிலை - 1: முதலில் தமிழ்மொழியைக் கணினி முறைக்குப் புரியும் வகையில் எழுத வேண்டும் என்றால், முதலில் அதற்குரிய ஓபன் தமிழ் அகராதியை நிறுவ வேண்டும்.
!pip install Open-Tamil
படிநிலை - 2: நிறுவிய பின்பு ஓபன் தமிழ் அகராதியை உள்ளே வருவிக்க வேண்டும்.
import tamil
படிநிலை - 3: அடுத்து நூற்பாவில் சொல்லப்பெற்ற உயிர் எழுத்துக்களைப் பட்டியலாக உருவாக்க 'உயிர்_எழுத்து' எனும் மாறி உருவாக்க வேண்டும்.
உயிர்_எழுத்து = ['அ', 'ஆ', 'இ', 'ஈ', 'உ', 'ஊ', 'எ', 'ஏ', 'ஐ', 'ஒ', 'ஓ', 'ஔ']
படிநிலை - 4: அதனை விளைவாகக் காட்டுகின்றதா என எழுதி ஆய்வுசெய்ய வேண்டும்.
print(உயிர்_எழுத்து)
படிநிலை - 5: ஏற்கனவே உயிர் எழுத்தின் குறில், நெடில் எழுத்துக்கள் குறித்து அறிந்தமையால் அவற்றையும் பட்டியல்களாகத் தனித்தனி மாறிகளில் 'உயிர்_குற்றெழுத்து', 'உயிர்_நெட்டெழுத்து' என எழுதிக்கொள்ள வேண்டும்.
உயிர்_குற்றெழுத்து = ['அ', 'இ', 'உ', 'எ', 'ஒ']
உயிர்_நெட்டெழுத்து = ['ஆ', 'ஈ', 'ஊ', 'ஏ', 'ஐ', 'ஓ', 'ஔ']
படிநிலை - 6: இவற்றை எல்லாம் ஆய்வுசெய்து பார்க்க ஒரு எழுத்தைப் பெறும் input எனும் குறியீட்டுச் சொல் தந்து, 'எழுத்தறிதல்' எனும் மாறியில் எழுத வேண்டும்.
எழுத்தறிதல் = input("எழுத்தைக் கண்டறிய ஒரு எழுத்தைத் தருக: ")
படிநிலை - 7: அதன்பிறகு if எனும் கட்டளையில் எழுதி ஆய்வுசெய்ய வேண்டும்.
if எழுத்தறிதல் in உயிர்_குற்றெழுத்து:
படிநிலை - 8: எழுத்தறிதல் எனும் மாறியில் வாங்கிய எழுத்து உயிர்_குற்றெழுத்தாக இருந்தால் பின்வருமாறு விளைவினைத் தருவதாக எழுத வேண்டும்.
print("சரி. இது உயிர் குறில் எழுத்தே. பாராட்டு…")
படிநிலை - 9: அந்த எழுத்து இல்லை என்றால் அதன்பிறகு elif எனும் கட்டளையில் எழுதி ஆய்வுசெய்ய வேண்டும்.
elif எழுத்தறிதல் in உயிர்_நெட்டெழுத்து:
படிநிலை - 10: அந்த எழுத்து இல்லை என்றால் எழுத்தறிதல் எனும் மாறியில் வாங்கிய எழுத்து உயிர்_நெட்டெழுத்தாக இருந்தால் பின்வருமாறு விளைவினைத் தருவதாக எழுத வேண்டும்.
print("சரி. இது உயிர் நெடில் எழுத்தே. பாராட்டு…")
படிநிலை - 11: மேற்கூறிய எழுத்து எதுவுமே இல்லை என்றால் அதன்பிறகு else எனும் கட்டளையில் எழுதி ஆய்வுசெய்ய பின்வருமாறு விளைவினைத் தருவதாக எழுத வேண்டும்.
else:
print("நீங்கள் எழுதிய எழுத்து உயிர் குறிலும் இல்லை; நெடிலும் இல்லை. மீண்டும் முயற்சிக்கவும்…")
முழுமையான பைத்தான் நிரல்

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

!pip install Open-Tamil

import tamil

உயிர்_எழுத்து = ['அ', 'ஆ', 'இ', 'ஈ', 'உ', 'ஊ', 'எ', 'ஏ', 'ஐ', 'ஒ', 'ஓ', 'ஔ']
print(உயிர்_எழுத்து)

உயிர்_குற்றெழுத்து = ['அ', 'இ', 'உ', 'எ', 'ஒ']
உயிர்_நெட்டெழுத்து = ['ஆ', 'ஈ', 'ஊ', 'ஏ', 'ஐ', 'ஓ', 'ஔ']

எழுத்தறிதல் = input("எழுத்தைக் கண்டறிய ஒரு எழுத்தைத் தருக: ")

if எழுத்தறிதல் in உயிர்_குற்றெழுத்து:
    print("சரி. இது உயிர் குறில் எழுத்தே. பாராட்டு…")
elif எழுத்தறிதல் in உயிர்_நெட்டெழுத்து:
    print("சரி. இது உயிர் நெடில் எழுத்தே. பாராட்டு…")
else:
    print("நீங்கள் எழுதிய எழுத்து உயிர் குறிலும் இல்லை; நெடிலும் இல்லை. மீண்டும் முயற்சிக்கவும்…")
மாதிரி விளைவு:
['அ', 'ஆ', 'இ', 'ஈ', 'உ', 'ஊ', 'எ', 'ஏ', 'ஐ', 'ஒ', 'ஓ', 'ஔ']
எழுத்தைக் கண்டறிய ஒரு எழுத்தைத் தருக: அ
சரி. இது உயிர் குறில் எழுத்தே. பாராட்டு…
சரி அன்ப! இந்த வகுப்பை இத்துடன் முடித்துக் கொள்வோமா. பிற குறிப்புகளை அடுத்துவரும் பாடவேளையில் அறிந்துகொள்வோமா? சரி ஐயா. மிக்க நன்றி!
முடிவுரை

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

துணைநின்றவை
📺 காணொலி விரிவுரையைப் பாருங்கள்
மூன்றாம் வார முழு விளக்கவுரை (காணொலி நேரம்: 35:20)

கருத்துகள் இல்லை:

கருத்துரையிடுக

உங்கள் கருத்துகள் வரவேற்கப்படுகின்றன

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

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