You are on page 1of 88

தமிழில் நிரல் எழுத

எழில் நிரலாகக ொமாழி


Write Code in Tamil
Ezhil Programming Language

மதைதயா அணணாமைல,
என. ொசாககன
தமிழில் நிரல் எழுத
- எழில் நிரலாகக ொமாழி

Write Code in Tamil


- Ezhil Programming Language

மதைதயா அணணாமைல,
மற்றும
என. ொசாககன
தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி | 3
தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

Copyright © 2013, 2015, மதைதயா அணணாமைல


பதபபாளர: மதைதயா அணணாமைல
Typeset in Libre Office 3. Written in Tamil, using the UTF-8 Unicode encoding
Published in Boston, MA, USA .

All Rights Reserved

This book may be used under the terms of the following license.
CC Attribution Non-Commercial 4.0 , International

This license lets others remix, tweak, and build upon your work non-commercially, and although their new
works must also acknowledge you and be non-commercial, they don’t have to license their derivative works
on the same terms.
You are free to:
Share — copy and redistribute the material in any medium or format
Adapt — remix, transform, and build upon the material

The licensor cannot revoke these freedoms as long as you follow the license terms.

Under the following terms:

Attribution — You must give appropriate credit, provide a link to the license, and indicate if
changes were made. You may do so in any reasonable manner, but not in any way that suggests the
licensor endorses you or your use.

NonCommercial — You may not use the material for commercial purposes.

No additional restrictions — You may not apply legal terms or technological measures that
legally restrict others from doing anything the license permits.

License Deed: http://creativecommons.org/licenses/by-nc/4.0/


Legal Code: http://creativecommons.org/licenses/by-nc/4.0/legalcode

4 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


எழுததாளரகள

மதைதயா அணணாமைல என. ொசாககன


எழில் ொமாழிைய உரவாககயவர. தமிழ் எழுததாளர. ொபாங்களூர நகரில்
பாஸடன நகரில் வசககம விஞ்ஞான, வசககம, IT-தைரயில், ொதாழில்நுட்ப
மற்றும ொமனொபாரள ொபாறியாளர. ஆலொலாசகர. இவர பல தமிழ்
புததகங்கைள எழுதயுளளார.

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 5


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

ஒபபுைககைள

எழில் ொமாழிைய தனநத தனனாரவவலரகளாக மதலல் பயனபடததயவரகளககம,


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

6 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


அரபபணம

ேபராசரியர தர. ொமயயபபன, சாரதா ஆலசச நிைனவிற்க


-அ. ம.

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 7


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

மனனைர

தாய ொமாழியில் கற்கம கழநைதகள நனக புரிநதணரநத ஆலழமாக கற்கறாரகள எனப


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

நமகக, அனறாட வாழ்வில் பல்ேவறு கணகககள, ொசயல்கள ொசயய ேவணட உளளன.


அவற்றில் பலவற்ைற நமமால் கணனயின உதவி ொகாணட எளதாக ொசயய மடயும.
ஆலனால், இனைறய ேததயில் கணனேயாட உைரயாட, கணனயால் புரிநத ொகாளள
ொதரிநத ொமாழிைய நாம ொதரிநத ைவததரகக ேவணடம. அமொமாழிகளதாம, C, C++,
Java, Python ேபானற நிரலாகக ொமாழிகள (Programming Languages). இைவ அைனததம
ஆலங்கலதைத அடபபைடயாகக ொகாணடைவ!

கணனேயாட உைரயாட நாம ொமாழிகைளக கற்க ேவணடமா? ொகாஞ்சம, விதயாசமாக


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

கணன "எழில்" மலம தமிழ் ேபச நிரலாககம ொசயய வரேவற்கறத! நம ொமாழிைய


கணன கற்றுக ொகாணடளளத! இன,இதன மலம நிரலாககம ொசயத, கணன ேபசம மற்ற
ொமாழிகைளயும நாம கற்ேபாம!

ஒர ேமமபட்ட ேமல் நிைல (advanced high level) நிரலாகக ொமாழியில், எனொனனன


அமசங்கள உளளனேவா, அவற்றில் பல (நிபநதைனகள, ொதாடர கணககட்ட
வாககயங்கள, நிரல் பாகங்கள, வைரதல், ேகாபபு மாற்றி வாககயங்கள ேபானற) மககய
அமசங்கள, "எழில்" ொமாழியில் உளளன.

ஒர நிரலாகக ொமாழிககம பயனபாட்டாளரககம உளள உறவ பரஸபர புரிதைலயும


வளரசசையயும சாரநதத. ஒர நிரலாகக ொமாழியின வளரசச, அமொமாழி எவவளவ
எளதாக எததைன பயனபாட்டளரகளன ேதைவகைள பரதத ொசயகறத எனபதலம
பயனபாட்டாளரகள உரவாககம ொதாகபபுகளலமதான(libraries and packages) உளளத.

அவவைகயில், நாம "எழில்" ொமாழியில் ொதாகபபுகள பலவம உரவாகக, கணனகக

8 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


நாம தமிழில் இனனம பல புதய கட்டைளகள இடேவாம! இடம கட்டைளகைள புரிநத
ொகாளள கணனகக கற்று ொகாடபேபாம!

"எழில்" எனற புதய உலகததற்க உங்கைள அைழககேறாம!

தர. அரணராம,
மினனயல் ொபாறியாளர
ட்விட்டர: @arunatma
ொபாங்களூர, 2015

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 9


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

ொபாரளடககம (Table of Contents)


1. 1 -1 -வாங்க, நிரல் எழுதேவாம!.................................................................................................1
1.1 மதல் நிரைல எபபட எழுதவத...........................................................................................1
1.1 களதைத, கணன ொமாழிையத தரமானபபத.....................................................................2
1.1.1. ஆலனால், அைத எங்ேக எழுதவத?.............................................................................2
1.1.2. எனன நிரல் எழுதவத எனத தரமானபபத...............................................................2
1.1.3. நிரல் வழிமைற (Algorithm)..........................................................................................2
1.1.4.மாதரி நிரல் எழுதவத...................................................................................................3
1.1.5. மழுைமயான நிரல் எழுதவத.....................................................................................4
1.1.6.நிரைலப பரிேசாதபபத..................................................................................................5
1.1.7.நிரைலச ேசமிததைவபபத............................................................................................5
2. 2 -2 -கணன ொமனொபாரள நிரல் எழுதக கற்றுகொகாள.........................................................7
2.1"எழில்" ொமாழிையக ொகாணட நாம எனனொவல்லாம ொசயயலாம?..............................8
2.2 எழில் அறிமகம மற்றும வரலாறு.........................................................................................8
2.3 எழில் ொமாழியின ேநாககங்கள:...........................................................................................9
2.4 கறிசொசாற்கள:.........................................................................................................................9
3. 3 -3 -எழில் பதவிறககம மற்றும நிறுவ (Installing Ezhil)........................................................11
3.1 வணககம தமிழகம!...............................................................................................................11
3.2 இைணயதைத பயனபடததம எழில்..................................................................................12
3.3 எழில் - ைபததான வழியில்..................................................................................................12
3.4 சல எளய எழில் கணகககள...............................................................................................13
4. 4 -4 - சரங்கள மற்றும எழுததகள (Strings)..............................................................................16
4.1 சரம நளம (String length).......................................................................................................16
4.2 சரம இைணவதற்க (String length).......................................................................................16
4.3 ேதடல், சரங்கைள மாற்றவம (Search Strings)....................................................................18
4.4 பட்டயல்கள பயனபடதத, வரிைசபபடதத ( Using Lists, Sorting ).................................18
5. 5 -5 -நிபநதைன (Conditionals)....................................................................................................21
5.1 ஆலம இல்ைல எனல்..............................................................................................................21
5.2 பயிற்ச.....................................................................................................................................23
6. 6 -6 - மடககசொசயல் மற்றும வாககயம (Loops and more statements)..................................25
6.1 வைர கறிசொசால் (While statement)................................................................................25
6.2 ேதரநொதட, நிறுதத, ொதாடர - கறிசொசால் (Switch-Case, Break, Continue,
statement).......................................................................................................................................27
6.3 பயிற்ச.....................................................................................................................................29
6.4 ஒவொவானறாக கறிசொசால் (For-Each statement)..............................................................30
7. 7 -7 -ொகாஞ்சம ‘வைரநத’ பாரபேபாமா? (Drawing pictures - Turtle graphics).....................32
7.1 வலத, இடத வைரதல் - (Drawing Forward, Backward, Right, Left )................................33
7.2 எழுதேகால்ேமேல (Pen up, Pen down..............................................................................33
7.3 நிறங்கள, வட்டங்கள Colors, Circles ..................................................................................34
8. 8 -8 -நிரல்பாகம (Functions – Composition)...............................................................................37
8.1 ொதாடரொபரகக (Factorial)..............................................................................................38

10 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


8.1.1.இநத நிரல் எபபட இயங்ககறத?...............................................................................39
8.2 மணடம அைழககபபடம நிரல்பாகம (Recursion)...........................................................39
8.3 பயிற்ச - பகா எணகள (Prime Numbers).............................................................................41
9. 9 -9 -ேகாபபு (File I/O)...............................................................................................................45
9.1 புதய ேகாபபு..........................................................................................................................45
9.1.1.ேகாபைப மட................................................................................................................45
9.2 ேகாபைப_தற படகக............................................................................................................46
9.3 மடவ.......................................................................................................................................47
10..................................................................10 -10 -எழில் ொமாழி உதாரணங்கள (Examples)
........................................................................................................................................................48
10.1 உதாரணங்கள பதவிறககம................................................................................................48
10.2 அறிமகபபடதததல்............................................................................................................48
10.3 அசசடதல் ............................................................................................................................48
10.3.1.எழுததச சரங்கைள அசசடதல்: ...............................................................................49
10.4 நிரலல் உளள விவரங்கைள அசசடதல் ........................................................................49
10.5 உளளடதல் .........................................................................................................................50
10.6 ஒபபடதல் ...........................................................................................................................50
10.7 ேமலம சல ஒபபடகள .....................................................................................................51
10.8 ஒனறுகக ேமற்பட்ட ஒபபடகள ......................................................................................52
10.9 இதவா? அல்லத, அதவா? ...............................................................................................54
10.10 ஒேர பணையத தரமபத தரமபச ொசயதல் ..............................................................55
10.11 நிறுதததல், ொதாடரதல்.......................................................................................................58
10.12 அதக விவரங்கள .............................................................................................................60
10.13 நிரல்பாகங்கள ...................................................................................................................62
11....................................................11 -11 -நிரலாளர உதவிக ைகேயட (Programmer's Examples)
........................................................................................................................................................63
11.1 பதபப...................................................................................................................................63
11.2 உளளட..................................................................................................................................63
11.3 ஆலனால்..................................................................................................................................64
11.4. இல்ைலஆலனால் & இல்ைல...............................................................................................64
11.5. வைர.....................................................................................................................................65
11.6. ொசய & மடேயனல்...........................................................................................................66
11.7. ஒவொவானறாக....................................................................................................................66
11.8. ஆலக.......................................................................................................................................67
11.9. ேதரநொதட, ேதரவ & ஏேதனல்........................................................................................67
11.10 நிறுதத.................................................................................................................................68
11.11 ொதாடர.................................................................................................................................68
11.12 பட்டயல்..............................................................................................................................69
11.13 பனஇைண..........................................................................................................................69
11.14 எட........................................................................................................................................69
11.15 தைலகழ்...............................................................................................................................70
11.16 வரிைசபபடதத..................................................................................................................70

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 11


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

11.17 நளம.....................................................................................................................................70
11.18 நட்டகக................................................................................................................................70
11.19 dict........................................................................................................................................71
11.20 ைவ.......................................................................................................................................71
11.21 எட........................................................................................................................................71
11.22 நிரல்பாகம...........................................................................................................................72
11.23 பனொகாட...........................................................................................................................72
11.24 ேகாபைப_தற.....................................................................................................................72
11.25 ேகாபைப_எழுத................................................................................................................73
11.26 ேகாபைப_மட...................................................................................................................73
11.27 ேகாபைப_பட.....................................................................................................................74

12 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

காரணததற்காக காலயாக ைவககபபடம பககம.


This page was intentionally left blank

14 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


1 -வாங்க, நிரல் எழுதேவாம!

1 - வாங்க , நிரல் எழுதேவாம !

யாதம ஊேர, யாவரம ேகளர!
கணன, தரவ (logic) ொமாழிையததவிர எநத ொமாழிையயும இயல்பாக அறியாத. அைகயால், 
ஆலங்கலததல் மட்டமனறி, தமிழிலம நங்கள கணணைய கட்டைளயிட எழுதலாம! இதற்கப ொபயர 
நிரலாககம; இபபட அைமநத ஒர ொமாழி தான எழில். 

இநத புததகததன வழியாக எழில், ேமலம நிரலாககம, இரணடம கற்றுகொகாணட,  Java, Python 
ொபானற ொமாழிகைள கற்க தயாராகவிடவரகள என நமபுகேரன.

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

1.1 மதல் நிரைல எபபட எழுதவத


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

1. நிலதைதத தரமானபபத

2. அங்ேக எனன கட்டபேபாகேறாம (வடா, அலவலகமா, கைடயா, ேவறு ஏதாவதா) எனறு 
தரமானபபத

3. அதற்கத தட்டம ேபாடவத (Blueprint)

4. எங்ேக சவரகள, எங்ேக தணகள எனறு தரமானதத, தட்டததகேகற்ப அஸதவாரம 
ேபாடவத

5. அதனமத வட்ைட எழுபபுவத

6. உளேள நுைழநத எல்லாம தரபதயாக உளளதா எனறு பாரபபத

7. நணபரகள, உறவினரகளககச ொசால்லவத

8. இேத ஏழு நிைலகள, கணன நிரல் எழுதவதலம உணட:

9. நிலதைதத தரமானபபதேபால், இங்ேக களதைத, கணன ொமாழிையத தரமானககேறாம 

10. எைதக கட்டபேபாகேறாம எனறு தரமானபபதேபால், இங்ேக எனன நிரல் எழுதவத எனத 
தரமானககேறாம

11. தட்டம ேபாடவதேபால், இங்ேக Algorithm எனபபடம நிரல் வழிமைறைய எழுதகேறாம

12. அஸதவாரம ேபாடவதேபால், இங்ேக pseudocode எனபபடம மாதரி நிரைல 
எழுதகேறாம

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி | 1


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

13. வட்ைட எழுபபுவதேபால், இங்ேக மழுைமயான நிரைல எழுதகேறாம

14. உளேள நுைழநத பாரபபதேபால், இங்ேக நாம எழுதய நிரைலப பரிேசாதககேறாம 
(Testing)

15. நணபரகள, உறவினரகளககச ொசால்லவதேபால், இங்ேக நமமைடய நிரைல நிரநதரமாகச 
ேசமிததைவதத ேவணடமேபாொதல்லாம பயனபடததகேறாம

இபபட ொமாததமாகச ொசானனால் கழபபமாகதான இரககம. அதற்கப பதலாக, இநத ஏழு
 நிைலகைளப பனபற்றி, ஒர மாதரி நிரல் எழுதபபாரபேபாமா?

1.1 களதைத, கணன ொமாழிையத தரமானபபத

இதல் நமககக கழபபேம ேவணடயதல்ைல. "எழில்" ொமாழிையதான பனபற்றபேபாகேறாம 
எனறு நாம ஏற்ொகனேவ தரமானததவிட்ேடாம.

1.1.1. ஆலனால், அைத எங்ேக எழுதவத ?

நமமைடய விணேடாஸ அல்லத ைலனகஸ வைகக கணனயில் "எழில்" ொமாழியில் நிரல் 
எழுதலாம. ஆலனால் அதற்க நங்கள "எழில்" ொமனொபாரைள அநதக கணனயில் 
நிறுவியிரககேவணடம. ஒரேவைள நங்கள இனனம அதைனச ொசயயவில்ைல எனறால், 
இைணயதளம http://www.ezhillang.org   கக வாரங்கள. அங்ேக நங்கள "எழில்" 
ொமனொபாரைளத தரவிறககம ொசயயலாம. அல்லத, ேநரடயாக அங்ேகேய நிரல் எழுதச சரி 
பாரககலாம.

புததாக நிரல் எழுதேவார பயிற்சககாக இைணயதளம http://www.ezhillang.org 
 ேலேய 
நிரல் எழுதவத நல்லத. அதல் நல்ல அனபவம ஏற்பட்டபறக நம கணனயில் "எழில்"­ஐ 
நிறுவிகொகாளளலாம.

1.1.2. எனன நிரல் எழுதவத எனத தரமானபபத

நங்கள உங்கள விரபபமேபால் எதற்கம நிரல் எழுதலாம. இங்ேக ஓர எளய உதாரணமாக, 
இர எணகளைடய சராசரிையக கணடறிவதற்க நிரல் எழுதேவாம.

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

ஆலக, நமமைடய நிரலன ேநாககம, இரணட எணகளன சராசரிையக கணடபடபபத.

1.1.3. நிரல் வழிமைற (Algorithm)

2 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


1 -வாங்க, நிரல் எழுதேவாம!

நிரல் வழிமைற எனபத, இநத ேநாககதைத நாம எபபட நிைறேவற்றபேபாகேறாம 
எனபதற்கான தட்டமிடல். அதாவத, படபபடயாகச சநதபபத.

ஆலங்கலததல் Algorithm எனறு அைழககபபடம நிரல் வழிமைறைய எழுதவதற்கப பல 
வழிகள உணட, அழகழகாக ொபாமைம ேபாட்ட எழுதவதற்க நிைறய tools கட உணட. 
அைதொயல்லாம நாம பனனால் கற்றுகொகாளேவாம. இபேபாைதகக, ஒர காகதததல் 1, 2, 3 
எனறு எண ேபாட்ட எழுதனால் ேபாதமானத.

நம ேநாககம, சராசரி கணடபடபபத. அதற்க உளளட (Input) எனன?

இரணட எணகள. நாம அவற்ைற எண1, எண2 என அைழபேபாம.

இநத நிரலன ொவளயட (Output or Result) எனன?

நாம தநத இர எணகளன சராசரிதான அத. இநத எணைண நாம எண3 எனறு 
அைழபேபாம.

எண1, எண2 ஆலகயவற்ைற ைவததகொகாணட நாம எபபட எண3­ஐக கணடறிவத? 
இதற்கான கணதச சததரம எனன?

இர எணகளன சராசரி எனபத, அவற்ைறக கட்ட இரணடால் வகபபததான. அதாவத:

எண3 = (எண1 + எண2) / 2

அவவளவதான. நாம நமத நிரல் வழிமைறைய எழுதவிட்ேடாம. இேதா இபபட:

உளளட: எண1, எண2

1. எண1 எனற எணைணப ொபறுக
2. எண2 எனற எணைணப ொபறுக
3. இவவிர எணகைளயும கட்டக
4. வநத கட்டத ொதாைகைய இரணடால் வககக
5. கைடதத விைடைய எண3 எனச ேசமிகக
6. தைரயில் எண3 எனற விைடைய அசசடக

ொவளயட: எண3

இத ஒர ேநரடயான நிரல் வழிமைற. அதாவத, ஒனறுககப பறக இரணட, அதனபன மனறு 
என வரிைசயில் ொசல்வத. சல நிரல் வழிமைறகள அவவாறினறி கதததச ொசல்லம, தரமபச 
ொசல்லம (உதாரணமாக, 1, 2, 10 அல்லத, 1, 2, 3, 4, 3, 4, 3, 4, 5 எனபதேபால).

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

1.1.4. மாதரி நிரல் எழுதவத

ஒர மககயமான கடததைத எழுதவதற்கமனனால் மனததல் அைத எழுதப பாரககேறாம, 
அல்லத ஒர தணடக காகதததல் எழுதகேறாம அல்லவா? அதேபால "எழில்" ொமாழியில் இநத 

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 3


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

நிரைல எழுதவதற்கமனனால், மாதரி நிரல் ஒனைற எழுதப பாரததவிடேவாம.

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

         எண1 ொபறுக
   எண2 ொபறுக
   கட்டதொதாைக = எண1 + எண2
   எண3 = கட்டதொதாைக / 2
   எண3 அசசடக

இத ஒர மாதரி நிரல்தான. இதைன நாம "எழில்" இைணயததளததல் ைவதத இயககனால் 
விைட கைடககாத, பைழ(Error)தான கைடககம.

அதனால் தவறில்ைல. நம நிரல் எபபட இரககேவணடம எனறு புரிநதொகாணடவிட்ேடாம 
அல்லவா? அததான நம ேநாககம.

1.1.5. மழுைமயான நிரல் எழுதவத

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

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

உதாரணமாக, “எண1 ொபறுக” எனற வரி இபபட மாறும:

எண1 = 10

அடதத, “எண2 ொபறுக” எனற வரி, இதவம எளைமயானததான:

எண2 = 6

மனறாவதாக, கட்டதொதாைக கணககடவத. இநத வரி மாதரி நிரலல் உளளதேபாலேவ 
"எழில்" ொமாழியிலம இயங்கம:

கட்டதொதாைக = எண1 + எண2

நானகாவத வரியும இேதேபால்தான, மாதரி நிரலல் உளளத அபபடேய இங்ேகயும வரம:

எண3 = கட்டதொதாைக / 2

நிைறவாக, விைடைய அசசடம ஐநதாவத வரி இபபட மாறும:

பதபப "நங்கள தநத எணகளன சராசரி: ", எண3

அவவளவதான! வாழ்ததகள! நங்கள உங்களத மதலாவத "எழில்" நிரைல 
எழுதவிட்டரகள:

4 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


1 -வாங்க, நிரல் எழுதேவாம!

எண1 = 10
எண2 = 6
கட்டதொதாைக = எண1 + எண2
எண3 = கட்டதொதாைக / 2
பதபப "நங்கள தநத எணகளன சராசரி: ", எண3

1.1.6. நிரைலப பரிேசாதபபத

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

உங்கள இைணய உலாவி(Browser)­ஐத தறநத http://ezhillang.org எனற 
இைணயதளம (website) மகவரிககச ொசல்லங்கள. அங்ேக "எழில்  நிரல்  எழுத  இங்ேக  களக  
ொசயயவம(Click Here)" எனற இைணபபு காணபபடம. அதைன களக ொசயயுங்கள.

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

அடதத "நிரைல  இயககங்கள" எனற ொபாததாைன அழுததங்கள. இநத விைட தைரயில் 
ேதானறும:

நங்கள தநத எணகளன சராசரி: , 8

வாழ்ததகள! உங்கள நிரல் ொவற்றிகரமாக இயங்ககறத.

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

10, 6 எனற எணகளககப பதல், ேவறு சல எணகைள இட்டம நங்கள பாரககலாம. சராசரி 
எண எபேபாதம சரியாக வரேவணடம.

1.1.7. நிரைலச ேசமிததைவபபத

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

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

இதற்க நங்கள உங்கள கணனயில் உளள notepad ேபானற ஒர 'text editor'­ஐத 
தறககேவணடம. அதற்கள உங்கள நிரைலத தட்டசச ொசயயலாம, அல்லத ேமேல நாம "எழில்" 
இைணயத தளததல் தட்டசச ொசயதைதப பரதொயடதத  ஒட்டலாம (cut­paste).

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 5


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

பனனர, அதைனச ேசமிககமேபாத, இநத விவரங்கைளத தரேவணடம:

• ொபயர: average.n
• ேசமிககம இடம: உங்கள விரபபபபட
• Encoding: UTF­8

இதேபால் நங்கள எததைண ".n" ேகாபபுகைள ேவணடமானாலம ேசமிககலாம. பனனர 
ேவணடயேபாத அவற்ைற எடததப பயனபடததலாம.

பயிற்ச:

இதவைர நாம பாரதத அேத ஏழு படநிைலகைளப பனபற்றி, இநத வைககளல் நிரல்கள 
எழுதப பாரங்கள:

• ஓர எணணன வரககதைதக கணடறிதல்
• ஓர எழுததச சரததல் எததைன எழுததகள உளளன எனறு கணடறிதல்
• தரபபடம மனறு எணகளல் மிகச சறியத எத எனறு கணடறிதல்

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

ொதாடரநத எழுதங்கள. ொவற்றிகக வாழ்ததகள!

6 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


2 -கணன ொமனொபாரள நிரல் எழுதக கற்றுகொகாள

2 - கணன ொமனொபாரள நிரல் எழுதக கற்றுகொகாள


அைனவரககம வணககம.

தமிழில் கணன ொமனொபாரள நிரல் (Computer Software Program) எழுதக 
கற்றுகொகாளளேவணடம எனகற ஆலரவததடன இநத "எழில்" தளததகக வநதரககறரகள. 
உங்களகக எங்கள வாழ்ததகள!

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

ஆலங்கலததல் ‘கமபயட்டர’ எனபபடம கணன ஓர அற்புதமான சாதனம. ஆலனால், அதற்கச சய 
அறிவ எனறு எதவம கைடயாத. மனதரகளாகய நாம ொசால்வைதத தரமபச ொசயயும, 
அவவளவதான.

உங்கள வட்டல் ஒர நாயககட்ட இரபபதாக ைவததகொகாளளங்கள. அதனடம ‘உட்கார’ எனறு 
ொசானனால் அத உட்காரகறத, ‘நில்’ எனறு ொசானனால் அத நிற்கறத.

இங்ேக ‘உட்கார’, ‘நில்’ எனற ொசாற்கைள நாம ‘கட்டைள’ எனறு அைழககேறாம. நங்கள 
இடகற கட்டைளகக ஏற்ப அத ொசயல்படகறத. அவவளவதான.

கணனயும அபபடதான, நங்கள தரம கட்டைளகக ஏற்ப அத இயங்கம.

ஒேர   பரசைன,   ‘உட்கார’,   ‘நில்’   ேபானற   கட்டைளகள  அதற்கப  புரியாத.  ொதலங்க  ொதரிநத 
ஒரவரிடம  நங்கள  தமிைழத  தவிரததத  ொதலங்கல்  ேபசவதேபால, கணனககத  ொதரிநத   ொமாழியில் 
ேபசனால்தான அதற்கப புரியும!

கணனகக எனொனனன ொமாழிகள ொதரியும?

ஆலங்கலததல் இதற்க ஏராளமான ொமாழிகள உளளன. உலொகங்கம லட்சககணககாேனார இதைனப 
பயனபடததக கணனககக கட்டைளயிடகறாரகள, கணனயும அதனபட ொசயல்படகறத.

இநதக கட்டைளகளன ொதாகபபுதான, சாஃபட்ேவர பொராகராம, அல்லத, ொமனொபாரள நிரல்.

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

எனன ொசால்கறரகள? தமிழ் எனபேத ஒர ொமாழிதாேன, அபபடப பாரததால் "எழில்" எனபத 
இனொனார ொமாழியாகதாேன இரககேவணடம?

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

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

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 7


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

 
ைக கட்ட நிற்கபேபாகறத.

2.1 "எழில்" ொமாழிையக ொகாணட நாம எனனொவல்லாம


ொசயயலாம?
ஏராளமாகச ொசயயலாம. ொமாதததைதயும இங்ேக ொசால்வத சாததயமில்ைல, அவற்ைற நங்கேள 
பயனபடததத ொதரிநதொகாளவததான நனறாக இரககம. எனறாலம, ஒர சறிய பட்டயல் இங்ேக:

1.  நங்கள விரமபும விஷயங்கைளத தைரயில் அசசடலாம
2.  எளய, சககலான கணகககைளப ேபாடலாம
3.  தரகக அடபபைடயிலான (Logical) தரமானங்கைள எடககலாம
4.  படம வைரயலாம
5.  ஒேர ொசயைல நறு மைற, ஆலயிரம மைற, ேகாட மைற தரமபத தரமபச ொசயயலாம
6.  மககயமாக, இதனமலம கற்றுகொகாணட விஷயங்கைள அடபபைடயாக ைவதத, மற்ற 
கணன ொமாழிகள, இைதவிடப ொபரிய, பயனளளவற்ைறத ொதரிநதொகாளளலாம

2.2 எழில் அறிமகம மற்றும வரலாறு

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

வாரங்கள, "எழில்" உலகததனள ொசல்ேவாம. அத ஒர பரவசமான பயணம!

அதற்கமனனால், "எழில்" ொமாழிபற்றிய சல அடபபைட விஷயங்கைளத ொதரிநதொகாணடவிடவத 
நல்லத.

எழில் எனபத, தமிழில் உரவாககபபட்ட கணன நிரல் ொமாழி. மிகவம எளைமயானத, தறமலம 
(Open Source) அடபபைடயில் ொவளயிடபபடவத.

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

எழில் நிரல் ொமாழியில், தமிழ்ச ொசாற்களம, இலககணமம மிக எளைமயாக அைமககபபட்டளளத. 
அேதசமயம மற்ற நவன கணன நிரல் ொமாழிகளல் (ஆலங்கலம அடபபைடயிலானைவ) உளள 
எல்லா வசதகளம இதலம உணட.

பயனளள இநத எழில் கணன நிரல் ொமாழி, இலவசமாகேவ வழங்கபபடகறத. 2007 ம 
ஆலணடமதல் உரவாகவரம இநத ொமாழி, 2009 ம ஆலணட மைறபபட ொவளயானத.

எழில் ொமாழியில் நிரல் எழுதவதற்கான வழிமைறகள, கட்டததட்ட BASIC கணன 
ொமாழிையபேபாலேவ அைமநதரககம. நங்கள எழுதம நிரல்கள ஒனறபன ஒனறு எனற வரிைசயில் 
இயககபபடம. அல்லத, Functions எனபபடம ‘நிரல் பாக’ங்கைள நங்கள பயனபடததலாம.

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

8 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


2 -கணன ொமனொபாரள நிரல் எழுதக கற்றுகொகாள

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

2.3 எழில் ொமாழியின ேநாககங்கள :

1. கல்வி : ஒனறாம வகபபு மதல் 12 ம வகபபுவைர பயிலம மாணவரகள இதைனப 
பயனபடதத அடபபைடக கணனயியல், நிரல் எழுததல்பற்றி அறியலாம
2. இயல்பானத : எழில் ொமாழியின இலககணம, தமிழின எழுதத இலககணதைத ஒட்டேய 
அைமககபபட்டளளத. ஆலகேவ, தமிழில் ேபசகற, எழுதகற எவரம இதைனச சலபமாக 
அறிநதொகாணட பனபற்றலாம

இதல் உளள வசதகள:

1. கணதம மற்றம தரககரதயிலான கறியடகள
2. மநநற்ைறமபதககம ேமற்பட்ட நிரல் பாகங்கள இதல் ஏற்ொகனேவ ேசரககபபட்டளளன
3. இைவதவிர, நங்கேள புதய நிரல் பாகங்கைள எழுதச ேசரககலாம
4. Notepad++ மற்றும Emacs பயனபடததகறவரகள, தங்களத நிரல்களகக ஏற்ற வணணக 
கறியடகைள அைமததகொகாளளம வசத எழில் ொமாழியில் உணட

2.4 கறிசொசாற்கள:

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

இபேபாைதகக, எழில் ொமாழியில் உளள மககயமான கறிச ொசாற்களன பட்டயைலயும, அதற்க 
இைணயான ஆலங்கலச ொசாற்கைளயும இங்ேக பாரததவிடேவாம:

 ஆலக : for
  நிறுதத : break
 ொதாடர : continue
 பனொகாட : return
 ஆலனால் : if
 இல்ைலஆலனால் : elseif
 இல்ைல : else
 ேதரநொதட : select
 ேதரவ : case
 ஏேதனல் : otherwise
 வைர: while
 ொசய : do
 மடேயனல் : until
 பதபப : print
 நிரல்பாகம  : function
 மட : end

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 9


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

10 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


3 -எழில் பதவிறககம மற்றும நிறுவ (Installing Ezhil)

3 - எழில் பதவிறககம மற்றும நிறுவ (Installing Ezhil)


இபேபாத, "எழில்" ொமாழிையக ொகாணட தமிழிேலேய கணன நிரல், அதாவத Software 
Program எபபட எழுதவத எனறு கற்றுகொகாளேவாம.

அதற்கமனனால், நங்கள ஏற்ொகனேவ "எழில்" ொமாழிையப பயனபடததவதற்கான ொமனொபாரைள 
(Software) இைணயததலரநத பதவிறககம ொசயதவிட்டரகள (Downloaded), உங்கள கணனயில் 
அைத நிறுவிவிட்டரகள (Installed) என நமபுகேறன. ஒரேவைள நங்கள அைதச ொசயயவில்ைல 
எனறால், உடனடயாக http://ezhillang.org/ எனற இைணய தளததககச ொசல்லங்கள, அங்ேக 
தரபபட்டளள உதவிக கறிபபுகளன அடபபைடயில் உங்கள கணனைய "எழில்" மயமாககங்கள!

அடதத, நாம நிரல் எழுதத ொதாடங்கேவணடம. ஆலனால், எங்ேக?

இதற்க நாம Interpreter எனற பகதையத ொதாடங்கேவணடம. அதாவத, உங்களத நிரைல 
வாசதத, அைதச ொசயல்படதத விைடகைளத தைரயில் காட்டகற பகத. நம வசதககாக, இதைன 
"நிரல் ேமைச" என அைழபேபாம!

உங்களத எழில் கணனத தைரயில் "ez" எனறு தட்டசச ொசயயுங்கள. விைசபபலைகயில் உளள 
"Enter" விைசையத தட்டங்கள.

உடேன, உங்கள தைரயில் Interpreter, அதாவத நிரல் ேமைச ேதானறும. இதல்தான நாம 
நமமைடய நிரல்கைள எழுதபேபாகேறாம***

3.1 வணககம தமிழகம!


இபேபாத, ஒர மிக எளய நிரல் எழுதேவாம. இதன ொபயர, ‘வணககம’.

அதாவத, உங்கள கணன உங்களகக வணககம ொசால்லபேபாகறத. அதற்க நங்கள 
பறபபககேவணடய கட்டைள இத:

பதபப "வணககம தமிழகம!"

இநதக கட்டைளைய நங்கள தட்டசச ொசயத, "Enter" எனற விைசையத தட்டங்கள.

மறுவிநாட, உங்கள தைரயில் "வணககம தமிழகம!" எனற எழுததகள ேதானறும.

வாழ்ததகள! நங்கள உங்களைடய மதல் நிரைல எழுதவிட்டரகள!

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

அதற்கமனனால், நாம ொதாடங்கய நிரல் ேமைசைய எபபட மடைவபபத எனறு 
ொதரிநதொகாளளேவணடம. அதற்க நங்கள பயனபடததேவணடய கட்டைளச ொசால் exit()

இைதத தட்டசச ொசயத "Enter" ொபாததாைன அழுததயதம, நிரல் ேமைசத தைர காணாமல் 
ேபாயவிடம.

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 11


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

பறக, நமகக ேவணடயேபாத ez எனறு தட்டசச ொசயத மணடம "Enter" ொபாததாைன 
அழுததனால் ேபாதம, மணடம நிரல் ேமைச ேதானறும, அடதத நிரைல எழுதத 
ொதாடங்கலாம.இபபட ஒவொவாரமைறயும நிரல் ேமைசையத ொதாடங்க, மணடம மடைவபபத 
சரமமாக இரநதால், 

3.2 இைணயதைத பயனபடததம எழில்


இனேனார எளய வழி இரககறத, நங்கள வழககமாக இைணயதைத அணகப பயனபடததம 
Internet Browser ல் ‘எழில்’ ொமாழி நிரல்கைள எழுதலாம. இேதா இபபட:

1. மதலல், மனபுேபாலேவ நிரல் ேமைசையத ொதாடங்ககொகாளளங்கள

2. அதல் இபபட தட்டசச ொசயயுங்கள:

$ python ezhil/EZWeb.py

3. சல விநாடகள கழிதத, உங்கள தைரயில் ‘Server Starts ­ localhost:8080’ எனற 
வாசகம ேதானறும

4. இபேபாத, உங்கள கணனயில் ’எழில்’ ொமாழி நிறுவபபட்டரககம இடததகக (Folder) 
ொசல்லங்கள, அங்ேக ‘Web' எனற பகதையத தறங்கள

5. அதற்கள ‘ezhil_on_the_web.html' எனற ேகாபபு இரககம, அதைனத தறங்கள

6. அவவளவதான, இனேமல் நங்கள உங்கள Internet Browser ன தைரயிேலேய ‘எழில்’ 
நிரல்கைள எழுதலாம, இயககலாம, விைடையப பாரககலாம!

ஒர விஷயம, Browser மலம இயங்கம இநத “எழில்” வடவததல் சல கறிபபட்ட வசதகள 
இல்ைல, உதாரணமாக, கணனையப பயனபடததகறவரிடம ஓர எணைணேயா, எழுதைதேயா 
ேகாரிப ொபறமடயாத, படம வைரயமடயாத.

ஆலகேவ, இநதப புததகததல் உளள சல நிரல்கைள நங்கள அதல் இயககமடயாமல் ேபாகலாம, 
அபேபாத, நாம மனபு பாரததளள நிரல் ேமைசையப பயனபடததகொகாளளங்கள.

3.3 எழில் - ைபததான வழியில்


ைபததான வழியில் எழில் பதவிறககம மற்றும நிறுவ

$ pip install ezhil

$ python

பறக,

>>> import ezhil
      >>> ezhil.start()
 
கட்டைளயிட்டால் நங்கள ைபததான வழியில் எழில் ொசயல்படததலாம.

12 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


3 -எழில் பதவிறககம மற்றும நிறுவ (Installing Ezhil)

$ python 
Python 2.7.3 (default, Feb 27 2014, 20:00:17) 
[GCC 4.6.3] on linux2 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import ezhil 
>>> ezhil.start() 
எழில்  ­ ஒர  தமிழ்  நிரலாகக  ொமாழி  (Tue Jul  2 20:22:25 EDT 2013) 
Ezhil : A Tamil Programming Language ­ version 0.76, (C) 2007­2013 
Type "help", "copyright", "credits" or "license" for more information. 
எழில்  1>> 

3.4 சல எளய எழில் கணகககள

இபேபாத, "எழில்" ொமாழிையப பயனபடததச சல எளய கணகககைளப ேபாடேவாம.

மதலல், நாம ஏற்ொகனேவ பாரதத மைறபபட உங்கள நிரல் ேமைசையத தறநதொகாளளங்கள. 
அதல் கேழ உளள வரிையத தட்டசச ொசயத "Enter" ொபாததாைன அழுததங்கள

பதபப 10+15

இபேபாத உங்கள தைரயில் 25 எனற எண ேதானறும. அதாவத, 10, 15 ஆலகயவற்றின கட்டத 
ொதாைக. இேதேபால், நாம கழிததல், ொபரககல், வகததல் ஆலகயவற்ைறயும ொசயயலாம. இபபட:

பதபப 30­5
பதபப 5*5
பதபப 25/5

இனனம ொகாஞ்சம ொபரிய கணகக, இரபதைதநதன அடகக இரணட, அதாவத 25 * 25 எபபடக 
கணககடவரகள? இேதா, இபபடதான:

பதபப 25^2

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

பதபப (((5+(25^2))/6)^2)

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

உங்களைடய கணகக வகபபல் "ைப" எனற மககயமான எணைணபபற்றிப படததரபபரகள. 
3.14 எனறு ொதாடங்கம அநதப பயனளள எணைண உங்களத "எழில்" கணகககளல் 
பயனபடததேவணடமானால், இபபட எழுதேவணடம:

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 13


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

பதபப  pi()

இேதேபால், Sin, Cos, Tan, Log ேபானறவற்ைறயும "எழில்" கணகககளல் ொகாணடவரலாம. 
இபபட:

radian = pi()/180
பதபப sin(30*radian)
பதபப tan(60*radian)
பதபப log(100*radian)

ஆலனால், இைவொயல்லாம நாேம தட்டசச ொசயகற கணகககள. ொகாஞ்சம விததயாசமாக, நாம 
ேகட்கற கணகககைளக கணனேய ேபாட்டப பதல் தரமபட மாற்றமடயாதா?

நிசசயமாகச ொசயயலாம, அததான நமமைடய அடதத பண!

இதவைர, நாம தட்டசச ொசயத விஷயங்கைள "எழில்" ொமாழி அபபடேய 
நிைறேவற்றிகொகாணடரநதத. இபேபாத, அத ேகட்கம ேகளவிகக நாம பதல் 
ொசால்லபேபாகேறாம.

இதற்க நாம "உளளட" எனற கட்டைளையப பயனபடததேவணடம. இதேபால:

மதல்எண = உளளட("ஓர எணைணச ொசால்லங்கள: ")

இநதக கட்டைளைய நிைறேவற்றினால், உங்கள கணனத தைரயில் "ஓர எணைணச ொசால்லங்கள: 
" எனற எழுததகள ேதானறும. நங்கள ஏதாவத ஓர எணைணத தட்டசச ொசயத "Enter" 
ொபாததாைன அழுததேவணடம.

உடேன, நங்கள தட்டசச ொசயத எண கணனயால் ொபறபபட்ட, "மதல்எண" எனற ொபயரில் 
ேசமிககபபட்டவிடம.

இபேபாத, இரணடாவதாக இனேனார எணைணயும உளளட ொசயேவாம. 

இபபட:

இரணடாமஎண = உளளட("இனேனார எணைணச ொசால்லங்கள: ")

இநதக கட்டைள நிைறேவறியதம, நங்கள இனேனார எணைணத தட்டசச ொசயயேவணடம. அத 
"இரணடாமஎண" எனற ொபயரில் ேசமிககபபட்டவிடம.

இபேபாத, இநத இரணட எணகைளயும கட்ட, "மனறாமஎண" எனற ொபயரில் ேசமிபேபாம. இத 
உங்களகக ஏற்ொகனேவ நனறாகத ொதரிநத விஷயமதாேன:

மனறாமஎண = மதல்எண + இரணடாமஎண

நிைறவாக, இநத விைடைய அசசடேவாம, இேதா இபபட:

14 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


3 -எழில் பதவிறககம மற்றும நிறுவ (Installing Ezhil)

பதபப "நங்கள தநத எணகளன கட்டத ொதாைக: " மனறாமஎண

அவவளவதான. இபேபாத, இநத நிரைல இயககப பாரபேபாம.

See : simple_add.n
ஓர எணைணச ொசால்லங்கள: 6
இனேனார எணைணச ொசால்லங்கள: 7
நங்கள தநத எணகளன கட்டத ொதாைக: , 13
ஓர எணைணச ொசால்லங்கள: 10
இனேனார எணைணச ொசால்லங்கள: 5
நங்கள தநத எணகளன கட்டத ொதாைக: 15

அரைம! "எழில்" ொமாழிையப பயனபடதத ஓர உபேயாகமான நிரல் எழுதவிட்டரகள!

இபேபாத, உங்களகக ஒர பயிற்ச.

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

இதவைர நங்கள கற்றுகொகாணட விஷயங்கைள ைவதத அதற்க ஒர நிரல் எழுதங்கள பாரககலாம!

விைட:

காயகறி = உளளட("காயகறி வாங்கய ொதாைக எவவளவ? ")
பழம = உளளட("பழம வாங்கய ொதாைக எவவளவ? ")
ொராட்ட = உளளட("ொராட்ட வாங்கய ொதாைக எவவளவ? ")

ொமாதததொதாைக = காயகறி + பழம + ொராட்ட

பதபப "நங்கள தரேவணடய ரபாய " ொமாதததொதாைக

தரமொதாைக = உளளட("நங்கள தரம ொதாைக எவவளவ? ")

மததொதாைக = தரமொதாைக ­ ொமாதததொதாைக

பதபப "நனறி. மத சல்லைறையப ொபற்றுகொகாளளங்கள: ரபாய " மததொதாைக

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 15


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

4 - சரங்கள மற்றும எழுததகள (Strings)


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

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

இைவ அைனதைதயும நாம "சரங்கள" எனறு அைழககலாம. ஒர சரம எனபத தன எழுததாகேவா, 
வாரதைதயாகேவா, வாககயமாகேவா இரககலாம.

உதாரணமாக, "ந" எனபத ஒர சரம, "நர" எனபத இனொனார சரம, "நர தரகேறன" எனபத 
இனொனார சரம. இபபட ொசால்லகொகாணேட ேபாகலாம.

4.1 சரம நளம (String length)


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

அ = உளளட("உங்களககப படதத ஏதாவத ஓர எழுததச சரதைதத தாரங்கள: ")

பதபப "நங்கள தநத சரம: " அ
பதபப "அநதச சரததன நளம: " நளம(அ)

இநத நிரைல ேமேலாட்டமாகப படததாேல உங்களகக நனறாகப புரியும. நங்கள தரபேபாகம 
கணனைய "எழில்" ொமாழி வாங்க, "அ" எனற ொபயரில் ேசமிககறத, பனனர அதன நளதைதக 
கணககட்ட அசசடகறத. (See demo program: string_demo.n )

இபேபாத, நாம எழுதய நிரைல இயககப பாரபேபாம:

உங்களககப படதத ஏதாவத ஓர எழுததச சரதைதத தாரங்கள: என ொபயர எழில்
நங்கள தநத சரம: என ொபயர எழில்
அநதச சரததன நளம: 10

4.2 சரம இைணவதற்க (String length)

அடதத, இரணட எழுததச சரங்கைள ஒட்டைவபபத எபபட எனறு பாரககலாம.

இதற்க, நங்கள எணகைளக கட்டவதற்கப பயனபடததய "+" எனற கறியட்ைடப 
பயனபடததலாம. இேதா இபபட:

16 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


4 - சரங்கள மற்றும எழுததகள (Strings)

அ = "தமிழ்"
ஆல = "அமத"
இ = அ + ஆல

பதபப அ
பதபப ஆல
பதபப இ

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

இபேபாத, உங்களகக ஒர பயிற்ச, "தமிழ்அமத" எனற ொசால் பாரபபதற்க நனறாக இல்ைலேய, 
இநத நிரைலக ொகாஞ்சம மாற்றி, இர ொசாற்களககம நடவில் ஓர இைடொவள விட்ட "தமிழ் 
அமத" எனறு அசசடமபட ொசயயுங்கள, பாரககலாம!

விைட:

அ = "தமிழ்"
ஆல = " "
இ = "அமத"
ஈ = அ + ஆல + இ

பதபப ஈ

அடதத பயிற்ச. இதவைர நங்கள கற்றுகொகாணட விஷயங்கைளொயல்லாம ைவதத, கேழ 
தரபபட்டளள ேதைவகேகற்ப ஒர நிரல் எழுதங்கள:

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

விைட:

மதல்சரம = உளளட("ஒர வாககயம ொசால்லங்கள: ")
இரணடாமசரம = உளளட("இனொனார வாககயம ொசால்லங்கள: ")

மனறாமசரம = மதல்சரம + இரணடாமசரம

சரநளம = நளம(மனறாமசரம)

பதபப "நங்கள தநத இர சரங்களல் உளள ொமாதத எழுததகள " சரநளம

அடதத, ஒர ஜாலயான விைளயாட்ட, ஒர சரததககள நாம விரமபுகற எழுததகள எங்ேக 
இரககனறன எனறு ொகாஞ்சம ேதடக கணடபடககலாமா?

இதற்க, "சரம_கணடபட" எனற கட்டைள வாரதைதையப பயனபடததேவணடம. இேதா இபபட:

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி | 17


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

மககனகள = "மா, பலா, வாைழ"

பதபப "மககனகள : " மககனகள
பதபப சரம_கணடபட(மககனகள, "வாைழ")
பதபப சரம_கணடபட(மககனகள, "ேதங்காய")

மா, பலா, வாைழ எனற மககனகளல், வாைழ உளளத, ஆலகேவ, வாைழையத ேதடமேபாத 
பஜஜயததகக ேமற்பட்ட ஓர எண விைடயாகக கைடககம.

ஆலனால், அநத மககனகளன பட்டயலல் ேதங்காய இல்ைல. ஆலகேவ, அதைனத ேதடமேபாத 
பஜஜயதைதவிடக கைறவான (­1) விைட உங்களககக கைடககம. இதேவ "சரம_கணடபட" 
கட்டைளயின பயன.

4.3 ேதடல், சரங்கைள மாற்றவம (Search Strings)

அடதத, மககனகைளக ொகாஞ்சம மாற்றம ொசயேவாமா? எனகக வாைழ படககாத, அதற்கப 
பதலாகக ொகாயயாைவச ேசரதத விைளயாடேவாம. இேதா இபபட:

மககனகள = "மா, பலா, வாைழ"

பதபப "பைழய மககனகள : " மககனகள

மககனகள = சரம_இடமாற்று(மககனகள, "வாைழ", "ொகாயயா")

பதபப "புதய மககனகள : " மககனகள

இங்ேக "சரம_இடமாற்று" எனற கட்டைள "வாைழ"ையத தகக எறிநதவிட்ட, அநத இடததல் 
"ொகாயயா" ைவ உளேள நுைழததவிட்டத. இதைன இயககனால், கழ்ககாணம விைட கைடககம:

பைழய மககனகள : மா, பலா, வாைழ
புதய மககனகள : மா, பலா, ொகாயயா

இபபட ஒவொவார பழமாகப பாரததப பாரதத மாற்றிகொகாணடரபபத சரமம. இைதேய இனனம 
சலபமாகச ொசயய ஏேதனம வழி உணடா?

அதற்க நங்கள "பட்டயல்" எனற கட்டைளையப பயனபடததேவணடம.

4.4 பட்டயல்கள பயனபடதத , வரிைசபபடதத ( Using Lists, Sorting )


வகபபல் உங்கள ஆலசரியர ொசால்லம விஷயங்கைள ஒனறனகழ் ஒனறாகப பட்டயல் ேபாடகறரகள 
அல்லவா? அதேபால, பழங்கைள வரிைசயாக அடககைவககப பட்டயைலப பயனபடததலாம.

மதலல், ஒர காலப பட்டயைலத தயாரிபேபாம. இேதா, இபபட:

பழங்கள = பட்டயல்()

18 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


4 - சரங்கள மற்றும எழுததகள (Strings)

அடதத, இநதப பட்டயலல் பழங்கைளச ேசரபேபாம, அதற்க "பனஇைண" எனற கட்டைளையப 
பயனபடததேவணடம:

பனஇைண(பழங்கள, "மா")
பனஇைண(பழங்கள, "பலா")
பனஇைண(பழங்கள, "வாைழ")
பனஇைண(பழங்கள, "ொகாயயா")
பனஇைண(பழங்கள, "ஆலபபள")

ஆலக, இபேபாத நம பட்டயலல் ஐநத பழங்கள உளளன. அவற்றுககத தனததனேய எணகள 
தரேவாமா?

ஒர விஷயம, பட்டயலன எணகள 1, 2, 3 என அைமயாத, பஜஜயததலரநத ொதாடங்கம, 
அதாவத, 0, 1, 2... இபபட.

0 மா
1 பலா
2 வாைழ
3 ொகாயயா
4 ஆலபபள

இபேபாத, நாம ஒர கறிபபட்ட பழதைத அசசடேவணடொமனறால், "எட" எனற கட்டைளையப 
பயனபடததேவணடம. உதாரணமாக, இநத வரிையப பாரங்கள:

*************************************
எட(பழங்கள, 1)
*************************************

இநத நிரல் இயங்கனால், "பலா" எனறு அசசடம. காரணம, அநதப பட்டயலல் 1 எனற 
எணணகக ேநராக அநதப பழமதான பதவாகயுளளத.

அடததபடயாக, இநதப பட்டயலல் உளள பழங்கைள அகர வரிைசபபட அடககேவாமா? அதற்க 
நாம "வரிைசபபடதத" எனற கட்டைளையப பயனபடததேவணடம. இேதா, இபபட:

வரிைசபபடதத(பழங்கள)

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

இபேபாத, மனபு நாம இயககய பைழய கட்டைளைய மணடம இயககேவாம:

எட(பழங்கள, 1)

ஆலனால் விைட, பலா இல்ைல, ொகாயயா! காரணம, நாம பழங்கைள அகர வரிைசபபட 
அடககயததான!

இபேபாத, உங்களகக ஒர பயிற்ச, மனறு நணபரகளைடய ொபயைரப பட்டயலல் ேசரதத, அகர 

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி | 19


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

வரிைசபபட அவரகள ஒவொவாரவரககம வணககம ொசால்ல அசசடங்கள. உதாரணமாக, வணககம 
கேணஷ, வணககம ரேமஷ... இபபட.

விைட:

நணபரகள = பட்டயல்()

பனஇைண(நணபரகள, "கேணஷ")
பனஇைண(நணபரகள, "ரேமஷ")
பனஇைண(நணபரகள, "மேகஷ")

வரிைசபபடதத(நணபரகள)

அ = "வணககம "

பதபப அ + எட(நணபரகள, 0)
பதபப அ + எட(நணபரகள, 1)
பதபப அ + எட(நணபரகள, 2)

20 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


5 -நிபநதைன (Conditionals)

5 - நிபநதைன (Conditionals)
இதவைர, நாம எழுதய நிரல் வைககள அைனததம, ேநர ேகாட்டல் ொசல்பைவ. அதாவத, ஒர 
வரிககபபறக அடதத வரி, பனனர இனொனார வரி... இபபட.

அவவாறில்லாமல், சல காரணகளகேகற்ப ஒேர நிரைல ொவவேவறுவிதமாக மாறி இயங்கச ொசயய  
மடயுமா?

தாராளமாகச ொசயயலாம, இதற்க நாம தரககக கறியடகைளப பயனபடததேவணடம.

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

• வட்டபபாடம எழுத மடததவிட்டாயா?
• ஆலம எனல் ... விைளயாடலாம
• இல்ைல எனல் ... விைளயாடககடாத

5.1 ஆலம இல்ைல எனல்

இேத விஷயதைத "எழில்" ொமாழியில் ஒர நிரலாக எழுதப பாரபேபாமா? இேதா, இபபட:

அ = உளளட("வட்டபபாடம எழுதவிட்டாயா? ")

@(அ == "ஆலமாம") ஆலனால்
பதபப "விைளயாடச ொசல்லலாம"
இல்ைல
பதபப "வட்டபபாடம எழுதயபறகதான விைளயாடேவணடம!"
மட

இங்ேக நாம பயனபடததயிரககம தரககக கறியட, இபபட அைமகறத:

1. மதலல் "@" எனற சறபபு எழுதத
2. அடதத, அைடபபுககறிககள நாம ஒபபடவிரமபும விஷயம (அ = "ஆலமாம")
3. அடதத, "ஆலனால்" எனகற ொசால்
4. அடதத வரியில், அநத ஒபபட உணைம எனல், நாம ொசயய விரமபும ொசயல், இங்ேக 
நாம ஒனறு அல்லத அதற்க ேமற்பட்ட ொசயல்கைள ொவவேவறு வரிகளல் தரலாம
5. அடதத "இல்ைல" எனகற ொசால்
6. அடதத வரியில், அநத ஒபபட ொபாய எனல், நாம ொசயய விரமபும ொசயல், இங்ேகயும 
நாம ஒனறு அல்லத அதற்க ேமற்பட்ட ொசயல்கைள ொவவேவறு வரிகளல் தரலாம
7. நிைறவாக "மட" எனகற ொசால், நாம ொசயயும தரககரதயிலான பணகைள நிைறவ 
ொசயகறத

இைதப புரிநதொகாளவதற்க, இனேனார எளய உதாரணம பாரபேபாம: (see: program ­ 
age.n )

வயத = உளளட("உங்கள வயத எனன? ")

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 21


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

@(வயத > 18) ஆலனால்
பதபப "நங்கள ேதரதலல் வாககளககலாம"
பதபப "நங்கள வாகனம ஓட்டலாம"
இல்ைல
பதபப "நங்கள ேதரதலல் வாககளகக இயலாத"
பதபப "நங்கள வாகனம ஓட்ட இயலாத"
மட

இைதேய ொகாஞ்சம விரிவபடதத, ஒர சறிய விநாட வினா நிகழ்சச நடததேவாமா?

பதபப "இநதயாவின தைலநகரம எத?"
பதபப "அ. ொசனைன"
பதபப "ஆல. மதைர"
பதபப "இ. ொடல்ல"
பதபப "ஈ. மமைப"

சரியானவிைட = "இ"
உங்களவிைட = உளளட("உங்களைடய பதல் எனன? ")

@(சரியானவிைட == உங்களவிைட) ஆலனால்
பதபப "வாழ்ததகள. உங்களகக 10 மதபொபணகள!"
இல்ைல
பதபப "தவறான விைட. மணடம மயற்ச ொசயயுங்கள!"
மட

சல ேநரங்களல், ஒர தரகக ஒபபட்டககள இனொனார தரகக ஒபபடம வரலாம, அபேபாத @, 
ஆலனால், இல்ைல, மட ஆலகய நானக ொசாற்கைளயும மழுைமயாக, அடததடதத வரம ஒேர 
ொதாகபபாக (Block) ஒனறுககள இனொனானைற அைமததப பயனபடததேவணடம. கட்டததட்ட 
உங்கள கணதப பாடததல் வரம அைடபபுககறிகைளபேபால எனறு ைவததகொகாளளங்கேளன!

உதாரணமாக, இநத நிரைலப பாரங்கள:

அ = உளளட("ஓர எணைணச ொசால்லங்கள ")
ஆல = உளளட("இனேனார எணைணச ொசால்லங்கள ")

@(அ == ஆல) ஆலனால்
பதபப "இர எணகளம சமம!"
இல்ைல
@(அ > ஆல) ஆலனால்
பதபப "மதல் எண ொபரியத!"
இல்ைல
பதபப "இரணடாம எண ொபரியத!"
மட
மட

இதவைர நாம பாரதத நிரல்கேளாட ஒபபடைகயில், இத ொகாஞ்சம ொபரியதாக உளளத. பனனர 
இனொனாரநாள ேவொறாரவேரா (அல்லத நாேமகட) இதைனப படததால் நமககப புரியுேமா, 
புரியாேதா!

22 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


5 -நிபநதைன (Conditionals)

ஆலகேவ, நிரல் எழுதமேபாேத, அதற்கான விளககங்கைளயும ஆலங்காங்ேக எழுதவிடவத நல்லத. 
இதற்க நங்கள "##" எனற சனனதைதப பயனபடததேவணடம. இேதா இபபட:

## இநத நிரைல எழுதயவர: சநதரேசகரன

## மதல் எணைண உளளடதல்

அ = உளளட("ஓர எணைணச ொசால்லங்கள ")

## இரணடாவத எணைண உளளடதல்

ஆல = உளளட("இனேனார எணைணச ொசால்லங்கள ")

## உளளட்டபபட்ட இர எணகளம சமமா எனறு ஒபபட்டப பாரததல்

@(அ == ஆல) ஆலனால்
பதபப "இர எணகளம சமம!"
இல்ைல

## அவற்றில் ஏேதனம ஒனறு ொபரியதா எனறு ஒபபட்டப பாரததல்

@(அ > ஆல) ஆலனால்
பதபப "மதல் எண ொபரியத!"
இல்ைல
பதபப "இரணடாம எண ொபரியத!"
மட
மட

5.2 பயிற்ச

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

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

விைட:

## இநத நிரைல எழுதயவர: கவிதா

## கழைம உளளடபபடகறத

கழைம = உளளட("இனறு எனன கழைம?")

## இத சனககழைமயா?

@(கழைம == "சன") ஆலனால்

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 23


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

பதபப "மகழ்சச, விடமைற நாைள அனபவியுங்கள!"
இல்ைல
## இத ஞாயிற்றுககழைமயா?

@(கழைம == "ஞாயிறு") ஆலனால்
பதபப "மகழ்சச, விடமைற நாைள அனபவியுங்கள!"
இல்ைல
பதபப "நனறி, இநத நாள இனய நாளாகட்டம!"
மட
மட

24 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


6 - மடககசொசயல் மற்றும வாககயம (Loops and more statements)

6 - மடககசொசயல் மற்றும வாககயம (Loops and more


statements)
கணனயின மிகப ொபரிய பலங்களல் ஒனறு, சல ொசயல்கைளத தரமபத தரமபச ொசயவத.

ஆலங்கலததல்  இதைன  Loop எனபாரகள. தமிழில் ’ வைளயம’  எனறு  ொசால்லலாம. அதாவத, ஒர 


வைளயததனமத ஊரநத ொசல்லம எறுமைபப ேபால், சற்றிச சற்றி வரவத.

ஆலனால்,  அபபட  நிரநதரமாகச  சற்றிகொகாணேட   இரககமடயாதல்லவா?  ஒரகட்டததல்  அதலரநத 


ொவளேய வரேவணடம. அதற்க ஒர நிபநதைன(Condition)ையத தரேவணடம.

6.1 வைர கறிசொசால் (While statement)


ஓர உதாரணதேதாட பாரபேபாம. எழில் ொமாழியில் ‘வைர’ எனற கறிசொசால்ைலப பயனபடதத 
(ஆலங்கலததல் "While") ஓர எளய நிரல் எழுதேவாம.

அ = 0

@(அ < 5) வைர

பதபப "வணககம!"
அ = அ + 1

மட

இநத நிரைல வரி வரியாகப படததப புரிநதொகாளேவாம:

1. மதலல் "அ" எனற மாறியில் 0 எனற எணைணச ேசமிககேறாம
2. அடதத, அநத "அ" எனற மாறியில் உளள எண ஐநைதவிடக கைறவா எனறு 
பாரககேறாம (ஆலம!)
3. ஆலம எனல், நாம இரணட ேவைலகைளச ொசயகேறாம:

4. தைரயில் வணககம எனறு அசசடகேறாம
5. "அ" எனற மாறியுடன ஒனைறக கட்டகேறாம. அதாவத அ = 0 + 1 = 1

6. மறுபட, "அ" எனற மாறியில் உளள எண ஐநைதவிடக கைறவா எனறு பாரககேறாம 
(ஆலம!)
7. மறுபட, தைரயில் "வணககம" எனறு அசசடகேறாம, "அ" எனற எணணடன ஒனைறக 
கட்டகேறாம அ = 1 + 1 = 2
8. இபபடேய 6, 7 இரணைடயும தரமபத தரமப ொசயகேறாம, "அ" எனற எணணல் 3, 
4, 5 எனற எணகள பதவாகனறன
9. இபேபாத "அ" எனற மாறியில் பதவாகயிரககம எண ஐநைதவிடக கைறவாக இல்ைல, 
ஆலகேவ நிரைல அததடன நிைறவ ொசயதவிடகேறாம

இபேபாத  கணககப  ேபாட்டச  ொசால்லங்கள,   "வணககம"  எனற   ொசால்  எததைனமைற 


அசசாகயிரககறத?

ஐநத மைற, இல்ைலயா?

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 25


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

அததான  "வைர"  எனற   கறிசொசால்லன  ேவைல.  நாம  கறிபபடம  நிபநதைன  (அ  <   5) 
உணைமயாக உளளவைர, அேத ேவைலையத தரமபத தரமபச ொசயதொகாணடரககம.

கட்டததட்ட   இேதேபால்,   "ொசய",   "மடேயனல்"  எனற   இரணட  கறிசொசாற்கள  இரககனறன. 


ஆலங்கலததல் இவற்ைற "Do Until Statement" எனறு அைழபபாரகள.

இதற்க ஓர உதாரணம இேதா:

அ = 0

ொசய

பதபப "வணககம!"
அ = அ + 1

மடேயனல் @(அ < 5)

இநத   நிரலம  மநைதய   நிரைலபேபாலேவதான  உளளத.  ஆலனால்,  இதைன   எழுத  இயககப 


பாரததால்  ஒர  மிகப  ொபரிய   விததயாசம  ொதரியவரம,  இங்ேக  "வணககம"  எனற   ொசால்  ஐநத 
மைற அல்ல, ஆலறு மைற அசசாகம.

ஏன ொதரியுமா?

"வைர"  எனற   கறிசொசால்ைலப  பயனபடததமேபாத,  உங்கள  கணன  "அ  <   5"  எனற 
நிபநதைனைய   மதலல்  பரிேசாதததவிட்ட,  அதனபறகதான  நாம  ொசால்வைத   அசசடம.  ஆலகேவ, 
அ = 5 எனறு ஆலனதம, உடனடயாக அசசடவைத நிறுததவிடம.

ஆலனால்  "ொசய", "மடேயனல்"  ஆலகய   கறிசொசாற்கள  அபபடயல்ல,  இவற்ைறப  பயனபடததனால் 


உங்கள  கணன  மதலல்  அசசட்டவிட்ட,  அதனபறகதான  "அ  <   5"  எனற   நிபநதைனையப 
பரிேசாதககம.  ஆலகேவ,  அ  =   5  எனறு  ஆலனபறகம,  கடதலாக   இனொனாரமைற  (அதாவத, 
6 வத மைறயாக) "வணககம" எனறு அசசட்டவிட்டதான நிற்கம.

இதனால், நங்கள நிரல் எழுதமேபாத எபேபாத  "வைர" பயனபடததேவணடம, எபேபாத  "ொசய", 


"மடேயனல்"  கட்டணையப  பயனபடததேவணடம  எனறு  ேயாசததத  தரமானககேவணடம. 
தவறுகைளத தவிரககேவணடம.

இபேபாத, உங்களகக ஒர பயிற்ச:

• தைரயில் ஓர எணைணக ேகட்கேவணடம
• அநத எண ஐமபதாகேவா, அல்லத அைதவிடக கைறவான ஓர எணணாகேவா 
இரநதால், அதற்கப பதல் இனேனார எணைணக ேகட்கேவணடம
• ஐமபைதவிடப ொபரிய ஓர எண வரமவைர ொதாடரநத ேகட்டகொகாணேட 
இரககேவணடம

விைட:

அ = உளளட ("ஏதாவத ஓர எணைணத தாரங்கள ")

26 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


6 - மடககசொசயல் மற்றும வாககயம (Loops and more statements)

@(அ <= 50) வைர

அ = உளளட("இநத எண ேவணடாம. இனேனார எணைணத தாரங்கள ")

மட

பதபப "நனறி!"

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


இதைன Case Statement எனறு அைழபபாரகள.

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

6.2 ேதரநொதட, நிறுதத, ொதாடர - கறிசொசால் (Switch-Case,


Break, Continue, statement)

ொபயர = உளளட ("உங்கள ொபயர எனன? ")
பாலனம = உளளட ("நங்கள ஆலணா? ொபணணா? ")

@(பாலனம) ேதரநொதட

ேதரவ @("ஆலண")

பதபப "வணககம ொசல்வன. ", ொபயர
நிறுதத

ேதரவ @("ொபண")

பதபப "வணககம ொசல்வி. ", ொபயர
நிறுதத

மட

எளைமயான நிரல்தான. இல்ைலயா?

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

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 27


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

இபபட  இரணட,  மனறு  "ேதரவ"களமட்டம  இரநதால்,  எளதாக   நிரல்  எழுதவிடலாம,  நிைறய 


"ேதரவ"கள இரநதவிட்டால், ஒவொவானறாக ேயாசதத எழுதவத சரமமாயிற்ேற.

பரசைனயில்ைல,  அதற்காக  "ஏேதனல்"  எனற   கறிசொசால்  உளளத,  அதற்கேமேல   தரபபட்டளள 


எநதத  "ேதரவ"ம  ொபாரநதாவிட்டால்,  இங்ேக   உளள   நிரல்  வரிகள  நிைறேவற்றபபடம. 
உதாரணமாக:

ஊர = உளளட ("உங்கள ஊர எனன? ")

@(ஊர) ேதரநொதட

ேதரவ @("ொசனைன")

பதபப "ொசனைனயில் உளள ொமரனா கடற்கைர அழகானத!"
நிறுதத

ேதரவ @("ேகாைவ")

பதபப "ேகாைவயின தமிழ் மிக இனைமயானத!"
நிறுதத

ேதரவ @("மதைர")

பதபப "சறநத ேகாயில்கள நிைறநதத மதைர!"
நிறுதத

ஏேதனல்

பதபப "உங்கள ஊரபற்றி அறிநததல் மகழ்சச!"
நிறுதத
மட

அவவளவதான,  எல்லா   ஊரகைளயும  பட்டயல்  ேபாடாமல்,   "ஏேதனல்"  எனற   கறிசொசால்ைலப 


பயனபடததவிட்ேடாம.  ொசனைன,  ேகாைவ,  மதைரதவிர   மற்ற   அைனதத  ஊரகளககம  இநத 
வரிதான அசசடபபடம.

உங்கள வட்டச சைமயலைறயில் சறிய, ொபரிய தட்டகள இரநதால், ஒர தட்ைட இனொனானறுககள 
ொபாரததலாம  அல்லவா?  அதேபால,  எழில்  கணன  ொமாழியில்  இநத   வைளயங்கைள   ஒனறுககள 
ஒனறு என அைமககலாம. அதைனப ‘பனனல் வைளயம’ (Nested Loop) எனபாரகள.

ஆலனால்  ஒனறு,  பனனல்  வைளயம  எனபத,  ஒர  தட்டககள  இனொனானைற   ைவபபதேபால், 


உளேள   இரககம  வைளயம  கசசதமாக   ொவள  வைளயததககள  ொபாரநதேவணடம. 
இல்லாவிட்டால், உங்கள நிரல் ேவைல ொசயயாத.

பனனல் வைளயங்கைள எபபட அைமபபத எனபதற்க உதாரணமாக இநத நிரைலப பாரங்கள:

அ = 1

@(அ <= 10) வைர

28 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


6 - மடககசொசயல் மற்றும வாககயம (Loops and more statements)

ஆல = 1
@(ஆல <= 10) வைர
இ = அ * ஆல
ஈ = str(அ) + " * " + str(ஆல) + " = " + str(இ)
பதபப ஈ
ஆல = ஆல + 1
மட
அ = அ + 1
மட

இநத   நிரல்  1   *   1   =   1  எனபதல்  ொதாடங்க  10   *   10   =   100  எனபதவைரயிலான   ொபரககல் 


வாயபபாட்ைட உங்களைடய தைரயில் அசசடம.

இங்ேக  "அ" எனற  மாறிைய  அடபபைடயாகக  ொகாணட  வைளயம  ொவளேய  உளளத, "ஆல" எனற 


இனொனார  மாறிைய   அடபபைடயாகக  ொகாணட   வைளயம  உளேள   இரககறத,  அத 
மடநதபறகதான ொவளவைளயமம மடகறத எனபைதக கவனததப பாரங்கள.

6.3 பயிற்ச
இபேபாத, உங்களகக ஒர பயிற்ச:

* நங்கள ஒனறிலரநத நறுககள ஓர எணைணத தரமானததகொகாளளேவணடம (இதற்க 
நங்கள "randint(1,100)" எனற கட்டைளையப பயனபடததலாம)
* மற்றவரகைள அைத ஊகககச ொசயயேவணடம, அவரகளகக உதவியாக, சறு 
தபபு(Clue)கள தரலாம
* பதத மயற்சகளககள அவரகள அநத எணைணச சரியாக ஊகததவிட்டால், அவரகள 
ொவற்றி ொபற்றாரகள என அறிவிககேவணடம

விைட:

எண = randint(1,100)

வாயபபு = 0

@(வாயபபு < 10 ) வைர

   ஊகததஎண = உளளட ("ஒனறிலரநத நறுககள உளள ஏேதா ஓர எணைண நான மனததல் 
நிைனததளேளன. அத எனன எனறு உங்களால் ஊகககமடயுமா? ")

  வாயபபு = வாயபபு + 1

   @( எண == ஊகததஎண ) ஆலனால்
      பதபப "வாழ்ததககள! சரியான பதல்!"
      exit(0)
   மட

   @( எண < ஊகததஎண ) ஆலனால்
      பதபப "நங்கள ொசால்லம எண தவறு, நான நிைனதத எணைணவிட அத ொபரியத!"

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 29


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

   இல்ைல
      பதபப "நங்கள ொசால்லம எண தவறு, நான நிைனதத எணைணவிட அத சறியத"
  மட
  
  பதபப "கவைல ேவணடாம, இனனம ", (10 ­ வாயபபு), " வாயபபுகள உளளன. நங்கள 
நிசசயம ொவல்லலாம, மணடம மயற்ச ொசயயுங்கள!"

மட

பதபப "மனனககவம, நங்கள பதத வாயபபுகளககள சரியான எணைணக கணடபடககவில்ைல!"

6.4 ஒவொவானறாக கறிசொசால் (For-Each statement)

அடதத, ’ஒவொவானறாக’ எனகற ஒர கறிசொசால்ைலப பாரககவிரககேறாம. ஆலங்கலததல் 
இதைன 'For Each Loop' எனறு அைழபபாரகள.

உதாரணமாக, ஒனறு மதல் ஆலறு வைர உளள எணகைள அசசடேவணடம எனறால், அைத இபபடச 
ொசயயலாம:

எணகள = [1, 2, 3, 4, 5, 6]

@(எணகள இல் இவொவண) ஒவொவானறாக
பதபப இவொவண
மட

இங்ேக   நாம  ‘ எணகள’   எனற   பட்டயலல்  ஆலறு  எணகைள   ைவததளேளாம.  பனனர  அவற்ைற 
ஒவொவானறாக எடதத ‘இவொவண’ எனற ொபயரில் ேசமிககேறாம, பன அதைன அசசடகேறாம.

ஒரேவைள,  ஆலறுககப  பதல்  நறு  எணகள  இரநதால்?  அததைண   நளமாக   எழுதவத  சரமம 
ஆலயிற்ேற!

உணைமதான.  அதற்காகேவ   ‘எழில்’   ொமாழியில்  ‘ ஆலக’   எனற   கறிசொசால்  உளளத.  இதைனப 


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

@(எண = 1, எண <= 100, எண = எண + 1) ஆலக
பதபப எண
மட

மிக எளய நிரல்தான. ஒவொவார வரியாகப படததால் ொதளவாகப புரிநதவிடம:

* மதலல் ‘எண’ எனற ொபயரில் 1 எனற எணைணச ேசமிககேறாம
* பறக, ‘எண <= 100’ எனறு நிபநதைன விதககேறாம
* நிைறவாக, எணைண ஒவொவானறாக அதகரிககேறாம
* ஆலக, ’எண’ எனபத 1, 2, 3, 4, 5, 6 ... என படபபடயாக அதகரிககம, தைரயில் 
அசசடபபடம
* அநத ’எண’ 101 ஆலக மாறியதம, ‘எண <= 100’ எனற நிபநதைன தவறாகவிடகறத, 

30 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


6 - மடககசொசயல் மற்றும வாககயம (Loops and more statements)

ஆலகேவ, அதற்கேமல் அசசடவைத நிறுததவிடகேறாம

இபேபாத, உங்களகக ஒர பயிற்ச:

* ஒனறு மதல் ஆலயிரம வைர உளள எணகளல் ஒற்ைறபபைட எணகைளமட்டம தைரயில் 
அசசடேவணடம
* அடததபடயாக, ஆலயிரததலரநத ஒனறுவைர உளள எணகளல் இரட்ைடபபைட 
எணகைளமட்டம தைரயில் அசசடேவணடம
* இதற்க நங்கள "%" எனற கறியட்ைடப பயனபடததலாம, அத இர எணகைள வகதத, 
அதனபறக மதமளள எணைணமட்டம தரம.

விைட:

பதபப "ஒற்ைறபபைட எணகள"
@(எண=1, எண <=1000, எண = எண + 1) ஆலக

மதம = எண % 2
@(மதம == 1) ஆலனால்
# ஒற்ைறபபைட எண
பதபப எண
மட
மட

பதபப "இரட்ைடபபைட எணகள"
@(எண=1000, எண >= 1, எண = எண ­ 1) ஆலக

மதம = எண % 2
@(மதம == 0) ஆலனால்
#இரட்ைடபபைட எண
பதபப எண
மட

மட

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 31


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

7 - ொகாஞ்சம ‘வைரநத ’ பாரபேபாமா ? (Drawing pictures -


Turtle graphics)
இதவைர  ‘எழில்’  ொமாழிையக  ொகாணட  நிைறய   விஷயங்கைள  ‘எழுத’ப  பாரததவிட்ேடாம,  ஒர 
மாறுதலககாக, ொகாஞ்சம ‘வைரநத’ பாரபேபாமா?

ேவடகைக   இல்ைல,  நிஜமாகேவ,   ‘எழில்’   ொமாழிையக  ொகாணட  படங்கள  வைரயமடயும. 


அடபபைடயான   ேகாட,  வட்டம  ேபானறவற்றில்  ொதாடங்க,  ொகாஞ்சம  ொமனகொகட்டால் 
மழுைமயான   ஓவியங்கைளககட   வைரயமடயும.  அைததான  இநத   அததயாயததல் 
கற்றுகொகாளளபேபாகேறாம!

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


சலவற்ைற மதலல் பட்டயல் ேபாட்டவிடேவாம:

* மனனாட
* வலத
* இடத
* பனனாட
* எழுதேகால்ேமேல
* எழுதேகால்கேழ

இநதப  ொபயரகைளப  பாரததாேல,  அைவ   எனன   ொசயயும  எனபத  உங்களகக  ஓரளவ  புரியும. 
அவற்ைறப பயனபடதத நிரல் எழுதத ொதாடங்கமன, ‘எழுதேகால்’ எனறால் எனன?

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

கணனயிலம  அதேபால்  ஓர  எழுதேகால்  இரபபதாகக  கற்பைன   ொசயதொகாளளங்கள, 


உங்களைடய  "எழில்"  நிரல்மலமாக,  அநத   எழுதேகாைலப  பல   தைசகளல்  நகரததகறரகள,  படம 
வைரகறரகள.

உதாரணமாக, ஓர எளய பயிற்ச. ேகாட ஒனைற வைரயப பழகேவாம.

காகதததல்  ேகாட  வைரவத  சலபம.  எழுதேகாைல   ஓர  இடததல்  ைவதத,  அங்கரநத 


வலதபககமாகக ொகாஞ்சம நகரததனால் ேகாட உரவாகவிடம. அவவளவதான.

கணனயிலம அைதேய ொசயயலாம. இேதா இபபட:

மனனாட(50)

அவவளவதான, தைரயின ைமயததல் உளள எழுதேகால், 50 புளளகள வலதபககமாக நகரம. 
ேகாட உரவாகவிடம.

அேத ேகாட்ைட ேமலரநத கழாக வைரவொதனறால்? இேதா இபபட:

வலத(90)

32 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


7 -ொகாஞ்சம ‘வைரநத’ பாரபேபாமா? (Drawing pictures - Turtle graphics)

மனனாட(50)

7.1 வலத, இடத வைரதல் - (Drawing Forward, Backward, Right, Left )

இங்ேக   நாம  எழுதேகாைல   வலதபககமாக  90  பாைககள  தரபபுகேறாம  (அதாவத  கழ்ேநாகக), 


பனனர  50  புளளகள  மனேன   நகரகேறாம  (அதாவத,  கேழ),  இதனால்  ேமலரநத  கேழ   ஒர 
ேகாட உரவாகவிடகறத. மிகச சலபம!

இைதேய இனனம ொகாஞ்சம நட்ட, ஒர மழுச சதரம வைரேவாமா?

மனனாட(50)
வலத(90)
மனனாட(50)
வலத(90)
மனனாட(50)
வலத(90)
மனனாட(50)
வலத(90)

இநதச  சதரம  அழகாக   இரககறத,  பககததேலேய   இனொனார  ொபரிய   சதரம  வைரயேவணடம. 


எபபட?

7.2 எழுதேகால்ேமேல (Pen up, Pen down


அதற்க நாம "எழுதேகால்ேமேல" மற்றும "எழுதேகால்கேழ" எனற கட்டைளகைளப 
பயனபடததேவணடம. இதனமலம உங்கள தைரயில் எழுதேகால் நகரம, ஆலனால் படம 
வைரயாத, இேதா இபபட:

எழுதேகால்ேமேல()
மனனாட(200)
எழுதேகால்கேழ()

மனனாட(100)
வலத(90)
மனனாட(100)
வலத(90)
மனனாட(100)
வலத(90)
மனனாட(100)

இபேபாத, இநத   நிரல்  மழுவைதயும  இயககப  பாரததால், உங்கள  தைரயில்  இரணட  சதரங்கைளக 


காணலாம.

சதரம  வைரவதற்காக   இவவளவ  தரம  சரமபபடாமல்,  எளதாக   ஒர  "வைர"  கறிசொசால்ைலப 


பயனபடததயும வைரயலாம, இேதா இபபட:

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 33


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

அ = 0
@(அ < 4) வைர
மனனாட(50)
வலத(90)
அ = அ + 1
மட

இநதப  படம  அழகாக   இரககறத.  அடதத,  நான  இைத   அழிததவிட்ட  இனொனார  படதைத 
வைரவதற்க விரமபுகேறன. அத எபபட?

அதற்க நங்கள turtle_reset எனற கட்டைளையப பயனபடததேவணடம. இேதா இபபட:

turtle_reset()

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


பயனபடததேவணடய கறிசொசால், turtle_color.

உதாரணமாக, ஒர சவபபுச சதரம வைரயலாமா? இேதா இபபட:

அ = 0

turtle_color("red")

@(அ < 4) வைர
மனனாட(50)
வலத(90)
அ = அ + 1
மட

7.3 நிறங்கள, வட்டங்கள Colors, Circles


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

அடதத,  சவபபு  நிறததல்  ஒர  வட்டம  வைரயலாமா?  அதற்க  நாம  கடதலாகப 


பயனபடததேவணடய கறிசொசாற்கள இரணட: turtle_fill & turtle_circle

turtle_color("red")
turtle_fill(True)
turtle_circle(100)

ஒரேவைள   நங்கள  அைரவட்டம  வைரய   விரமபனால், turtle_circle  எனற   கறிசொசால்லடன, 


180 பாைக எனகற எணைணயும ேசரததக ொகாடங்கள:

turtle_circle(100, 180)

34 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


7 -ொகாஞ்சம ‘வைரநத’ பாரபேபாமா? (Drawing pictures - Turtle graphics)

அபபடயானால், கால்வட்டததகக எனன ொசயவரகள?

turtle_circle(100, 90)

மிக எளைமதான. இல்ைலயா?

அடதத, ொகாஞ்சம சரமமான ஒர வடவதைத வைரேவாம: பசைச நிற நட்சததரம!

இநத   நிரல்  பாரபபதற்கச  சற்று  சரமமாக   இரககம,  ஆலனால்,  காகதததல்  நட்சததரம  வைரநத, 
உங்கள ேபனா எநதத தைசயில் எவவளவ தரம நகரகறத எனறு ஒரமைற கவனததால் ொதளவாகப 
புரிநதவிடம:

turtle_color("green")
வலத(36)
மனனாட(100)
வலத(144)
மனனாட(100)
வலத(144)
மனனாட(100)
வலத(144)
மனனாட(100)
வலத(144)
மனனாட(100)

இதவைர நங்கள கற்றுகொகாணட விஷயங்கைளப பயனபடதத, ஒேர ொசயைலப பலமைற ொசயயும 
கணனயின தறைமையயும ஒரங்கைணததால், ஏராளமான புதபபுத விஷயங்கைள நங்கள வைரநத 
பாரததக கலககமடயும.

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

விைட:

    turtle_color("black")
    turtle_fill(True)
    turtle_circle(100, 180)
    turtle_circle(200, 180)
     இடத(180)
    turtle_circle( ­100 , 180 )
    turtle_color("white")
    turtle_fill(True)
    turtle_color("black")
     இடத(90)
     எழுதேகால்ேமேல()
     மனனாட(200*0.375)

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி | 35


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

     வலத(90)
     எழுதேகால்கேழ()
    turtle_circle(200*0.125)
     இடத(90)
    turtle_fill(False)
     எழுதேகால்ேமேல()
     பனனாட(200*0.375)
     எழுதேகால்கேழ()
     இடத(90)

36 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


8 -நிரல்பாகம (Functions – Composition)

8 - நிரல்பாகம (Functions – Composition)


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

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


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

உதாரணமாக,  உங்கள  வட்டல்  ஊறுகாய  இரககறத,  அைத   ஒரமைற   தயாரிதத 


ைவததவிடகறரகள,  பறக  எபேபாத  அைதச  சாபபட   விரமபனாலம  ஜாடையத  தறநத  எடததப 
ேபாட்டகொகாளகேறாம, ஒவொவாரமைறயும ஊறுகாையப புததாகச சைமககேவணடயதல்ைல.

அேத   சைமயலைறயிலரநத  இனேனார  உதாரணம,  ஒரவர  ரசம  சைமககமேபாத,  ஒர  கறிபபட்ட 


ொசயமைறையப பனபற்றுவார. அதன நடேவ ‘ரசபொபாடையப ேபாடவம’ எனறு இரககம.

ரசபொபாட  எனபைத,  அவர  இபேபாத  தயாரிபபதல்ைல,  ஏற்ொகனேவ   எபேபாேதா 


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

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

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

எண1 = உளளட("ஓர எணைணச ொசால்லங்கள: ")
எண2 = உளளட("இனேனார எணைணச ொசால்லங்கள: ")

@(எண1 > எண2) ஆலனால்
பதபப "நங்கள தநதவற்றுள ொபரிய எண: ", எண1
இல்ைல
பதபப "நங்கள தநதவற்றுள ொபரிய எண: ", எண2
மட

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

இநதப ‘ ொபரிய   எணைணக  கணடபடததல்’  எனற   ொசயல்,  நமமைடய   பல   கணகககளல்  அடககட 


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

இதற்க  நாம  ‘ நிரல்பாகம’   எனற   சறபபுக  கறிசொசால்ைலப  பயனபடததேவணடம.  ஆலங்கலததல் 


இதைன ‘Function' எனறு அைழபபாரகள.

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 37


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

நிரல்பாகம ொபரியத (எண1, எண2)

@(எண1 > எண2) ஆலனால்
பனொகாட எண1
இல்ைல
பனொகாட எண2
மட

மட

இங்ேக நாம எனன ொசயதரககேறாம? படபபடயாக அலசேவாம:

1. “ொபரியத" எனற ொபயரில் ஒர நிரல்பாகதைதத ொதாடங்கயிரககேறாம
2. இநத நிரல்பாகதைத அைழகக விரமபுேவார அதற்க இரணட எணகைளத தரேவணடம, 
அவற்ைற அைடபபுக கறியினள எழுதயிரககேறாம
3. இவற்றுள எண1 ொபரியத எனறால், நிரல்பாகதைத அைழதேதாரகக அைதேய 
விைடயாகக ொகாடககேறாம, இல்லாவிட்டால் எண2 ைவ
  விைடயாகத தரகேறாம, இதற்கப 
‘பனொகாட’ எனற கறிசொசால் பயனபடகறத. ஆலங்கலததல் இதைன ‘Return' எனபாரகள.

இங்ேக   நாம  நிரல்பாகதைதமட்டமதான  எழுதயிரககேறாம.  அதைன   இனனம  அைழககவில்ைல, 


அதாவத,  இநத   நிரைல   நாம  இனனம  பயனபடததவில்ைல.  ரசபொபாடைய   எடததப  ேபாட்டச 
சைமததால்தாேன ரசம தயாராகம?

அதற்கான நிரல் வரி மிக எளத:

பதபப ொபரியத(10, 15)
பதபப ொபரியத(12, 8)

அவவளவதான,  நமகக  ேவணடய   இடங்களல்  “ ொபரியத"  எனற   ொசால்ைல   எழுத,  அதற்க 


ேவணடய   இரணட  எணகைளக  ொகாடததவடன  விைட   பளசொசனறு  தரமபக  கைடததவிடம. 
பரமாதம, இல்ைலயா?

ஆலனால், நிரல்பாகததன  உணைமயான   பலன  இதவல்ல, ொகாஞ்சம  சககலான   கணகககளல்  அைதப 


பயனபடததப பாரததால்தான இதன மழு பலமம நமககத ொதரியவரம.

8.1 ொதாடரொபரகக (Factorial)


மதலல்,   Factorial  எனபபடம  ொதாடரொபரகக  எணைணக  கணககடவதற்க  ஒர  நிரல் 
எழுதேவாம.

அதற்கமனனால்,  ஓர  எணணன  Factorial ைல


  எபபடக  கணடபடபபத?  உங்கள  கணககப 
பாடதைதச சற்ேற நிைனவபடததப பாரங்கள:

1. உதாரணமாக, எண 7 எடததகொகாளேவாம, இதன Factorial 7! எனறு கறிககபபடம
2. 7! = அதல் ொதாடங்க ஒனறு வைரயிலான அைனதத எணகளன ொபரககத ொதாைக, 
அதாவத, 7 * 6 * 5 * 4 * 3 * 2 * 1 = 5040

38 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


8 -நிரல்பாகம (Functions – Composition)

அவவளவதான. எளைமயான கணகக!

ஆலனால், உங்களடம யாராவத ’100! எவவளவ?’ எனறு ேகட்டவிட்டால் எனன ொசயவரகள? 
100*99*98... எனறு கணககப ேபாடவதற்க ொராமப ேநரமாகேம!

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

நிரல்பாகம ொதாடரொபரகக(அ)
@(அ == 0) ஆலனால்
பனொகாட 1
இல்ைல
பனொகாட அ*ொதாடரொபரகக(அ­1)
மட
மட

பதபப ொதாடரொபரகக(7)
பதபப ொதாடரொபரகக(100)

8.1.1. இநத நிரல் எபபட இயங்ககறத ?

மதலல்  ொதாடரொபரகக(7)  எனத  ொதாடங்ககேறாம,  அங்ேக   அத  7  *  ொதாடரொபரகக(6)  என 


மாறுகறத, பன 7 * 6 * ொதாடரொபரகக(5) என மாறுகறத... இபபடேய ொதாடரநத 7 * 6 * 5 
* 4 * 3 * 2 * 1 = 5040 எனறு கணடறிநதவிடகேறாம!

இேதேபால், ொதாடரொபரகக(100)ஐயும  அைழககலாம, ஆலனால்  அதன  விைட மிக  மிகப  ொபரியத, 


இநதப புததகததல் எழுதவத சாததயமில்ைல!

8.2 மணடம அைழககபபடம நிரல்பாகம (Recursion)


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

மறுபடயும, உங்கள கணககப பாடதைதச சற்ேற நிைனவபடததப பாரங்கள, GCD எனறால் எனன?

1. உதாரணமாக, எணகள 54, 42 ஆலகயவற்ைற எடததகொகாளேவாம
2. இதல் 54 எனபத 1, 2, 3, 6, 9, 18, 27 மற்றும 54 ஆலகயவற்றால் வகபடம
3. ஆலனால் 42 எனபத 1, 2, 3, 4, 6, 8, 12, 24 ஆலகயவற்றால் வகபடம
4. இநத இரணட பட்டயலககம ொபாதவான எணகள 1, 2, 3, 6 ஆலகயைவ
5. இவற்றில் ொபரியத 6
6. ஆலகேவ, 54, 42 ன GCD 6

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

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 39


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

அதற்கதான நிரல்பாகம பயனபடகறத, இேதா இபபட:

நிரல்பாகம மொபாம(அ, ஆல)
ொபரித = max(அ, ஆல)
சறித = min(அ, ஆல)
@(சறித == 0) ஆலனால்
பனொகாட ொபரித
இல்ைல
பனொகாட மொபாம(ொபரித ­ சறித, சறித)
மட
மட

பதபப "54, 42 இைடயிலான மொபாம = ", மொபாம(54, 42)

இநத நிரல் எபபட இயங்ககறத என நாம படபபடயாகப பாரககேவணடம:

மதனமைற:

மொபாம(54, 42)
ொபரித = அவற்றில் ொபரிய எண = 54
சறித = அவற்றில் சறிய எண = 42
சறித == 0 இல்ைல
ஆலகேவ, அேத மொபாம நிரல்பாகம மணடம அைழககபபடம, இபபட: மொபாம(ொபரித ­ 
சறித, சறித), அதாவத, மொபாம(54­42, 42), மொபாம(12, 42)

இபேபாத,
ொபரித = 42
சறித = 12
சறித == 0 இல்ைல
அேத மொபாம நிரல்பாகம மணடம அைழககபபடம, மொபாம(42­12, 12), அதாவத 
மொபாம(30, 12)

இபேபாத,
ொபரித = 30
சறித = 12
சறித == 0 இல்ைல
அேத மொபாம நிரல்பாகம மணடம அைழககபபடம, மொபாம(30­12, 12) அதாவத, 
மொபாம(18, 12)

இபேபாத,
ொபரித = 18
சறித = 12
சறித == 0 இல்ைல
அேத மொபாம நிரல்பாகம மணடம அைழககபபடம, மொபாம(18­12, 12) அதாவத, 
மொபாம(6, 12)

இபேபாத,
ொபரித = 6
சறித = 12

40 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


8 -நிரல்பாகம (Functions – Composition)

சறித == 0 இல்ைல
அேத மொபாம நிரல்பாகம மணடம அைழககபபடம, மொபாம(12­6, 6) அதாவத 
மொபாம(6,6)

இபேபாத,
ொபரித = 6
சறித = 6
சறித ==0 இல்ைல
அேத மொபாம நிரல்பாகம மணடம அைழககபபடம, மொபாம(6­6, 0), அதாவத 
மொபாம(6, 0)

இபேபாத,
ொபரித = 6
சறித = 0
சறித == 0
ஆலகேவ, GCD விைட = ொபரித = 6

அவவளவதான. நாம ைகயால் ேபாட்ட அேத கணகைகக கணனயால் ேபாட்டவிட்ேடாம. 
நிரல்பாகததன உணைமயான பலன இபேபாத ொதரிநதரககம. ஒரமைற இரமைற அல்ல, நறு 
மைற, ஆலயிரம மைறகட இதைன நங்கள அைழததப பயனபடததலாம!

8.3 பயிற்ச - பகா எணகள (Prime Numbers)


இபேபாத, உங்களகக ஒர பயிற்ச:

1. ஒனறு மதல் ஐமபத வைர உளள எணகளல் எைவொயல்லாம பகா எணகள (Prime 
Numbers) எனறு கணடறிநத, தைரயில் அசசடங்கள
2. பனனர அநத எணகளன கட்டதொதாைகையயும அசசடேவணடம
3. இநதக கட்டதொதாைக பக எணணா, பகா எணணா எனறு கணடறியேவணடம
4. உங்களகக உதவியாக ஒர கறிபபு, ஓர எண பகா எணணா எனறு கணடறிய நங்கள 
floor, fmod எனற கணதச ொசயல்பாடகைளப பயனபடததேவணடயிரககம, இைவபற்றித 
ேதடப படததத ொதரிநதொகாளளங்கள, அல்லத, உங்களைடய புதய வழிமைறையக 
கணடறியுங்கள

விைட:

நிரல்பாகம பகாஎணணா(அ)

ஆல = 1
இ = floor(அ/2)
@(இ >= 2) வைர
@(fmod(அ, இ) == 0) ஆலனால்
ஆல = 0
நிறுதத
மட
இ = இ + 1
மட
பனொகாட ஆல
மட

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 41


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

எல்ைல = 50
எண = 1
கட்டதொதாைக = 0

@(எண <= எல்ைல) வைர

விைட = பகாஎணணா(எண)
@(விைட) ஆலனால்
பதபப எண
கட்டதொதாைக = கட்டதொதாைக + எண
மட
எண = எண + 1

மட

பதபப "இதவைர நாம பாரதத பகா எணகளன கட்டதொதாைக: ", கட்டதொதாைக

கட்டதொதாைகவிைட = பகாஎணணா(கட்டதொதாைக)

@(கட்டதொதாைகவிைட) ஆலனால்
பதபப "இநதக கட்டதொதாைகயும ஒர பகா எணதான"
இல்ைல
பதபப "இநதக கட்டதொதாைக பகா எண அல்ல"
மட

நிரல்பாகம கணககல்மட்டமதான உதவமா? மற்ற இடங்களல் அதைன உபேயாகபபடததமடயாதா?

நனறாக உபேயாகபபடததலாம. உதாரணமாக, படம வைரவதற்க!

ஏற்ொகனேவ   ‘எழில்’   பயனபடததப  பல   எளய   படங்கைள   வைரநதரககேறாம,  இபேபாத, 


ொகாஞ்சம சககலான ஒர படதைத வைரேவாம, நிரல்பாகம உதவியுடன!

இங்ேக   நாம  வைரயபேபாவத,  ஒர  ொசடயின  படம  (ஆலங்கலததல்  Fern  எனபாரகள),  இநதச 
ொசடயில்  உளள   ொவவேவறு  அளவிலான   இைலகைளொயல்லாம  ஒவொவானறாக 
வைரநதொகாணடரககாமல், நிரல்பாகததனமலம சட்ொடனறு வைரயபேபாகேறாம. இேதா, இபபட:

நிரல்பாகம சாளரததல் ( அ )
    பதபப "Window = ", அ
மட

நிரல்பாகம PD()
    பதபப "Pen Down"
மட

நிரல்பாகம PU()
    பதபப "Pen Up"
மட

42 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


8 -நிரல்பாகம (Functions – Composition)

நிரல்பாகம FD(அ)
    பதபப "Forward ",அ
மட

நிரல்பாகம RT(அ)
    பதபப "Right ", x
மட

நிரல்பாகம LT(அ)
    பதபப "Left ",x
மட

நிரல்பாகம BK(அ)
    பதபப "Back ",அ
மட

நிரல்பாகம  ேவமபு (அளவ, பதவ)
   @( அளவ < 1 )  ஆலனால்
        பனொகாட 0
   மட
   
   FD(அளவ)
   RT (70)
   ேவமபு (அளவ * 0.5 ,  ­1 * பதவ )
   LT(70*பதவ)

   FD(அளவ)
   LT (70)
   ேவமபு (அளவ * 0.5,  1 *பதவ )
   RT(70*பதவ)
   
   RT (7*பதவ)
   ேவமபு ( அளவ ­ 1, பதவ )
   LT(7*பதவ)
   BK(அளவ * 2)
மட

சாளரததல் ( "clearscreen" )
PU()
PD()
சா = 5
BK (150*சா )

ேவமபு (25 , 1)

நாம  இதவைர   எழுதயதேலேய   மிகப  ொபரிய   நிரல்  இததான.  ேமேலாட்டமாகப  பாரபபதற்கக 


ொகாஞ்சம  சககலாக   இரககம.  ஆலனால்  உணைமயில்,  ேவமபு()  எனற   நிரல்பாகதைதக  ொகாணட 
நாம  எழுதேகாைல   மனனம  பனனம  வலமம  இடமம  நகரததகேறாம,  ஓர  இைலைய 
வைரகேறாம,  பன  அடதத   இைலைய   வைரகேறாம,  இநத   விஷயதைத   மனததல்  ொகாணட 

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 43


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

வாசததால், நிரல் ொதளவாகப புரியும.

இநத   அததயாயததல்  நாம  பாரததைவ   சல   எளய   உதாரணங்களமட்டேம,  உணைமயில் 


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

44 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


9 -ேகாபபு (File I/O)

9 - ேகாபபு (File I/O)


இநதச  சறு  ைகேயட்டல், “எழில்" நிரல்  ொமாழிையக  ொகாணட  ஏராளமான   விஷயங்கைளச  ொசயயத 
ொதரிநதொகாணேடாம. அடதத எனன?

Files  எனபபடம  ேகாபபுகைள   நிரல்வழிேய   ைகயாளவதனமலம  நாம  ேமலம  பல   பயனளள 


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

உதாரணமாக,  கணக­வழகக  சாரநத   ொமனொபாரள  தனனசரி  நிலவரதைத   ேகாபபுகளால் 


ேசமிககனறன. "எழில்" மலமாக, உங்களைடய கணனயில் ஒர சறு ேகாபைப உரவாகக, அதல் 
சல விஷயங்கைள எழுதப பாரபேபாம.

9.1 புதய ேகாபபு


மதலல்  புதய   ேகாபபு  ஒனைற   உரவாககவதற்க,  நாம  “ ேகாபைப_தற"  எனகற   ொசால்ைலப 
பயனபடததேவணடம. இேதா இபபட:

புதகேகாபபு = ேகாபைப_தற("weekdays.txt", "w")

இங்ேக weekdays.txt எனபத ேகாபபன ொபயர, “w" எனபத நாம அதல் ஏேதா சல 
விஷயங்கைள எழுத(write)பேபாகேறாம எனபைதக கறிககம ொசால்.

இபபட நாம உரவாககய புதய ேகாபைப, “புதகேகாபபு" எனற ொபயரில் ேசமிததைவககேறாம. 
பனனர இநதப ொபயைரப பயனபடததப பல விஷயங்கைளச ொசயயலாம. உதாரணமாக:

அ = "தங்கள"
ஆல = "ொசவவாய"
இ = "புதன"
ஈ = "வியாழன"
உ = "ொவளள"

ேகாபைப_எழுத(புதகேகாபபு, அ)
ேகாபைப_எழுத(புதகேகாபபு, ஆல)
ேகாபைப_எழுத(புதகேகாபபு, இ)
ேகாபைப_எழுத(புதகேகாபபு, ஈ)
ேகாபைப_எழுத(புதகேகாபபு, உ)

9.1.1. ேகாபைப மட
நிைறவாக, அநதக ேகாபைப மடேவணடம. அதற்கப பயனபடததேவணடய நிரல் வரி:

ேகாபைப_மட(புதகேகாபபு)

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 45


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

அடததபடயாக, நாம எழுதய இநதக ேகாபபல் எனன இரககறத எனறு படகக விரமபுகேறாம. 
அதற்க இநதக கட்டைளகைளப பயனபடததலாம:

பைழயேகாபபு = ேகாபைப_தற("weekdays.txt")
வரிகள = ேகாபைப_பட(பைழயேகாபபு)
பதபப வரிகள
ேகாபைப_மட(பைழயேகாபபு)

9.2 ேகாபைப_தற படகக


கவனயுங்கள,  இநதமைற   ேகாபைப_தற   எனற   கட்டைளயில்  "w"  எனறு  கறிபபடவில்ைல, 
காரணம,  நாம  இநதக  ேகாபபல்  எதவம  புததாக   எழுதபேபாவதல்ைல,  ொவறுமேன 
படககபேபாகேறாம, அவவளவதான.

இபேபாத  உங்களகக  ஒர  பயிற்ச,  இதவைர   நங்கள  கற்றுகொகாணட   விஷயங்கைள   ைவதத  கேழ 
தரபபட்டளள ேதைவகளகேகற்ப ஒர நிரல் எழுதங்கள:

1. பஜஜயம மதல் ஐநறு வைர உளள Fibonacci எணகைளக கணடபடககேவணடம
2. அைவ ஒவொவானறின வரககங்கைள(Square)மட்டம ஒர ேகாபபல் எழுதேவணடம
3. பனனர அவற்ைறத தைரயில் அசசடேவணடம

விைட:

எண1 = 0
எண2 = 1
எல்ைல = 500

புதகேகாபபு = ேகாபைப_தற("fibonacci.txt", "w")
ேகாபைப_எழுத(புதகேகாபபு, எண1 * எண1)
ேகாபைப_எழுத(புதகேகாபபு, எண2 * எண2)

எண3 = எண1 + எண2

@(எண3 <= எல்ைல) வைர

ேகாபைப_எழுத(புதகேகாபபு, எண3 * எண3)

எண1 = எண2
எண2 = எண3
எண3 = எண1 + எண2

மட

ேகாபைப_மட(புதகேகாபபு)

# அசசடதல்

46 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


9 -ேகாபபு (File I/O)

பைழயேகாபபு = ேகாபைப_தற("fibonacci.txt")
வரிகள = ேகாபைப_பட(பைழயேகாபபு)
பதபப வரிகள
ேகாபைப_மட(பைழயேகாபபு)

"எழில்"  ொமாழியில்  அரைமயான   பல   பயனபாடகள  உணட  எனபைத   விளககமாகப 


பாரததளேளாம,  இதல்  நங்கள  அடபபைட   நிரல்கைள   எழுதப  பழகயபறக,  அடததகட்டமாக 
ைபதான(Python)ேபானற  "எழில்"கக  இைணயான,  அேதேபானற   வடவைமபைபக  ொகாணட 
இனொனார விரிவான ொமாழிையக கற்கலாம.

அபேபாத,  நங்கள  ஒர  மககயமான   விஷயதைத   உணரவரகள,   "எழில்"  மற்றும  “ ைபதான" 


இைடேய   எழுதம  விதம,  ொமாழியின  இலககண  ொசாற்ொறாடரியல்  (Syntax)  மாறுகறேததவிர, 
இவவிர  ொமாழிகளலம  நிரல்  எழுதவதற்கான   அடபபைடச  சநதைன   (Logical   Thought 
Process) ஒனறுதான.

இநத   இர  ொமாழிகளல்மட்டமல்ல,  உலகல்  உளள   அைனததக  கணன  நிரல்  ொமாழிகளலம, 


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

ஆலகேவ,  எநத   ொமாழிையக  கற்கேறாம  எனபதபற்றி  அதகம  கவைலபபடேவணடாம,  நிரல் 


எழுததாளராகச  சநதககக  கற்றுகொகாணடால்  ேபாதம,  அதேவ   உங்கைளப  பல   தைசகளககக 
ொகாணடொசல்லம!

9.3 மடவ
“எழில்" ொமாழியில் ொதாடங்கய உங்கள பயணம, எல்லாப பககங்களலம விரியட்டம, உங்களகக 
வாழ்ததகள! நங்கள ஒர ொமனொபாரள உரவாககபவர ஆலக மடயும!

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 47


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

10 - எழில் ொமாழி உதாரணங்கள (Examples)


உங்களகக உதவம எழில் நிரலாகக ொமாழி உதாரணங்கள

10.1 உதாரணங்கள பதவிறககம


எடததககாட்டாக நிரல்கள ேமலம வைலததளததல் பதவிறககம
https://github.com/arcturusannamalai/Ezhil-Lang/archive/master.zip ொசயய. அடதத ezhil_tests/
ேகாபபல் கறிபபடபபடகறத உதாரணங்கள பாரகக.

வைலததளததல் இரநத கறிபபடபபடகறத உதாரணங்கள இநத வைலததளததல்


(website) http://ezhillang.org/koodam/play/eval மலம நங்கேள வைல உலாவியில் (browser)
பயிலலாம.

10.2 அறிமகபபடதததல்
”எழில்”ொமாழிையக கற்பதல் உங்களகக உதவவதற்காகேவ , நாங்கள பல உதாரண
நிரல்கைள உரவாககயிரககேறாம. இவற்ைற மைறபபட பாரைவயிட்டாேல ேபாதம,
நங்கேள ொசாநதமாக “எழில்” நிரல்கள எழுதத ொதாடங்கவிடலாம.

ஆலனால், எநத வரிைசயில் பாரபபத? எங்ேக பாரபபத?

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


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

இநதக கட்டைரயில் தரபபட்டளள வரிகளமட்டமதான எனறில்ைல, இதேபால் இனனம


பல வரிகள உதாரண நிரல்களல் உணட. அவற்ைறத ேதடப படககப படககவம,
புரிநதொகாளளவம உங்களகக “ எழில்”பற்றி நனக விளங்கம . புதய நிரல்கள
எழுதவதற்கான நமபகைக, வழிமைறகள கைடககம.

10.3 அசசடதல்

இதல் இரணட வைக உணட: எழுததச சரங்கைள அசசடதல், நிரலல் உளள விவரங்கைள
அசசடதல்.

48 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


10 -எழில் ொமாழி உதாரணங்கள (Examples)

10.3.1. எழுததச சரங்கைள அசசடதல் :

உதாரண நிரல்: quiz.n

இதல் மதலாவதாக உளள வரிையக கவனயுங்கள:


பதபப "இநதயாவின தைலநகரம எத?"

இநத வாசகம, “இநதயாவின தைலநகரம எத?” எனகற எழுததச சரதைதத தைரயில்


அசசடகறத. இதேபால் நங்கள விரமபும எநத எழுததச சரதைதயும தைரயில்
அசசடலாம.

10.4 நிரலல் உளள விவரங்கைள அசசடதல்

உதாரண நிரல்: string_demo.n

இதல் பனவரம வரிையக கவனயுங்கள:

பதபப "மதல் ொசால்லன நளம", நளம(அ)

நாம ஏற்ொகனேவ பாரதத “பதபப” வரிககம இதற்கம உளள விததயாசம


புரிகறதல்லவா? இங்ேக வழககமான எழுததச சரததடன, அநத நிரலல் உளள “அ” எனற
மாறியின நளதைதக கணககட்ட அைதயும ேசரததத தைரயில் அசசடகேறாம .
உதாரணமாக: “மதல் ொசால்லன நளம10” எனபதேபால்.

இேதமாதரி நாம எததைன விவரங்கைள ேவணடமானாலம “ பதபப”


வாககயததல் ேசரககலாம.

உதாரண நிரல்: calendar_days.n

இதல் பனவரம வரிையக கவனயுங்கள:

பதபப month+1,"]",எட(months,month), " has ",எட(days,month)," days"

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 49


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

இங்ேக ஒேர வரியில் பல விவரங்கள ேசரதத அசசடபபட்டளளைதப பாரங்கள .


இதேபால் நங்கள உங்கள நிரல்களன விைடகைள வாசகரகளககச ொசால்ல
“பதபப”ையப பயனபடததலாம.

10.5 உளளடதல்

சல ேநரங்களல், “எழில்” நிரல் இயங்கவதற்கப பயனாளர (User) ஒனறு அல்லத


அதற்க ேமற்பட்ட எணகைளேயா எழுததகைளேயா உளளடேவணடம (Input).
உதாரணமாக, கட்டல் நிரல் இயங்க நாம இரணட எணகைளத தரேவணடமல்லவா?

இதற்க நாம “உளளட” எனற கட்டைளையப பயனபடததகேறாம.

உதாரண நிரல்: leapyear.n

இதல் பனவரம வரிையக கவனயுங்கள:

வரடம = int(உளளட("வரடததன எணைண உளளட ொசயக (உ.தா) 1984;"))

இங்ேக ”உளளட” எனற கட்டைள வநதளளதால், “எழில்” நங்கள தநதளள


சரதைதத தைரயில் அசசட்டவிட்டக காதத நிற்கம , பதலககப பயனாளர ஓர எணைண
உளளடேவணடம, அநத எண “ வரடம” எனற மாறியில் ேசமிககபபடம. பனனர, அைத
ைவதத அடததடதத கணகககள நிகழ்வைத ேமற்ொசானன உதாரண நிரலல் ொசனறு
விரிவாகக காணங்கள.

சரககமாகச ொசானனால், “உளளட” எனபத விவரங்கைளப பயனாளரிடமிரநத


ொபறுதல், “பதபப” எனபத விவரங்கைளப பயனாளரகக வழங்கதல் . இநத
இரணைடயும ேசரததப பயனபடததனால் நங்கள பயனாளரடன கலநத
உைரயாடமவிதமான (Interactive) நிரல்கைள எழுதமடயும.

10.6 ஒபபடதல்

இரணட எணகள அல்லத எழுததகைள “எழில்” நிரல்களல் எபபட ஒபபடவத?

50 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


10 -எழில் ொமாழி உதாரணங்கள (Examples)

உதாரண நிரல்: ackermann.n

இதல் பனவரம வரிையக கவனயுங்கள:

@(மதொலண == 0) ஆலனால்

இநத வாசகம, “மதொலண” எனற மாறியின மதபபு பஜஜயமா எனபைதப


பாரககறத, அதன அடபபைடயில் ேவறு சல நிரல் வாசகங்கைள நிைறேவற்றுகறத .
இதற்க நாம “==” எனற கறியட்ைடப பயனபடததகேறாம.

உதாரண நிரல்: histogram.n

இதல் பனவரம வரிையக கவனயுங்கள:

@(மநதனொசால்!= "") ஆலனால்

இநத வாசகதைத மநைதய வாசகததடன ஒபபட்டப பாரங்கள. “மநதனொசால்”


எனற மாறியில் உளள மதபபு “” ஆலக இல்ைலயா எனபைத இநத வாசகம பாரககறத.
அதன அடபபைடயில் ேவறு சல நிரல் வாசகங்கைள நிைறேவற்றுகறத . இதற்க நாம “ !="
எனற கறியட்ைடப பயனபடததகேறாம.

10.7 ேமலம சல ஒபபடகள

==, != ஆலகயைவதவிர, இனனம பல ஒபபட்டக கறியடகளம “ எழில்” ொமாழியில்


உணட. அைவ:

• சறியத “<”
• ொபரியத “>”
• சறியத அல்லத சமம “<=”
• ொபரியத அல்லத சமம “>=”

உதாரண நிரல்: rich_poor.n

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 51


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

இதல் பனவரம வரிையக கவனயுங்கள:

@( வரமானம > 10000 ) ஆலனால்

இநத வாசகம “ வரமானம” எனற மாறியில் உளள எண பததாயிரதைதவிட


அதகமா எனறு பாரககறத. அதன அடபபைடயில் ேவறு சல நிரல் வாசகங்கைள
நிைறேவற்றுகறத. இேதேபால் நாம “<", "<=", ">=" ஆலகய கறியடகைளயும
பயனபடததலாம. அவற்றுககான பல உதாரணங்கள இங்ேக உளளன.

10.8 ஒனறுகக ேமற்பட்ட ஒபபடகள

இதவைர நாம பாரதத உதாரணங்கள அைனததலம, ஒர வாசகததல் ஒேர ஒர


விஷயதைதமட்டமதான (சமம, சமமல்ல, சறியத, ொபரியத) ஒபபட்டளேளாம.
ஒரேவைள நாம ஒனறுகக ேமற்பட்ட விஷயங்கைள ஒபபடேவணடயிரநதால் எனன
ொசயவத?

இதற்க “எழில்” வழங்கம கறியடகள இைவ:

• && (AND / மற்றும)

• || (OR / அல்லத)

இவற்றில் “ &&” கறியட்ைடப பயனபடததனால், அதற்க மனனால், பனனால்


இரககம இரணட ஒபபடகளம உணைமயாகேவணடம. “||” கறியட்ைடப
பயனபடததனால், இவற்றில் ஏேதனம ஒனறு உணைமயானாேல ேபாதமானத.

உதாரண நிரல்: ackermann.n

இதல் பனவரம வரிையக கவனயுங்கள:

@((மதொலண > 0) && (இரணடாொமண == 00)) ஆலனால்

இநத வாசகததல் இரணட ஒபபடகள உளளன: மதொலண பஜஜயதைதவிடப

52 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


10 -எழில் ொமாழி உதாரணங்கள (Examples)

ொபரியத, இரணடாொமண பஜஜயததககச சமம. இநத இரணடககம இைடேய “&&”


உளளத.

இதன ொபாரள, மதொலண பஜஜயதைதவிடப ொபரியதாக இரநத, இரணடாொமண


பஜஜயததககச சமமாக இரநதால்தான கேழ தரபபட்டளள கட்டைளகள நிைறேவறும .

உதாரண நிரல்: interest.n

இதல் பனவரம வரிையக கவனயுங்கள:


@(மலதனம == 0 || வட்ட_வதம == 0 || வரடம ==0 ) ஆலனால்

இங்ேக மனறு ஒபபடகள உளளன: மலதனம பஜஜயம, வட்ட_வதம பஜஜயம,


வரடம பஜஜயம. இவற்றின இைடேய “||” உளளத.

இதன ொபாரள, மலதனம பஜஜயமாக இரககேவணடம, அல்லத வட்ட_வதம


பஜஜயமாக இரககேவணடம, அல்லத வரடம பஜஜயமாக இரககேவணடம. இநத
மனறில் ஏதாவத ஒனறு சரியாக இரநதாலம கேழ தரபபட்டளள கட்டைளகள
நிைறேவறும.

ஒனறுகக ேமற்பட்ட ஒபபடகைளச ொசயயுமேபாத, அைடபபுககறிகைளச


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

உதாரண நிரல்: leapyear.n

இதல் பனவரம வரிையக கவனயுங்கள:

@( ( ((வரடம % 4) == 0) &&((வரடம % 100)!= 0) )||((வரடம % 400) ==0) ) ஆலனால்

இங்ேக மனறு ஒபபடகள உளளன. அவற்ைற && மற்றும || ஆலகய கறியடகைளப


பயனபடதத, அைடபபுககறிகளன உதவியுடன இைணததளேளாம. இபபட:
(”மதல் ஒபபட” மற்றும “இரணடாம ஒபபட”) அல்லத “மனறாம ஒபபட”

இதன ொபாரள, மதல் ஒபபட, இரணடாம ஒபபட இரணடம சரியாக


இரககேவணடம, அல்லத, மனறாம ஒபபடமட்டம சரியாக இரககேவணடம. அபேபாத

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 53


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

கேழ தரபபட்டளள கட்டைளகள நிைறேவறும.

இதேபால், ஒபபடகைள நம ேதைவகேகற்பப பலவிதங்களல் இைணததப


பயனபடதத இயலம.

10.9 இதவா? அல்லத, அதவா?

சல ேநரங்களல், ஒர கறிபபட்ட ஒபபட உணைம எனறால், நாம சல


கட்டைளகைள இயககேவாம, ஒரேவைள அத உணைம அல்ல எனறால், ேவறு சல
கட்டைளகைள இயககேவாம. ஆலங்கலததல் இதைன If-Else Construct எனறு
அைழபபாரகள.

“எழில்” நிரலல் இதைன எபபடச ொசயவத?

உதாரண நிரல்: lcmgcd.n

இதல் பனவரம வரிகைளக கவனயுங்கள:

@(எண1 == எண2) ஆலனால்


<கட்டைள 1>
@(எண1 > எண2) இல்ைலஆலனால்
<கட்டைள 2>
இல்ைல
<கட்டைள 3>
மட

இங்ேக நாம மதலல் எண1, எண2 இரணடம சமமா எனறு பாரககேறாம, ஆலம
எனல் ஒர கட்டைளைய நிைறேவற்றுகேறாம. ஒரேவைள அைவ சமமாக
இல்லாவிட்டால், எண1 ொபரியதா எனறு பாரககேறாம, ஆலம எனல் இனொனார
கட்டைளைய நிைறேவற்றுகேறாம, அதவம இயலாவிட்டால் ேவொறார கட்டைளைய
நிைறேவற்றுகேறாம.

இபபட நாம எததைண ஒபபடகைள ேவணடமானாலம பைணககலாம, அதற்க


ஓர “ஆலனால்” (IF), பல “இல்ைலஆலனால்”கள (ElseIF), ஓர “இல்ைல” (Else) ேதைவபபடம.

54 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


10 -எழில் ொமாழி உதாரணங்கள (Examples)

10.10 ஒேர பணையத தரமபத தரமபச ொசயதல்

கணனயின மிகப ொபரிய பலம, ஒேர பணையத தரமபத தரமபப பலமைற


விைரவாகச ொசயவததான. “எழில்” ொமாழியிலம நங்கள அதைனச சறபபாகச
ொசயயலாம.

இதல் இரணட வைககள உணட:

• வைர: ஒபபட்ைடப பரிேசாதததவிட்டக கட்டைளகைள


நிைறேவற்றுவத (While)
• மடேயனல்: கட்டைளகைள நிைறேவற்றிவிட்ட ஒபபடவத (Until)

உதாரண நிரல்: tables.n

இதல் இநத வரிகைளக கவனயுங்கள:

அ=1
@( அ <= 10 ) வைர
<கட்டைளகள>
அ=அ +1
மட

இங்ேக ”அ” எனற மாறியின மதபபு 1 ஆலக உளளத. பன அத படபபடயாக


அதகரிககறத, அத பதத எனற எணைணத தாணடமவைர, சல கட்டைளகள
நிைறேவற்றபபடகனறன. “அ > 10” எனற நிைல ஏற்பட்டதம (அதாவத, “அ <= 10” எனற
ஒபபட தவறானதம), அநதக கட்டைளகள நிைறேவற்றபபடவத நினறுவிடகறத.

”மடேயனல்” வாசகமம கட்டததட்ட இேதமாதரிதான. ஆலனால் கட்டைளகைள


நிைறேவற்றியபறகதான மாறியில் உளள மதபபு பரிேசாதககபபடம.

உதாரண நிரல்: dowhile.n

இதல் இநத வரிகைளக கவனயுங்கள:

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 55


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

அ=0
ொசய
<கட்டைளகள>
அ=அ+1
மடேயனல் @(அ < 5)

மநைதய நிரல் வரிகேளாட இைத ஒபபட்டப பாரங்கள, இரணடம கட்டததட்ட


ஒேரமாதரி ேதானறினாலம, ஒர மககயமான விததயாசம உளளத.

அங்ேகேபாலேவ இங்ேகயும “ அ < 5” எனற ஒபபட இரககறத, “அ” எனற


மாறியின மதபபு ஒவொவானறாக அதகரிககறத. ஆலனால், அநத ஒபபட, கட்டைளகள
அைனதைதயும நிைறேவற்றியபறகதான நிகழ்ததபபடகறத. இததான இநத இர
வாசகங்களககம இைடேய மககயமான ேவறுபாட.

உங்களத நிரல்களல் “ வைர” அல்லத “ மடேயனல்” வாசகங்கைளச


சரியானமைறயில் பயனபடததனால் மிகப ொபரிய மதபபுகைளககடப படபபடயாக
அலச விைட காணமடயும.

8. ஒவொவானறாக அலசதல்

சல ேநரங்களல் ொதாகபபான விவரங்கைள ஒவொவானறாக எடதத அலச


ேவணடயுளளத. அபேபாத உங்களககப பயனபடம இரணட கட்டைளச
ொசாற்கள"எழில்" ொமாழியில் உணட. அைவ:

1. ஒவொவானறாக (For Each)

2. ஆலக (For)

உதாரண நிரல்: stringreverse.n

இதல் இநத வரிகைளக கவனயுங்கள:

@( சரம1 இல் இ) ஒவொவானறாக


சரம2 = இ + சரம2
மட

இங்ேக “சரம1” எனபத ஓர எழுததச சரம. அதல் ஒவேவார எழுததாக எடதத,

56 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


10 -எழில் ொமாழி உதாரணங்கள (Examples)

எனற எழுததச சரததல் மாற்றிச ேசமிககேறாம . அதற்க “ ஒவொவானறாக” எனற


“சரம2”
கட்டைள பயனபடகறத.
உதாரண நிரல்: loopupdate.n
இதல் இநத வரிகைளக கவனயுங்கள:

@(எண = 1, எண <= 100, எண = எண + 1) ஆலக


பதபப எண
மட

இங்ேக நாம “ எண” எனற மாறியில் 1 ல் ொதாடங்க ஒவொவானறாக


அதகரிதத 100 வைர எணகைளச ேசமிககேறாம, அைதத தைரயில் பதபபககேறாம.

இதேபால் எணகள, எழுததகள அடபபைடயிலான பல அலசல் பணகைள இநத


இர கட்டைளச ொசாற்கைளப பயனபடததச சறபபாக எழுதலாம.

கறிபபாக, பட்டயல், dict எனற இர வைக விவரங்கைள அலசவதற்க இத மிகவம


உபேயாகபபடம. அதைனப பனனர விரிவாகக காணேபாம.

9. ேதரநொதடததல்

ஒேர மாறியில் பல மதபபுகள இரககககடம எனற சழ்நிைலயில், அைவ


ஒவொவானறுககம ொவவேவறு கட்டைளகைள நிைறேவற்றுவதற்கத “ ேதரநொதட” எனற
கட்டைளச ொசால் பயனபடம.

உதாரண நிரல்: select_case.n

இதல் இநத வரிகைளக கவனயுங்கள:

@(ஊர) ேதரநொதட
@("ொசனைன") ேதரவ
<கட்டைள 1>
@("ேகாைவ") ேதரவ
<கட்டைள 2>
@("மதைர") ேதரவ
<கட்டைள 3>

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 57


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

ஏேதனல்
<கட்டைள 4>
மட

இங்ேக “ஊர” எனற மாறியில் உளள மதபபு ொசனைனயா, அல்லத ேகாைவயா,


அல்லத மதைரயா எனபைதப ொபாறுதத கட்டைள 1 அல்லத கட்டைள 2 அல்லத
கட்டைள 3 நிைறேவற்றபபடம. இநத மனறும அல்லாத ேவறு ஊரகளககக கட்டைள 4
நிைறேவற்றபபடம. இைததான “ஏேதனல்” எனற ொசால் கறிபபடகறத.

10.11 நிறுதததல், ொதாடரதல்

நங்கள ஒேர ொசயைலப பல மதபபுகளகக ஏற்ப தரமபத தரமபச


ொசயதொகாணடரககமேபாத, அவற்ைற அவவபேபாத நிறுதத அடதத மதபபுககச
ொசல்லேவணடயிரககலாம, அல்லத, அதைனச ொசயவதலரநத
ொவளேயறேவணடயிரககலாம. ஆலங்கலததல் இதைன Break, Continue எனபாரகள. இதற்க
இைணயான "எழில்" ொமாழிச ொசாற்கள இைவ:

1. நிறுதத (break)
2. ொதாடர (continue)

இதல் ‘ நிறுதத’ எனபத, நிைறேவற்றபபட்டகொகாணடரககம ொதாடரசசயான


பணைய நிறுதத ொவளேயறுதல், அதாவத, மதமிரககம மதபபுகைளேயா
கட்டைளகைளேயா நிைறேவற்றேவணடயதல்ைல.

உதாரண நிரல்: prime.n

இதல் இநத வரிகைளக கவனயுங்கள:

@( p >= 2 ) வைர
@( fmod( n, p ) == 0 ) ஆலனால்
நிறுதத
மட
p=p-1
மட

58 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


10 -எழில் ொமாழி உதாரணங்கள (Examples)

இங்ேக நாம ஒர “ வைர” வைளயததனள இரககேறாம. ஆலனால் ஒர கறிபபட்ட


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

அதாவத, ஒர வைளயம 1, 2, 3 எனறு 100 வைர ொசல்வதாக ைவததகொகாளேவாம.


அைத நங்கள ஏேதா காரணததககாக 35 ல் நிறுதத ேநரலாம. அபேபாத “ நிறுதத” எனற
ொசால்ைலப பயனபடததனால்36, 37 மதலான எணகள பயனபடததபபடாத.

உங்களத நிரல்களல் எபேபாொதல்லாம ஒர வைளயம (Loop) இதற்கேமல்


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

அடதத, “ொதாடர” எனற கட்டைளச ொசால். இத “ நிறுதத”கக ேநர எதரானத.


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

அதாவத, வைளயம 1, 2, 3 எனறு ொதாடரநத 100 வைர ொசல்கறத. அேத 35 ல்


“நிறுதத”ககப பதல் “ ொதாடர” எனற வாசகதைதப பயனபடததகேறாம . அபேபாத, 35
எனற மதபபுகக மதமளள கட்டைளகள நிைறேவற்றபபடாத . ஆலனால் 36 மதல் உளள
கட்டைளகள எபேபாதமேபால் நிைறேவற்றபபடம.

உதாரண நிரல்: nqueens.n

இதல் இநத வரிகைளக கவனயுங்கள:

@( i = 0, i < n, i = i + 1 ) ஆலக
<சல கட்டைளகள>
@( j < col ) ஆலனால்
ொதாடர
மட
<ேமலம சல கட்டைளகள>
மட

இங்ேக “சல கட்டைளகள” மதலல் நிைறேவற்றபபடம, அதனபறக ஓர ஒபபட ("j


< col") ொசயயபபடம. ஒரேவைள அத நிஜம எனல், மதமளள “ேமலம சல கட்டைளகள”
இநத மதபபுகக நிைறேவற்றபபடாத, “ஆலக” வைளயம அடதத மதபபுககச

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 59


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

ொசனறுவிடம.

”நிறுதத” மற்றும “ொதாடர” இைடயிலான விததயாசம நுட்பமானத . அைத அறிநத


சரியாகப பயனபடததனால் உங்கள நிரல் மிகத தல்லயமாக இயங்கம.

10.12 அதக விவரங்கள

"எழில்" ொமாழியில் அதக விவரங்கைளத ொதாகததைவகக இரணட வழிகள


உணட:

1. பட்டயல்
2. Dict

இதல் பட்டயல் 1D எனபபடம ஒற்ைறப பரிமாண வைகையச ேசரநதத. அதாவத,


ஒனறனகழ் ஒனறாகப பல விவரங்கைளத ொதாகததைவககலாம . உதாரணமாக,
மாணவரகளன ொபயரகள.

அேத பட்டயலல், ஒவொவார மாணவர ொபயரககம அரேக அவர வாங்கய


மதபொபணகைளச ேசரகக விரமபனால், அதற்க Dict பயனபடம. இத 2D, இரட்ைடப
பரிமாண வைகையச ேசரநதத.

பட்டயல், Dict இரணடலம நாம விவரங்கைளத ொதாகககலாம, எடககலாம.


அதற்கான வழிவைககள அைனததம தரபபட்டளளன.

உதாரண நிரல்: string_demo.n

இதல் இநத வரிகைளக கவனயுங்கள:

ப = பட்டயல்()
பனஇைண( ப , "வாைழ")
பனஇைண( ப , "ொகாயயா" )
பனஇைண( ப , "மா")

பதபப எட(ப,0), எட(ப ,1)

60 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


10 -எழில் ொமாழி உதாரணங்கள (Examples)

தைலகழ்( ப )

வரிைசபபடதத( ப )

பதபப "பட்டயல் நளம", நளம( ப )

நட்டகக( ப , ப )

இநத வரிகளல் நாம பட்டயைல உரவாககவைத அறிகேறாம, அதல்


விவரங்கைளச ேசரககத ொதரிநதொகாளகேறாம, அவற்ைற எடததத தைரயில் அசசடப
பழககேறாம, தைலகழாகககேறாம, வரிைசபபடததகேறாம, நளம கணடபடககேறாம,
நட்டககேறாம...

இபபட உங்களைடய நிரல்களலம விவரங்கைளச ேசரததப பயனபடததம


ேதைவ வரமேபாொதல்லாம, பட்டயைலப பயனபடததகொகாளளங்கள.

உதாரண நிரல்: dict.n

இதல் இநத வரிகைளக கவனயுங்கள:

z = dict()
ைவ(z,"name","மண")
ைவ(z,"age",10)
ைவ(z,"location","தஞ்சாவர")

பதபப "என ொபயர "+எட(z,"name")


பதபப "நான வாழும ஊர "+எட(z,"location")
பதபப "எனகக "+str(எட(z,"age"))+" வயதாகறத. "

இைத மநதன உதாரணததடன ஒபபட்டப பாரங்கள, மண எனபவரைடய


வயத, இரபபடம எனபதேபானற பல விவரங்கைள இங்ேக ேசமிககேறாம . ஆலனால்
“பட்டயல்” வைகயில் மண, சேரஷ, ரேமஷ ேபானற ொபயரகைளமட்டம ேசமிககலாம,
அல்லத 10, 12, 25 எனறு வயதகைளமட்டம ேசமிககலாம, இபபடத ொதாககக இயலாத.

”பட்டயல்” ேபாதம எனகற இடங்களல் ”Dict” பயனபடததவத வண.


அேதசமயம ” Dict” ேதைவபபடம இடங்களல் அநதப பணையப ” பட்டயல்”ஆலல் ொசயய
மடயாத. இநத விததயாசதைத உணரநத உங்கள நிரல்கைள வடவைமபபத நல்லத.

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 61


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

10.13 நிரல்பாகங்கள

ஒேரமாதரி பணைய ஒர நிரலல் பல இடங்களல் ொசயயேவணடயிரநதால் ,


Function எனபபடம கட்டைமபைபப பயனபடததவாரகள. அதாவத, ஒரமைற
எழுதவிட்ட அதைனப பலமைற அைழததப பயனபடததவத.

இங்ேக "எழில்" ொமாழியிலம Functions உணட. அவற்ைற “நிரல்பாகம” எனறு நாம


அைழககேறாம.

உதாரண நிரல்: convert2kelvin.n

இதல் இநத வரிகைளக கவனயுங்கள:

நிரல்பாகம ொகல்வின_இரநத_மாற்று( k )
<கட்டைளகள
மட

ொகல்வின_இரநத_மாற்று( 0 )

இங்ேக நாம ஒர நிரல்பாகதைத எழுத, அதைன உரிய இடததலரநத


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

62 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


11 -நிரலாளர உதவிக ைகேயட (Programmer's Examples)

11 - நிரலாளர உதவிக ைகேயட (Programmer's


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

11.1 பதபப
பயனபடததம விதம ::= "பதபப" எழுததசசரம அல்லத மாறியின ொபயர
["," எழுததசசரம அல்லத மாறியின ொபயர]

இநதக கட்டைள தனனடம தரபபடகற எழுததசசரம அல்லத மாறியின மதபைபத


தைரயில் காணபககறத. எழுததசசரம மற்றும மாறியின ொபயர இரணடம கலநத
தரபபட்டால், அைவ ஒனறு ேசரககபபட்ட (காணக: எழுததசசரங்கைள இைணததல்)
காணபககபபடம.

ொபாதவாக இநதக கட்டைள இரணடவிதங்களல் பயனபடம: ஒனறு, பயனாளரகளகக


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

இநதக கட்டைளயில் தரபபடம எழுததசசரங்கள மற்றும மாறிகள அைனததம இைணநத


ஒர வரியில் காணபககபபடம, அததடன அநத வரி மழுைம ொபறும. அடதத கட்டைள
அடதத வரியில்தான அசசாகம. இதன ொபாரள, ஒவொவார ”பதபப” கட்டைளயின
நிைறவிலம “\n" தாேன ேசரககபபடகறத, நங்கள அைதத தனேய
ேசரககேவணடயதல்ைல.

11.2 உளளட

பயனபடததம விதம ::= “உளளட(” எழுததசசரம “)”

இநதக கட்டைள இரவிதமாக இயங்ககறத. தனனடம தரபபடகற எழுததச அரதைதத


தைரயில் காணபககறத. பனனர, பயனாளர தட்டசச ொசயயபேபாகம விவரததககாகக
காததரககறத. அவர தட்டசச ொசயத “Enter” விைசையத தட்டயவடன, அநத
விவரதைத நிரலககத தரகறத.

பயனாளரகள இநதக கட்டைளககப பதலாக ஓர எணைணேயா எழுததகைளேயா


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

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 63


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

உதாரணமாக, “உங்கள வயத எனன?” எனற ேகளவிககப பயனாளர “10” எனறு பதல்
அளததால், அைத நிரலன அடதத வரியில் அபபடேய பயனபடதத இயலாத. Int
எனபபடம எண வைககக மாற்றிதான பயனபடததேவணடம. இபபட:

வயத = int(உளளட(“உங்கள வயத எனன?”))

11.3 ஆலனால்

பயனபடததம விதம ::= “@(” நிபநதைன வாசகம நிபநதைன வாசகங்கள “)


ஆலனால்“
ொசயல் வாசகங்கள
”மட”

நிபநதைன வாசகம ::= மாறியின ொபயர அல்லத மதபபு “ ” தரககக கறியட


” ” மாறியின ொபயர அல்லத மதபபு

அனமதககபபட்டளள தரககக கறியடகள ::= == | != | > | < | >= | <=

நிபநதைன வாசகங்கள ::= “(” நிபநதைன வாசகம “) “ [”&& (” அல்லத “|| (”


நிபநதைன வாசகம “)”]

இநதக கட்டைள நங்கள தரகற நிபநதைன வாசகம சரியா, தவறா எனபைதக


கறிபபடகறத. ஒரேவைள நிபநதைன வாசகம சரியாக இரநதால், ”ஆலனால்”, “மட”
எனற கட்டைளகளகக இைடேய உளள கட்டைளகள அைனததம நிைறேவற்றபபடம.
இல்லாவிட்டால் நிரலன கட்டபபாட “மட” எனற ொசால்லககப பனனர உளள
கட்டைளககச ொசனறுவிடம.

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


“&&” (மற்றும), “||” (அல்லத) எனற கறியடகளல் ஒனறால் பைணககேவணடம.

ஒரேவைள இரணடகக ேமற்பட்ட நிபநதைன வாசகங்கைள ஒேர இடததல் ொதாகததால்,


அபேபாத () எனற அைடபபுககறிையக கவனமாகப பயனபடததங்கள. இைவ கணதச
சமனபாடகள நிைறேவற்றபபடம அேத தனைமபபட நிைறேவற்றபபடம. உதாரணமாக:

@(((a>5) || (b<5)) && (c>5)) ஆலனால்

11.4 . இல்ைலஆலனால் & இல்ைல

பயனபடததம விதம ::= “@(” நிபநதைன வாசகம அல்லத வாசகங்கள “)


ஆலனால்“

64 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


11 -நிரலாளர உதவிக ைகேயட (Programmer's Examples)

ொசயல் வாசகங்கள
[”@(” நிபநதைன வாசகம அல்லத வாசகங்கள “) இல்ைலஆலனால்“
ொசயல் வாசகங்கள
”இல்ைல”
ொசயல் வாசகங்கள]
”மட”

இநதக கட்டைள எபேபாதம “ஆலனால்” எனற கட்டைளயுடன இைணநேத இயங்கம.


“ஆலனால்”கக மனபாகத தரபபட்டளள நிபநதைன சரி எனறால், அைத அடததத
தரபபட்டளள ொசயல் வாசகங்கள இயங்கம, ஒரேவைள அத தவறு எனறால்,
”இல்ைலஆலனால்”கக மனேப தரபபட்டளள அடதத நிபநதைன வாசகம
ொசயல்படததபபடம.

இபபட வரிைசயாக வரம நிபநதைன வாசகங்களல் எைவயும சரி இல்ைல எனறால்,


நிைறவாக “இல்ைல” எனற ொசால் தரபபட்டரககம. அைத அடதத வரகற ொசயல்
வாசகங்கள இபேபாத நிைறேவற்றபபடம.

“ஆலனால்”, “இல்ைலஆலனால்”, “இல்ைல” ஆலகய மனறுககம இைணயாக “மட” எனற


ொசாற்ொறாடர வரம. இதேவ {} எனற அைடபபுககறி இைணையபேபால் இங்ேக
ொசயல்படகறத.

11.5 . வைர

பயனபடததம விதம ::= “@(” நிபநதைன வாசகம அல்லத வாசகங்கள “)


வைர”
ொசயல் வாசகங்கள
”மட”

இநதக கட்டைள சழல் வைகையச ேசரநததாகம. அதாவத, இதனள தரபபட்டளள


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

”ஆலனால்” கட்டைளையபேபாலேவ இங்ேகயும நிபநதைன வாககயங்கள உளளன.


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

இதல் ஒனறுகக ேமற்பட்ட நிபநதைனகைளச ேசரககலாம. அதற்க “&&” அல்லத “||”


எனற ொசாற்கைளயும, () அைடபபுககறிகைளயும உரிய மைறயில்
பயனபடததேவணடம.

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 65


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

11.6 . ொசய & மடேயனல்

பயனபடததம விதம ::= “ொசய”


ொசயல் வாசகங்கள
”மடேயனல் @(” நிபநதைன வாசகம அல்லத வாசகங்கள “)”

இநதக கட்டைளயும “வைர” ேபானறேத. ஆலனால் ஒர மககயமான விததயாசம, இங்ேக


ொசயல் வாசகங்கள நிைறேவற்றபபட்டபறகதான நிபநதைன வாசகேமா வாசகங்கேளா
நிைறேவற்றபபடம.

மற்றபட பயனபடததம விதம இைவ இரணடககம ஒனேற. இதல் உளள ொசயல்


வாசகங்கள ஒரமைறயாவத நிசசயம ொசயல்படததபபடம எனபைத
மறநதவிடேவணடாம. எபேபாத “வைர”ையப பயனபடததவத, எபேபாத
“மடேயனல்”ஐப பயனபடததவத எனறு தரமானகக உதவம அமசம இததான.

11.7 . ஒவொவானறாக

பயனபடததம விதம ::= “@(” ொதாகபபு மாறியின ொபயர “ இல் “ தன


மாறியின ொபயர “) ஒவொவானறாக”
ொசயல் வாசகங்கள
”மட”

அனமதககபபட்டளள ொதாகபபு மாறி வைககள ::= பட்டயல் | dict |


எழுததசசரம

இநதக கட்டைள ொதாகபபாக உளள விஷயங்கைள ஒவொவானறாக எடததச


ொசயல்படததகறத. உதாரணமாக, ஓர எழுததச சரததல் உளள எழுததகைள
ஒவொவானறாகக ைகயாளவத; ஒர பட்டயல் அல்லத Dict வைகயில் உளள
விஷயங்கைள ஒவொவானறாகக ைகயாளவத ேபானறைவ.

இங்களள ொதாகபபல் எததைன அமசங்கள உளளனேவா, அததைனமைற இதல் உளள


ொசயல் வாசகங்கள இயங்கம. உதாரணமாக, ஒர பட்டயலல் 10 ொபயரகள இரபபன,
ொசயல் வாசகங்கள பதத மைற இயங்கம.

ஒரேவைள நங்கள இநதச சழலல் இரநத பாதயில் ொவளேயற விரமபனால், உங்கள


ேதைவையப ொபாறுதத “நிறுதத” அல்லத ”ொதாடர” எனற வாசகங்கைளப
பயனபடததலாம.

66 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


11 -நிரலாளர உதவிக ைகேயட (Programmer's Examples)

11.8 . ஆலக

பயனபடததம விதம ::= ”@(” ொதாடகக நிைல ” , “ நிபநதைன நிைல “ , “


அதகரிபபு நிைல “) ஆலக”
ொசயல் வாசகங்கள
”மட”

ொதாடகக நிைல ::= மாறியின ொபயர அல்லத மதபபு “ = “ மாறியின ொபயர


அல்லத மதபபு

நிபநதைன நிைல ::= மாறியின ொபயர அல்லத மதபபு “ “ தரககக கறியட “


“ மாறியின ொபயர அல்லத மதபபு

அனமதககபபட்டளள தரககக கறியடகள ::= == | != | > | < | >= | <=

அதகரிபபு நிைல ::= மாறியின ொபயர “ = “ மாறியின ொபயர “ கணதக


கறியட “ “ மாறியின ொபயர அல்லத மதபபு

அனமதககபபட்டளள கணதக கறியடகள ::= + | - | * | /

இநதக கட்டைளயில் மனறுவிதமான வாசகங்கள பயனபடததபபடகனறன: ொதாடகக


நிைல, நிபநதைன நிைல, அதகரிபபு நிைல.

இவற்றில் ொதாடகக நிைல எனபத மதலல் நிைறேவற்றபபடம வாசகம. பனனர,


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

உதாரணமாக, @(a=1;a<10;a=a+1) எனறு கறிபபடபபட்டரநதால், மதலல் ொதாடகக


நிைலயில் “a” எனற மாறியில் “1” எனற மதபபு ைவககபபடகறத. பன அத
ஒவொவானறாக அதகரிககபபடகறத, “a” மதபபு 10 ஐவிடக கைறவாக உளளவைர
ொசயல் வாசகங்கள நிைறேவற்றபபடம. அதனபறக, இநதச சழல் தானாக நிைறவகக
வநதவிடம.

”ஆலக” சழல் எததைனமைற நிைறேவற்றபபடம எனபைதத தரமானபபத இநத மனறு


நிைல வாசகங்களதான. இங்ேகயும “நிறுதத”, “ொதாடர” எனற வாசகங்கைளப
பயனபடததச சழலன தனைமைய மாற்றி அைமககலாம.

11.9 . ேதரநொதட, ேதரவ & ஏேதனல்

பயனபடததம விதம ::= ”@(” மாறியின ொபயர “) ேதரநொதட”


”@(” மாறியின மதபபு “) ேதரவ”

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 67


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

ொசயல் வாசகங்கள
[”@(” மாறியின மதபபு “) ேதரவ”
ொசயல் வாசகங்கள
”ஏேதனல்”
ொசயல் வாசகங்கள]
”மட”

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


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

ஒரேவைள, அதன நிஜமான மதபபு அங்ேக தரபபட்டளள எநத மதபேபாடம


ொபாரநதவில்ைல எனறால், “ஏேதனல்”ககக கேழ உளள ொசயல் வாசகங்கள
நிைறேவற்றபபடகனறன.

இங்ேக மாறியின மதபபு ஒேர ஒரமைறதான பரிேசாதககபபடம எனபைத நிைனவில்


ொகாளக. இத பலமைற இயங்கம சழல் அல்ல.

11.10 நிறுதத

பயனபடததம விதம ::= “நிறுதத”

இநதக கட்டைள எபேபாதம ஒர சழலன நடேவ பயனபடததபபடம. அததடன அநதச


சழல் நிைறவைடநதவிடம.

அதாவத, சழல் வழககமேபால் நிைறேவற இனனம பல சற்றுகள மதமிரநதாலம, இநதக


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

11.11 ொதாடர

பயனபடததம விதம ::= “ொதாடர”

இநதக கட்டைளயும “நிறுதத” ேபானறேததான. ஆலனால் இத சழலல் இரநத


ொமாததமாக ொவளேயறுவதல்ைல. அநதக கறிபபட்ட சற்ைறமட்டம நிறுததவிடகறத.

உதாரணமாக, ஒர சழலல் 10 படகள இரககலாம, அைவ 1, 2, 3, 4, 5 எனறு

68 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


11 -நிரலாளர உதவிக ைகேயட (Programmer's Examples)

வரமேபாத நாம “நிறுதத” கட்டைளைய அைழததால், 5, 6, 7, 8, 9, 10 ஆலகய சற்றுகள


இயககபபடாத. அேத இடததல் “ொதாடர” கட்டைளைய அைழததால், 5 ம சற்றுமட்டம
இயங்காத. 6 ல் ொதாடங்க மற்ற சற்றுகள எபேபாதமேபால் இயங்கம.

இநத விததயாசதைதப புரிநதொகாணடவிட்டால், எபேபாத “நிறுதத”, எபேபாத


“ொதாடர” எனபத ொதளவாக விளங்கவிடம.

11.12 பட்டயல்

பயனபடததம விதம ::= மாறியின ொபயர ” = பட்டயல்()”

இநதக கட்டைள ஒர புதய ொதாகபபைன உரவாகககறத. அதன வைக “பட்டயல்”


எனபதாகம.

ஒர “பட்டயல்” மாறியில் எண, எழுதத, ேதத ேபானற பல அமசங்கைளச ேசமிககலாம,


ேவணடயேபாத அவற்ைற மட்ொடடககலாம. அதற்கான கட்டைளகள கேழ
தரபபட்டளளன.

11.13 பனஇைண

பயனபடததம விதம ::= ”பனஇைண(” பட்டயல் வைக மாறியின ொபயர ”,”


இைணககபபடேவணடய மதபபு “)”

அனமதககபபட்டளள மதபபு வைககள ::= எண | எழுதத | எழுததசசரம |


ேதத

இநதக கட்டைள ஒர பட்டயல் வைக மாறியின பனனால் ஒர மதபைபச ேசரகக


உதவகறத. உதாரணமாக, ஏற்ொகனேவ ஐநத விஷயங்கைளக ொகாணட பட்டயலல்
ஆலறாவதாக ஒனைறச ேசரகக விரமபனால், இநதக கட்டைளையப பயனபடததலாம.
எணகள, எழுததகள, எழுததச சரங்கள, ேதத ேபானறவற்ைற இதனமலம பட்டயலல்
ேசரககலாம.

11.14 எட

பயனபடததம விதம ::= மாறியின ொபயர “ = எட(” பட்டயல் வைக


மாறியின ொபயர “,” எண வரிைச “)”

இநதக கட்டைள ஒர பட்டயலல் உளள விஷயங்கைள மட்ொடடததப பயனபடதத


உதவகறத. நாம ேசரதத வரிைசபபட விஷயங்கைள மட்கலாம. அதற்கான வரிைச
எணைணக கறிபபட்டாேல ேபாதமானத.

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 69


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

ஒரேவைள அநத வரிைச எண பட்டயலல் இல்ைல எனறால், அதற்கான பைழச ொசயத


தரபபடம. இல்லாவிட்டால் அநத வரிைச எணணல் ேசமிககபபட்டளள விவரம மட்டத
தரபபடம.

11.15 தைலகழ்

பயனபடததம விதம ::= ”தைலகழ்(” பட்டயல் வைக மாறியின ொபயர “)”

இநதக கட்டைள ஒர பட்டயைலத தைலகழாக மாற்றிவிடகறத. அதாவத, நாம அதல்


விவரங்கைளச ேசரதத வரிைசகக ேநர எதரானதாக. நிைறவாகச ேசரதத விஷயம
மதலாவதாக வரம, அதற்கச சற்றுமன ேசரதத விஷயம இரணடாவதாக… இபபடத
ொதாடரநத மதலாவதாகச ேசரதத விஷயம நிைறவாக நிற்கம.

ஆலனால், இதனால் விவரங்கேளா, பட்டயலன நளேமா மாறாத. வரிைச எணகளமட்டேம


மாறும.

11.16 வரிைசபபடதத

பயனபடததம விதம ::= “வரிைசபபடதத(” பட்டயல் வைக மாறியின


ொபயர “)”

இநதக கட்டைள ஒர பட்டயலல் உளள விவரங்கைள அகர வரிைசபபட (அல்லத, ஏறு


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

இமமைறயும, பட்டயலன நளம மாறாத. புதய விஷயங்கள ேசரககபபடாத. வரிைச


எணமட்டேம மாறும.

11.17 நளம

பயனபடததம விதம ::= எண வைக மாறியின ொபயர “ = நளம(” பட்டயல்


வைக மாறியின ொபயர “)”

இநதக கட்டைள ஒர பட்டயலன நளதைத எணணாகத தரம. இதைனப பயனபடததக


கணககடகைளச ொசயயலாம.

11.18 நட்டகக

70 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


11 -நிரலாளர உதவிக ைகேயட (Programmer's Examples)

பயனபடததம விதம ::= ”நட்டகக(” பட்டயல் வைக மாறியின ொபயர “ , “


பட்டயல் வைக மாறியின ொபயர “)”

இநதக கட்டைள ஒர வைகப பட்டயலடன இனொனார வைகப பட்டயைல ஒட்ட


நட்டததத தரம. அதாவத, மதலல் தரபபட்டரககம பட்டயலன நிைறவில்
இரணடாவதாகத தரபபட்டரககம பட்டயல் இைணககபபட்ட, அநதப ொபரிய பட்டயல்
மதல் பட்டயலன மாறியில் ேசமிககபபடம.

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


ஒேர ஒர விஷயதைததான ேசரகக இயலம, இங்ேக மழுப பட்டயைலயும ேசரகக
இயலம. அததான மககயமான விததயாசம.

11.19 dict

பயனபடததம விதம ::= மாறியின ொபயர “ = dict()"

இநதக கட்டைள “பட்டயல்” ேபானறததான. ஆலனால் மாறியின வைக “Dict” என


பயனபடததேவணடம. இதல் தனததன அமசங்கைள அனறி, ஒவொவானைறயும ஓர
அைடயாளததடன ேசமிகக இயலம.

உதாரணமாக, ஒர மாணவரின ொபயர, வயத, மகவரி ேபானறவற்ைற ஒேர “Dict”


மாறியில் ேசமிககலாம, ேவணடயேபாத அவற்ைற மட்ட எடககலாம.

11.20 ைவ

பயனபடததம விதம ::= “ைவ(” dict வைக மாறியின ொபயர “ , “


எழுததசசரம “ , “ மாறியின ொபயர அல்லத மதபபு “)”

இநதக கட்டைள ஒர “Dict” வைக மாறியில் ஒர புதய மதபைபச ேசரககறத. அதைனப


“பட்டயல்”ேபால் ொவறுமேன ேசரககாமல், எழுததசசரமான ஓர அைடயாளதைதச
ேசரததப பதவ ொசயகேறாம.

உதாரணமாக, “ொபயர” எனற அைடயாளததடன “ராம” எனற மதபைபச ேசரககலாம;


பன “வயத” எனற அைடயாளததடன “12” எனற மதபைபச ேசரககலாம… இபபடேய
நமகக ேவணடய எல்லா விவரங்கைளயும இநதக கட்டைளைய மணடம மணடம
அைழபபதனமலம ேசமிககலாம.

11.21 எட

பயனபடததம விதம ::= மாறியின ொபயர “ = எட(” dict வைக மாறியின

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 71


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

ொபயர “ , “ எழுததசசரம “)”

இநதக கட்டைள “Dict”ல் ைவதத ஒர விஷயதைத எடகக உதவகறத. அதன


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

ஒரேவைள அநத அைடயாளததல் எநத மதபபும பதவ ொசயயபபடவில்ைல எனல்,


பைழசொசயத காணபககபபடம.

11.22 நிரல்பாகம

பயனபடததம விதம ::= “நிரல்பாகம “ எழுததசசரம “ (” [மாறியின ொபயர


[” , ” மாறியின ொபயர]] “)”
ொசயல் வாசகங்கள
”மட”

இநதக கட்டைள ஒர நிரலல் அடககட பயனபடம நிரல் வரிகைளத தனேய


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

ஒவொவார நிரல்பாகததலம நாம மாறிகைள உளளட ொசயயலாம (Input). இைவ


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

11.23 பனொகாட

பயனபடததம விதம ::= “பனொகாட “ மாறியின ொபயர அல்லத மதபபு

இநதக கட்டைள ஒர நிரல்பாகததன விைடயாக ஏேதனம ஒர மதபைபத தரமப


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

ஒவொவார நிரல்பாகமம ஒேர ஒர மதபைபமட்டமதான பனொகாடகக இயலம.


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

11.24 ேகாபைப_தற

பயனபடததம விதம ::= மாறியின ொபயர “ = ேகாபைப_தற(” எழுததசசரம

72 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி


11 -நிரலாளர உதவிக ைகேயட (Programmer's Examples)

[” , “ எழுதத] “)”

அனமதககபபட்டளள எழுதத வைககள = “w"

இநதக கட்டைள கணனயில் உளள ேகாபபு ஒனைறத தறககப பயனபடததபபடகறத.


அதற்கான மழு மகவரி (”எழில்” ொமனொபாரள நிறுவபபட்டளள இடததலரநத)
தரபபடேவணடம. ேகாபைபத தறககம விதம ொவறுமேன வாசபபதாக இரககலாம,
அல்லத எழுதவதற்காக இரககலாம.

எழுதவதற்காக ஒர ேகாபைபத தறகக மயற்ச ொசயயும ேநரததல், ஒரேவைள அநதக


ேகாபபு அநத இடததல் இல்லாவிட்டால், புதய ேகாபபு ஒனறு உரவாககபபடம,
அதனபறக தறககபபடம.

ஒரேவைள ேகாபைபத தறகக / உரவாகக அனமத இல்லாவிட்டால், பைழச ொசயத


காணபககபபடம.

11.25 ேகாபைப_எழுத

பயனபடததம விதம ::= “ேகாபைப_எழுத(” ேகாபபு வைக மாறியின


ொபயர “ , “ மாறியின ொபயர அல்லத மதபபு “)

இநதக கட்டைள ஏற்ொகனேவ தறககபபட்ட ஒர ேகாபபல் எழுதப பயனபடகறத.


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

ஒரேவைள உங்களகக அநதக ேகாபைபயில் எழுதவதற்கான அனமத இல்லாவிட்டால்,


பைழச ொசயத காணபககபபடம.

11.26 ேகாபைப_மட

பயனபடததம விதம ::= ”ேகாபைப_மட(” ேகாபபு வைக மாறியின ொபயர


“)”

இநதக கட்டைள தறநத ேகாபைப மற்றிலமாக மடப பயனபடகறத. அதனபறக அைத


வாசபபேதா, அதல் எழுதவேதா இயலாத. அபபட ஒர ேதைவ ஏற்பட்டால், மடய
ேகாபைப மணடம இனொனாரமைற தறபபத அவசயம.

தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி| 73


தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

11.27 ேகாபைப_பட

பயனபடததம விதம ::= மாறியின ொபயர “ = ேகாபைப_பட(” ேகாபபு


வைக மாறியின ொபயர “)”

இநதக கட்டைள ஏற்ொகனேவ தறநதரககம ஒர ேகாபபல் உளள பகதகைள வாசககப


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

**********************
* * * எழில் ொமாழி வழியாக * * *
** நனக கணன **
** நிரலாககம கற்க * *
*** ***********

74 | www.ezhillang.org | தமிழில் நிரல் எழுத - எழில் நிரலாகக ொமாழி

You might also like