12th Standard Syllabus & Materials
12th Standard
TN 12th Computer Applications மின்னணு தரவு பரிமாற்றம் Sample Question Papers Study Material - QB365 Set A
NEW12th Standard
TN 12th Computer Applications மின் - வணிக பாதுகாப்பு அமைப்புகள் Sample Question Papers Study Material - QB365 Set A
NEW12th Standard
TN 12th Computer Applications மின்னணு செலுத்தல் முறைகள் Sample Question Papers Study Material - QB365 Set A
NEW12th Standard
TN 12th Computer Applications மின் - வணிகம் Sample Question Papers Study Material - QB365 Set A
NEW12th Standard
TN 12th Computer Applications திறந்த மூல கருத்துருக்கள் Sample Question Papers Study Material - QB365 Set A
NEW12th Standard
TN 12th Computer Applications வலையமைப்பு வடமிடல் Sample Question Papers Study Material - QB365 Set A

Published on: 09/03/2020
12ஆம் வகுப்பு கணினி அறிவியல் அனைத்துப்பாட ஐந்து மதிப்பென் முக்கிய வினாக்கள் 2020 (12th Standard Computer Science All Chapter Five Marks Important Questions 2020 )
12ஆம் வகுப்பு Computer Science / கணினி அறிவியல் தமிழ் மீடியம் | மாதிரி வினாத்தாள்கள் | முக்கிய வினாக்கள் | கேள்வி விடை தொகுப்பு | வினாத்தாள்கள் | பொதுத்தேர்வு மாதிரி வினாத்தாள்கள் , Computer Science / கணினி அறிவியல் பாடத்திற்கான மாதிரி வினாத்தாள்கள், முக்கிய கேள்வி-விடைகள், ஒருமார்க் கேள்விகள், காலாண்டு & பொதுத்தேர்வு கேள்வித் தொகுப்புகள்
Questions + Answers key
Take MCQ Computer Science Test

1.
Tuple-ல் ஒன்றுக்கு மேற்பட்ட மதிப்புகளை திருப்புதல் என்பதை எடுத்துக்காட்டு மூலம் விளக்குக.
2.
remove ( ), Clear ( ), Pop ( ) செயற்கூறுகளை எடுத்துக்காட்டுடன் விளக்குக.
3.
DBMS-ன் கூறுகள் பற்றி விரிவாக விளக்குக.
4.
வட்ட வரைபடம் என்றால் என்ன? எடுத்துக்காட்டுடன் விளக்குக
5.
ஹிஸ்டோகிராம் மற்றும் பட்டை வரைபடங்களுக்கு இடையேயான வேறுபாடுகளை எழுதுக
6.
Tuple -விளக்கமாக எழுதுக.
7.
விகிதமுறு எண்களைக் கொண்டு அருவமாக்க தரவு வகையை உருவமைப்பு செய்தலை பற்றி விரிவாக எழுதுக.
8.
SQL துணைநிலை கூற்றை எடுத்துக்காட்டுடன் விளக்குக
9.
அட்டவணையை எவ்வாறு உருவாக்க முடியும் என்பதனை எடுத்துக்காட்டுடன் விளக்குக
10.
கொடுக்கப்பட்ட சரத்தில் உள்ள எழுத்துக்கள் மற்றும் மெய் எழுத்துக்களின் எண்ணிக்கையை கண்டறியும் பைத்தான் நிரலை எழுதுக.
11.
கொடுக்கப்பட்ட சரம் பாலின்ட்ரோமா இல்லையா என்பதை சோதிக்கும் பைத்தான் நிரலை எழுதுக.
12.
பின்வருவன பற்றி விரிவாக எழுதுக
(i) TRUNCATE கட்டளை
(ii) DROP TABLE கட்டளை
13.
SQL ன் பல்வேறு செயலாக்க திறன்கள் பற்றி எழுதுக.
14.
கீழேகாணும் நிரலின் வெளியீட்டை எழுதவும்.
x=20
x+=20
print ("The x +=20 is =",x)
x-=5
print ("The x-=5 is =",x)
x*=5
print ("The x*=5 is =",x)
x/=2
print ("The x/=2 is =",x)
x%=3
print ("The x%=3 is =",x)
x**=2
print ("The x**=2 is =",x)
x//=3
print ("The x//=3 is =",x)
#program End
15.
உன்னுடைய பள்ளி நூலகத்தில் உள்ள புத்தகங்களை பதிவு செய்து, புத்தகங்களின் பட்டியலை காட்டும் பைத்தான் நிரலை எழுதுக.
16.
இனக்குழுவைப் பயன்படுத்தி வட்டத்தின் பரப்பையும், சுற்றளவையும் கணக்கிடும் பைத்தான் நிரலை எழுதுக.
17.
இரண்டு எண்களின் HCF கண்டுபிடிப்பதற்கான பைத்தான் நிரலை எழுதுக.
18.
பைத்தானில் பயன்படுத்தப்படும் செயலுருபுகளை பற்றி விளக்கமாக எழுதுக.
19.
தேர்ந்தெடுப்பு வரிசையாக்கம் நெறிமுறையை விளக்கமாக எழுதுக
20.
நெறிமுறைக்கும், நிரலுக்கும் உலகள வேறுபாட்டை எழுதுக
21.
கீழ்க்காணும் அமைப்பில் எண்களை அச்சிடுவதை விளக்கும் நிரலை எழுதுக.
1)
5 5 5 5 5
4 4 4 4
3 3 3
2 2
1
2)
1 2 3 4 5
1 2 3 4
1 2 3
1 2
1
22.
Jump கூற்றின் வகைகளை விளக்கமாக எழுதுக.
23.
பைத்தான் எவ்வாறு C++ நிரல்களின் பிழைகளைத் கையாள்கிறது என்பதை எடுத்துக்காட்டுடன் விளக்குக.
24.
அணுகல் கட்டுப்பாடு - விளக்கமாக விவரிக்கவும்
25.
தனியப்பன் Dialects உடன் CSV கோப்பாக Dictionary-ல் எழுதும் பைத்தான் நிரலை எழுதுக.
26.
CSV கோப்பின் அனைத்து வரிசையில் உள்ள மதிப்புகளையும் பட்டியலாக சேமிக்கும் பைத்தான் நிரலை எழுதுக.
27.
பின்வரும் செயற்கூறுகளின் பயன்பாட்டை எழுதுக.
(அ) plt.xlabel
(ஆ) plt.ylabel
(இ) plt.title
(ஈ) plt.legend( )
(உ) plt.show( )
28.
Matplotlib திரையில் காணப்படும் பல்வேறு பொத்தான்களை விளக்குக.
29.
HAVING துணைநிலைக்கூற்றின் பயன் யாது? எடுத்துக்காட்டு தருக.
30.
SQLite பற்றி விரிவாக எழுதவும். அதனை பயன்படுத்தும் படிநிலைகளை எழுதுக.
31.
கீழ்காணும் c++ நிரலை செயல்படுத்த ஒரு பைத்தான் நிரலை எழுதவும்.
#include < iostream >
using namespace std;
int main()
{ cout << “WELCOME”;
return(0);
}
The above C++ program is saved in a file welcome.cpp
32.
getopt( ) என்ற செயற்கூறின் தொடரியலை எழுதி, அதன் செயலுறுப்புகளையும், திருப்பியனுப்பும் மதிப்புகளையும் விளக்குக.
33.
CSV கோப்பிலுள்ள தரவை வடிவமைப்பதற்கு பின்பற்றவேண்டிய விதிமுறைகளை எழுதுக.
34.
தனிப்பயனாக்கம் பிரிப்பானுடன் கூடிய CSV கோப்பை எழுதுவதற்கான பைத்தான் நிரலை எழுதுக.
35.
பணியாளர்களுக்கான ஏதேனும் ஐந்து புலங்களைக் கொண்ட ஒரு அட்டவணையை உருவாக்க ஒரு SQL கூற்றினை எழுதி, அந்த பணியாளர் அட்டவணைக்கு ஒரு அட்டவணை கட்டுப்பாட்டை உருவாக்கவும்.
36.
37.
ஒட்டுதல், வெட்டுதல், வேறுபாடு மற்றும் கார்டீசியன் பெருக்கல் போன்றவற்றை பொருத்தமான எடுத்துக்காட்டுடன் விளக்குக.
38.
DBMS மற்றும் RDBMS வேறுபடுத்துக.
39.
எழுது பொருட்களை (stationery) சேர்க்க அல்லது நீக்கும் பட்டியல் முறை நிரல் ஒன்றை எழுதுக. பொருள்களின் பெயர் மற்றும் பிராண்ட் - யை ஒரு dictionary - யில் சேமிக்க வேண்டும்.
40.
பைத்தானிலுள்ள பல்வேறு set செயல்பாடுகளை பொருத்தமான எடுத்துக்காட்டுகளுடன் விளக்குக.
41.
பின்னலான Tuple என்றால் என்ன? எடுத்துக்காட்டுடன் விளக்குக.
42.
பைத்தானில் பயன்படும் சர செயற்குறிகளை தகுந்த எடுத்துக்காட்டுடன் விளக்குக.
43.
இரண்டு எண்களின் LCM கண்டுபிடிப்பதற்கான பைத்தான் நிரலை எழுதுக.
44.
செயற்கூறின் வகைகளை எடுத்துக்காட்டுடன் விவரி.
45.
அனைத்து மூன்று இலக்க ஒற்றைப்படை எண்களை வெளியிடுவதற்கான நிரலை எழுதுக.
46.
for மடக்குப் பற்றி விரிவான விடையளிக்கவும்.
47.
பைத்தானில் உள்ள வில்லைகள் பற்றி எழுதுக
48.
input ( ) மற்றும் print( ) செயற்கூறுகள் பற்றி விளக்கு.
49.
இயங்கு நிரலாக்கத்தின் கருத்துருவை பொருத்தமான எடுத்துக்காட்டுடன் விளக்கவும்.
50.
வரிசைமுறை தேடல் நெறிமுறையை விவாதிக்கவும்.
51.
தொகுதி நிரலாக்கத்தின் பயன்களை எழுதுக?
52.
தொகுதிகளின் ஐந்து பண்பியல்புகளை எடுத்துக?
53.
List என்றால் என்ன? ஏன் List,, Pairs என்று அழைக்கப்படுகிறது. எடுத்துக்காட்டுடன் விவரி.
54.
தரவு அருவமாக்கம் எவ்வாறு செயல்படுத்துவாய்? எடுத்துக்காட்டுடன் விளக்குக.
55.
இடைமுகம் மற்றும் செயல்படுத்துதலை எடுத்துக்காட்டுடன் விளக்குக.
56.
1.
ஒரு செயற்கூறு ஒரு நேரத்தில் ஒரு மதிப்பை மட்டுமே திருப்பி அனுப்ப முடியும். ஆனால் பைத்தான், செயற்கூறிலிருந்து ஒன்றுக்கு மேற்பட்ட மதிப்புகளை திருப்பி அனுப்புகிறது. பைத்தான் பல மதிப்புகளை தொகுத்து, அவைகளை ஒன்றாக திருப்பி அனுப்புகிறது.
எடுத்துக்காட்டு :
def Min_Max(n):
a = max(n)
b = min(n)
return(a,b)
Num = (12,65,84,1,18,85,99)
(Max_Num, Min_Num) = Min_Max(Num)
print("Maximum value = "Max_Num)
print("Minimum value = ",Min_Num)
வெளியீடு :
Maximum value = 99
Minimum value = 1
2.
(i) remove ( ) செயற்கூறு சுட்டெண் தெரியாத ஒன்று அல்லது அதற்கு மேற்பட்ட உறுப்புகளை நீக்குவதற்கு பயன்படுகிறது.
(ii) remove ( ) செயற்கூறு மட்டுமல்லாமல் pop ( ) செயற்கூறும் கொடுக்கப்பட்ட சுட்டெண்களை பயன்படுத்தி, ஒரு உறுப்பை நீக்க பயன்படுகிறது. pop ( ) செயற்கூறு சுட்டெண் கொடுக்கப்படாத போது List-ன் கடைசி உறுப்பை நீக்கி அதை காண்பிக்கிறது.
(iii) clear( ) செயற்கூறு List-ன் அனைத்து உறுப்புகளையும் நீக்க பயன்படுகிறது.இது உறுப்புகளை மட்டுமே நீக்கி,List-ஐ தொடர்ந்து வைத்திருக்கிறது. Del கூற்று முழு லிஸ்ட்-ஐ நீக்குகிறது.
தொடரியல்:
List.remove(element) # ஒரு குறிப்பிட்ட உறுப்பை நீக்க
List.pop(index of an element)
List.clear( )
எடுத்துக்காட்டு :
> > >MyList=[12,89,34, 'Kannan', 'Gowrisankar', 'Lenin']
> > >print(MyList)
[12, 89, 34, 'Kannan', 'Gowrisankar', 'Lenin']
> > >MyList.remove(89)
> > >print(MyList)
[12,34,'Kannan', 'Gowrisankar', 'Lenin']
(iv) மேலே உள்ள எடுத்துக்காட்டில், MyList மூன்று முழு எண்கள் மற்றும் மூன்று சரநிலையுரு உறுப்புகளுடன் உருவாக்கப்பட்டுள்ளது. அதன்பின் உள்ள print கூற்று List-ல் உள்ள அனைத்து உறுப்புகளையும் காண்பிக்கிறது. MyList.remove(89) கூற்று, List-ல் இருந்து 89 என்ற உறுப்பை நீக்குகிறது. பின்வரும் print கூற்று மீதமுள்ள உறுப்புகளை காண்பிக்கிறது.
> > > MyList.pop(1)
34
> > >print(MyList)
[12,'Kannan', 'Gowrisankar', 'Lenin']
(v) மேலே உள்ள குறிமுறையில், pop ( ) செயற்கூறு குறிப்பிட்ட உறுப்பை அதன் சுட்டெண்ணை பயன்படுத்தி நீக்குவதற்கு பயன்படுகிறது. உறுப்பு நீக்கப்பட்டவுடன் pop( ) செயற்கூறு நீக்கப்பட்ட உறுப்பை காண்பிக்கிறது.
pop( ) செயற்கூறு லிஸ்டில் இருந்து ஒரு உறுப்பை மட்டும் நீக்கப் பயன்படுகிறது. Del கூற்று பல உறுப்புகளை நீக்குகிறது.
எடுத்துக்காட்டு :
> > > MyList.clear( )
> > >print(MyList)
[ ]
(vi) மேலே உள்ள குறிமுறையில், clear( ) செயற்கூறு உறுப்புகளை மட்டும் நீக்கி List-ஐ தொடர்ந்து வைத்திருக்க பயன்படுகிறது. உறுப்புகள் நீக்கப்பட்ட List-ஐ அச்சிடுவதற்கு நீங்கள் முயன்றால், எந்தவொரு உறுப்பும் இல்லாத காலியான சதுர அடைப்புக் குறி தோன்றும். அதாவது list காலியாக இருக்கும்.
3.
தரவுத்தள மேலாண்மை அமைப்பு (DBMS) பின்வரும் ஐந்து கூறுகளாக பிரிக்கப்பட்டுள்ளது.
(i) வன்பொருள்
(ii) மென்பொருள்
(iii) தரவு
(iv) வழிமுறைகள்/செயல்முறைகள்
(v) தரவுத்தள அணுகல் மொழிகள்
(i) வன்பொருள்: கணினி, வன்வட்டு, தரவுக்கான உள்ளீடு/வெளியீடு சாதனங்கள் மற்றும் தரவைச் சேமிக்கப் பயன்படும் வேறு பாகங்கள்
(ii) மென்பொருள்: அனைத்தையும் கட்டுப்படுத்தும் மிக முக்கியமான நிரலின் கூறு ஆகும். DBMS மென்பொருளானது தரவுத்தள அணுகல் மொழிகளைப் புரிந்து கொள்ள மற்றும் இயக்கத்திற்கான தரவுத்தள கட்டளைகளை நிரல் பெயர்க்க தகுதி வாய்ந்தது.
(iii) தரவு: இது DBMS ஐ வடிவமைப்பதற்கான வளம் ஆகும். DBMS தரவுகளை சேமிக்கவும், பயன்படுத்தவும் உருவாக்கப்படுகிறது.
(iv) வழிமுறைகள்/செயல்முறைகள்: இது தரவுத்தள மேலாண்மை அமைப்பை பயன்படுத்துவதற்கான பொதுவான கட்டளைகள் ஆகும். அதாவது, DBMSஐ நிறுவுதல், தரவுத்தளங்களின் பிரதி எடுத்தலை (Backups) நிர்வகித்தல் அறிக்கை தயாரித்தல் போன்றவை ஆகும்.
(v) தரவுத்தள அணுகல் மொழிகள்: இவை தரவுத்தளத்தில் சேமிக்கப்பட்ட தரவுகளை அணுகுதல், சேர்த்தால், புதுப்பித்தல் மற்றும் நீக்குதல் போன்ற கட்டளைகளை எழுதுவதற்கு பயன்படும் மொழிகள் ஆகும்.
4.
வட்ட வரைபடம் ஒரு பொதுவான விளக்கப்பட வகையாகும். வட்ட வடிவில் தோன்றும் இந்த வரைபடம் எண் விகிதத்தில் விளக்கும் விதத்தில் துண்டுகளாக பிரிக்கப்பட்டிருக்கும். வட்ட வரைப்படத்தில் உள்ள துண்டுகள் முழு படத்துடன் உள்ள உறவை வெளிக்காட்டும்
Matplotlib கொண்டு வட்ட வரைபடத்தை உருவாக்க நாம் plt.pie( ) செயற்கூறினை பயன்படுத்த autopct அளவுரு, python சாரம் வடிவமைப்பை பயன்படுத்தி மதிப்பை சதவீதத்தில் காட்டும்.
எடுத்துக்காட்டு:
import matplotlib.pyplot as plt
sizes = [89, 80, 90, 100, 75]
labels = ["Tamil", "English", "Maths", "Science", "Social"]
plt.pie (sizes, labels = labels, autopct = "%.2f")
plt.axis , aspect ("equal")
plt.show ( )
வெளியீடு:
5.
ஹிஸ்டோகிராம் மற்றும் பட்டை வரைபடங்களுக்கு இடையே உள்ள வேறுபாடுகளை பின்வருமாறு குறிப்பிடலாம்:
1. ஹிஸ்டோகிராம் வரைபடம், எண் வகை தரவுகளுக்கு இடையேயான அதிர்வெண்ணை பட்டை வடிவ வரைபடத்தில் காட்டும், பட்டை வரைபடம் பல்வேறு வகையான தரவுகளை ஒப்பிட பயன்படுகிறது.
2. ஹிஸ்டோகிராம், மாறிகளின் தொடருக்கு இடையேயான அதிர்வெண்ணை பட்டை வடிவ வரைபடம் வெவ்வேறான மாறிகளை ஒப்பிடும் படத்தை காண்பிக்கும்
3. ஹிஸ்டோகிராம் எண்வகை தரவுகளும், பட்டை வரைபடம் வகைப்படுத்தப்பட்ட தரவுகளிலும் செயலாற்றும்.
4. ஹிஸ்டோகிராம் உள்ள பட்டைகளுக்கு இடையே இடைவெளியிருப்பதில்லை. ஆனால் பட்டை வரைப்படத்தில் தோன்றும் பட்டைகளிடையே முறையான இடைவெளிகள் மூலம் தரவுகளுக்கிடையே தொடர்பின்மையை காண்பிக்கும்
5. ஹிஸ்டோகிராம் எண்கள் உறுப்புகளாக அவை தரவுகளின் தொடர்புகளை வெளிப்படுத்த ஒன்றாக வகைப்படுத்தப்படும், பட்டை வரைபடத்தில் தரவுகள் தனி உறுப்புகளாக கருதப்படுகிறது
6. பட்டை வரைப்படத்தில் தொகுதிகளை உச்ச மதிப்பிலிருந்து குறைந்த மதிப்பிற்கு மறு வரியிறக்கம் செய்ய முடியும். ஆனால் ஹிஸ்டோகிராமில் இவை தொடர் வரிசையாக இருப்பதால் இது சாத்தியமில்லை.
7. ஹிஸ்டோகிராமில் செவ்வக தொகுதியின் அகலம் ஒரே அளவில் இல்லாதிருக்கலாம். ஆனால் பட்டை வரைபடத்தில் எப்போதும் அகலம் ஒரே மாதிரியானதாக இருக்கும்.
6.
Tuple:
(i) Pairs என்பது இரு தரவு பகுதிகளை சேமிக்கும் கலவை தரவு என்பதை நினைவில் கொள்ள வேண்டும்.
(ii) இதுவரை இருவேறு முறைகளில் pairs தரவு வகை உருவமைப்பை முதல் வழி, List கொண்டு உருவமைத்தல் மற்றும் இரண்டாம் வழி Tuple கொண்டு வடிவமைத்தல் ஆகும்.
(iii) tuple என்பது அடைப்புக்குறிக்குள் கொடுக்கப்பட்டுள்ள தொடர் மதிப்புகளை காற்புள்ளியில் பிரிக்கப்பட்டிருக்கும். tuple என்பது List போன்றதாகும்.
(iv) இவை இரண்டிற்கும் உள்ள வேறுபாடு என்னவென்றால் tuple -ல் கொடுக்கப்பட்ட உறுப்புகளை மாற்ற முடியாது, ஆனால் List -ல் இடம்பெற்றுள்ள உறுப்புகளை மாற்றலாம். எடுத்துக்காட்டு:
colour = ('red', 'blue', 'Green')
Tuple-சை Pair உருவமைத்தல்:
nums: = (1, 2)
nums[0]
1
nums[1]
2
(v) சதுர அடைப்புக்குறி குறியீடு, பேர்ஸில் சேமிக்கப்பட்டுள்ள தரவுகளை அணுகுவதற்கு பயன்படுகிறது என்பதை கவனிக்கவும். தரவுகள் பூஜ்யம் சுட்டு வரிசைப்பட்டுள்ளதால், முதல் உறுப்பு nums[0] என்றும் இரண்டாம் உறுப்பு nums[1] என்றும் அணுகப்படும்.
7.
(i) தரவு அருவமாக்கத்தின் அடிப்படை நோக்கம், நிரலினை அருவமாக்க தரவில் இயக்கும்படி கட்டமைப்பதாகும். அதாவது, நிரலில் தரவுகளை பயன்படுத்திக் கொள்ளும் போது அதைப்பற்றி சில ஊகங்களை செய்து கொள்ள வாய்ப்புள்ளது. அதே வேளையில் கான்கீரிட் தரவு உருவமைக்கும் போது நிரலின் தனிப்பகுதியாக வரையறை செய்ய வேண்டும்.
(ii) அனைத்து நிரல்களும் இரு பகுதிகளை கொண்டிருக்கும். அருவமாக்க தரவின் மீது செயல்படும் பகுதி மற்றும் அருவமாக்க தரவு வகையை செயல்படுத்தும் சில செயற்கூறுகளின் தொகுப்பை கொண்டு கான்கீரிட் உருவமைப்பை வரையறுக்கும் என இரு பிரிவுகளை கொண்டிருக்கும்.
(iii) எடுத்துக்காட்டு: விகிதமுறு எண்கள் முழு எண்களின் விகிதமாகும். அவை மெய் எண்களின் முக்கிய துணை வர்க்கமாக அமைகிறது. 8/3 அல்லது 19/23 போன்ற விகிதமுறு எண்களை பின்வருமாறு எழுதலாம்.
< தொகுதி > / < பகுதி >
(iv) தொகுதி மற்றும் பகுதி ஆகிய இரண்டும் முழு எண்ணின் இடம் மதிப்புகளாகும். இந்த இரண்டு பகுதிகளும் விகிதமுறு எண்களை சரியாக கணிப்பதற்கு பயன்படுகிறது. முழு எண்களை வகுக்கும் போது முழு எண்ணின் துல்லியம் இழந்து தோராயமான மிதவை எண் கிடைக்கிறது.
8/3 =2. 6666666666666665 எனினும், சரியான முறையில் விகிதமுறு எண்களை குறிப்பதற்கு தொகுதி, பகுதி ஆகிய இரண்டையும் இணைந்து கொடுக்க வேண்டும்.
(v) செயற்கூறு கருத்துக்களைக் கொண்டு, நிரலின் சில பகுதிகளை செயல்படுத்துவதற்கு முன்னதாக நாம் ஒரு நிரலின் செயல்திறனை மேம்படுத்திக் கொள்ள முடியும். நாம், ஒரு விகிதமுறு எண்ணை, தொகுதி மற்றும் பகுதி கொண்டு அமைக்க முடியும் என்று கருதிக்கொள்வோம். அதே போன்று, கொடுக்கப்பட்ட விகிதமுறு எண்ணிற்கு நாம் தொகுதி மற்றும் பகுதியை தேர்ந்தெடுக்க முடியும். மேலும் கண்ஸ்டரக்டர் மற்றும் செலக்டர்ஸ் கொண்டும் நிறைவேற்றலாம்.
(vi) இதில் விஸ்புல் திங்கிங் என்ற சக்தி வாய்ந்த செயல் யுக்தியை பயன்படுத்தி நிரல் வடிவமைக்கப்படுகிறது. நாம் இதுவரை, ஒரு விகிதமுறு எண் எவ்வாறு அமைக்க வேண்டும் என்றோ அல்லது ஒரு கண்ஸ்டரக்டர் மற்றும் செலக்டர் எவ்வாறு செயல்படுத்தப்படுகிறது.
எடுத்துக்காட்டு:
- - constructor
- - constructs a rational number with numerator n, denominator d
rational(n, d)
- - selector
numer(x) ⇾ returns the numerator of rational number x
denom(y) ⇾ returns the denominator of rational number y
(vii) இப்பொழுது, விகிதமுறு எண்களின் செயல்பாடுகள் செலக்டார் செயற்கூறுகள் நியூமர் மற்றும் டெனாம் கொண்டும் மற்றும் கண்ஸ்டரக்டர் செயற்கூறு ரேஸனல் கொண்டும் வரையறுக்கப்படுகிறது. ஆனால் இச்செயற்கூறுகள் வரையறுக்கப்படவில்லை. நமது தேவை என்னவென்றால், தொகுதி மற்றும் பகுதியை இணைத்து கூட்டு மதிப்பை உருவாக்கும் வழிமுறையாகும்.
(vii) கண்ஸ்டரக்டர்ஸ் மற்றும் செலக்டர்ஸ் கொண்டு விகிதமுறு எண்களை உருவமைக்கும் போலிக் குறிமுறை
x, y: =8, 3
rational(x, y)
numer(x)/numer(y)
- - output: 2. 6666666666666665
8.
(i) SQL DISTINCT துணைநிலை கூற்று : ஒரு குறிப்பிட்ட நெடுவரிசை அல்லது அட்டவணையில் உள்ள நெடுவரிசை அல்லது அட்டவணையில் உள்ள இரட்டிப்பு மதிப்புகளைத் தவிர்ப்பதற்காக DISTINCT துணை நிலை கூற்று பயன்படுகிறது. இந்த சிறப்பு சொல்லைப் பயன்படுத்தும் போது தனித்த மதிப்புகளை பெற முடியும்
எடுத்துக்காட்டு:
import sqlite3
connection = sqlite3.connect("Academy.db")
cursor = connection.cursor( )
cursor.execute("SELECT DISTINCT (Grade)
FROM student")
result = cursor.fetchall( )
print(result)
வெளியீடு:
[('B',), ('A',), ('C',), ('D',)]
மேற்கண்ட எடுத்துக்காட்டில் "distinct" என்ற சிறப்பு சொல்லைப் பயன்படுத்தவில்லை எனில் 4 பதிவுகளுக்குப் பதிலாக 7 பதிவுகள் காண்பிக்கப்பட்டிருக்கும். ஏனெனில், மூல அட்டவணையில் இரட்டிப்பு மதிப்புகளுடன் 7 பதிவுகள் உள்ளன.
(ii) SQL WHERE துணைநிலை கூற்று: குறிப்பிட்ட நிபந்தனைகளை நிறைவேற்றும் பதிவுகளை மட்டுமே பிரித்தெடுக்க WHERE துணைநிலை கூற்று பயன்படுகிறது. பின்வரும் எடுத்துக்காட்டில் "student table" தரவுத்தளத்தில் இருந்து மாணவர்களின் தரவரிசையை மட்டுமே பிரித்தெடுப்பதைக் காணலாம்.
எடுத்துக்காட்டு:
import sqlite3
connection = sqlite3.connect("Academy.db")
cursor = connection.cursor ( )
cursor.execute("SELECT DISTINCT (Grade)
FROM student where gender=M'")
result = cursor.fetchall ( )
print(*result,sep="\n")
வெளியீடு:
('B',)
(,A',)
('C',)
('D',)
(iii) SQL Group By துணைநிலை கூற்று: GROUP BY துணை நிலை கூற்றானது குறிப்பிட்ட பதிவுகளைச் சுருக்கமாக வரிசைகளைக் கொண்ட குழுவாக சேர்க்கிறது. இது ஒவ்வொரு குழுவிற்கும் ஒரு பதிவை கொடுக்கிறது. இது மதிப்பீடு செயற்கூறுகள் (COUNT, MAX, MIN, SUM, AVG) விடைத் தொகுதிகளை ஒன்று அல்லது அதற்கு மேற்பட்ட நெடுவரிசை குழுக்களாக மற்ற பயன்படுகிறது. பின்வரும் எடுத்துக்காட்டு student அட்டவணையில் இருந்து ஆண் மற்றும் பெண் எண்ணிக்கையைக் கணக்கிட்டு விடையைக் காண்பிக்கிறது
எடுத்துக்காட்டு:
import sqlite3
connection = sqlite3.connect("Academy.db")
cursor = connection.cursor ( )
cursor.execute("SELECT gender,count(gender)
FROM student Group BY gender")
result = cursor.fetchall ( )
print(*result,sep = "\n")
வெளியீடு:
('F', 2)
('M', 5)
(iv) SQL ORDER BY துணைநிலைக் கூறு: ORDER BY துணைநிலைக்கூற்று குறிப்பிட்ட புலங்களில் உள்ள தரவுகளை வரிசையாக செய்ய உதவுகிறது. பின்வரும் எடுத்துக்காட்டு, மாணவர் பெயர் மற்றும் வரிசை எண் ஆகியவற்றை அகர வரிசைப்படி காண்பிக்கிறது.
எடுத்துக்காட்டு:
import sqlite3
connection = sqlite3.connect("Academy.db")
cursor = connection.cursor ( )
cursor.execute(" SELECT Rollno,sname
FROM student Order BY sname")
result = cursor.fetchall ( )
print(*result,sep="\n")
வெளியீடு
(1, 'Akshay')
(2, 'Aravind')
(3, 'BASKAR')
(6, 'PRIYA')
(4, 'SAJINI')
(7, 'TARUN')
(5, 'VARUN')
(v) SQL HAVING துணைநிலைக் கூறு: குழு சார்புகளைப் பொறுத்து தரவுகளை வடிகட்ட HAVING துணை நிலைக்கூற்று பயன்படுகிறது. இது WHERE நிபந்தனை கூற்றை ஒத்ததாகும். ஆனால் குழு சார்புகளுடன் பயன்படுகிறது. குழு சார்புகளை WHERE துணை நிலைக் கூற்றில் பயன்படுத்த முடியாது. ஆனால், HAVING துணை நிலைக் கூற்றில் பயன்படுத்த முடியும்.
import sqlite3
connection = sqlite3.connect("Academy.db")
cursor = connection.cursor ( )
cursor.execute("SELECT
GENDER,COUNT(GENDER) FROM
Student GROUP BY GENDER HAVING
COUNT(GENDER > 3")
result = cursor.fetchall ( )
co = [i[0] for i in cursor. description]
print(co)
print(result)
வெளியீடு:
['gender', 'COUNT(GENDER)']
[('M', 5)]
9.
(i) ஒரு வெற்று தரவுத்தளத்தை உருவாக்கிய பிறகு, முடிந்த வரை ஒன்று அல்லது அதற்கு பெறப்பட்ட அட்டவணைகளைச் சேர்க்கலாம்.
அதற்கான கட்டளை அமைப்பு
CREATE TABLE Student (Rollno INTEGER, Sname VARCHAR(20), Grade CHAR(1), gender CHAR(1), Average float(5.2), birth_date DATE, PRIMARY KEY (Rollno));
(ii) மேற்காண் இந்த முறையில் SQL கட்டளை ஷெல் - ல் செய்யப்படுவதைப் போலவே நேரடியாக பைத்தானில் செய்யலாம். SQL அல்லது SQLite க்கு கட்டளைகளை அனுப்ப cursor பொருள் தேவை. பொதுவாக SQL மற்றும் தரவுத்தளத்திலுள்ள cursor என்பது தரவுத்தளப் பதிவுகளின் மீது செயல்படும் ஒரு கட்டுப்பாட்டு அமைப்பாகும்.
(iii) பைத்தானில் cursor( ) வழிமுறையை அழைத்து cursor பொருளை உருவாக்கலாம். Cursor விதைத்தொகுப்பில் இருந்து பதிவுகளை எடுக்க பயன்படுகிறது
(iv) பைத்தானில் SQL கட்டளைகளை மூன்று மேற்கோள் அமைப்புக் குறிகளுக்குள் சரமாக வரையறுக்க வேண்டும்
எடுத்துக்காட்டு:
sql_ command = """
CREATE TABLE Student (Rollno INTEGER PRIMARY KEY,
Sname VARCHAR(20),
Grade CHAR(1),
gender CHAR(1),
Average DECIMAL(5,2),
birth_date DATE);"""
(v) மேலேயுள்ள எடுத்துக்காட்டில் Emp_no என்ற புலம் "INTEGER PRIMARY KEY" (முழு எண் முதன்மைத் திறவுகோல்) என வரையறுக்கப்பட்டுள்ளது. SQLite3 ல் இது போல் பெயரிடப்பட்ட நெடுவரிசையானது தானாகவே அதிகரித்துக் கொள்ளும்.
(vi) வேறு விதமாக கூற வேண்டுமெனில், அட்டவணையில் உள்ள ஒரு நெடுவரிசை INTEGER PRIMARY KEY, என்ற மதிப்பு உள்ளீடாகப் பயன்படுத்தப்படுகிறதோ, அந்த NULL மதிப்பு தானாகவே அந்த நெடுவரிசையில் இதுவரை பயன்படுத்தப்பட்ட மிக உயர்ந்த மதிப்பைவிட ஒன்று மிகுந்து முழு எண்ணாக இருக்கும். வெற்று அட்டவணை எனில் 1 என்ற மதிப்பு பயன்படுத்தப்படும்
10.
str 1=input ("Enter a string: ")
str2="aAeEiIoOuU"
v,c=0,0
for i in str1:
if iin str2:
v+=1
else:
c+=1
print ("The given string contains { } vowels. and { } consonants".formanv,c)
11.
str 1 = input ("Enter a string: ")
str2 ="
index=-1
for i in strl:
str2 += str1[index]
index -= 1
print ("The given string = { } \n The Reversed string = { }".fonnat(strl , str2)
if (strl =str2):
print ("Hence, the given string is Palindrome")
else:
print ("'Hence, the given is not a palindrome")
12.
(i) TRUNCATE கட்டளை:
TRUNCATE கட்டளை அட்டவணையிலுள்ள அனைத்து வரிசைகளையும் நீக்கப் பயன்படுகிறது. அட்டவணையின் வடிவமைப்பு மாறாமல், ஒதுக்கீடு செய்யப்பட்ட இடம் விடுவிக்கப்படும் TRUNCATE கட்டளையின் தொடரியல்
TRUNCATE TABLE table-name;
உதாரணத்திற்கு, மாணவர் அட்டவணையில் உள்ள அனைத்து பதிவுகளையும், அட்டவணையையும் நீக்குவதற்கான கட்டளை:
TRUNCATE TABLE Student;
மாணவர் அட்டவணை நீக்கப்பட்டு நினைவகப்பகுதி விடுவிக்கப்படுகிறது
(ii) DROP TABLE கட்டளை:
DROP TABLE கட்டளை தரவுத்தளத்திலிருந்து ஒரு அட்டவணையை நீக்கப் பயன்படுகிறது. ஒரு அட்டவணையை DROP செய்தால், அட்டவணையில் உள்ள அனைத்து வரிசைகளும் நீக்கப்பட்டு, அட்டவணையில் வடிவமைப்பு தரவுத்தளத்திலிருந்து நீக்கப்படும். அட்டவணையை DROP செய்த பின்பு, அதனை திரும்பப்பெற இயலாது. ஆதலால், DROP TABLE கட்டளைகளை பயன்படுத்தும் போது எச்சரிக்கையாக இருந்தல் வேண்டும். ஒரு அட்டவணையை DROP செய்ய வேண்டுமெனில், அது காலி அட்டவணையாக இருக்க வேண்டும். அட்டவணையில் அனைத்து வரிசைகளையும் DELETE கட்டளை கொண்டு நீக்கப்பட்டிருக்க வேண்டும்
அனைத்து வரிசைகளையும் நீக்க, தேவையான கட்டளை:
DELETE * FROM Student;
அனைத்து வரிசைகளும் நீக்கப்பட்டப் பின்பு, கீழ்காணும் முறையில் DROP TABLE கட்டளையை பயன்படுத்தி அட்டவணையை நீக்கலாம்.
DROP TABLE table-name;
உதாரணத்திற்கு மாணவர் அட்டவணையை நீக்க:
DROP TABLE Student;
13.
SQL ன் பல்வேறு செயலாக்க திறன்கள்:
1. தரவு வரையறை மொழி (DDL - Data Definition Language): SQL DDL - அட்டவணைகளை (Relational) உறவுநிலை திட்டங்களை (கட்டமைப்பு) வரையறுத்தல், நீக்குதல், மாற்றியமைத்தல் மற்றும் குறிப்புகளை உருவாக்கத்திற்கு தேவையான கட்டளைகளை வழங்கும் ஒரு வரையறை மொழியாகும்.
2. தரவை கையாளுதல் மொழி (DML Data Manipulation Language): SQL DML தரவுத்தளங்களில் வரிசைகளை (tuples) - ஐ சேர்க்கவும், நீக்கவும், பரிமாற்றவும் கட்டளைகளை உள்ளடக்கியது
3. உட்பொதிக்கப்பட்ட தரவுக் கையாளுதல் மொழி (EDML-Embedded Data Manipulation Language): SQL ன் உட்பொதிந்த வடிவம், உயர்நிலை நிரலாக்க மொழிகளில் பயன்படுத்தப்படுகிறது.
4. ஏனைய வரையறை: SQL அட்டவணையை பார்வையிடுவதற்காக View கட்டளைகளைக் கொண்டுள்ளது.
5. அங்கீகாரம்: SQL உறவுநிலைக்கான அணுகல் உரிமைகளுக்கான கட்டளைகளையும், அட்டவணைகளை பார்வையிடுதலுக்கான கட்டளைகளையும் கொண்டுள்ளது
6. ஒருமைப்பாடு: SQL நிபந்தனையை பயன்படுத்தி ஒருமைப்பாட்டை சரிபார்த்தலுக்கு படிவங்களை வழங்குகிறது
7. பரிவர்த்தனை கட்டுப்பாடு: கோப்பு பரிமாற்றங்களுக்கான கட்டளைகள் மற்றும் பரிவர்த்தனை செயலாக்கத்தின் கட்டுப்பாட்டையும் SQL கொண்டுள்ளது
14.
வெளியீடு :
The x +=20 is = 30
The x -=5 is = 25
The x *=5 is = 125
The x /=2 is = 62.5
The x %=3 is = 2.5
The x **=2 is = 6.25
The x //=3 is = 2.0
15.
class Library:
def _ init _ ( self ):
self. bookname = " "
self. author = " "
def getdata ( self ):
self. bookname = input ( " Enter Name of the Book: " )
self. author = input ( " Enter Author of the Book: " )
def display ( self ):
print ( " Name of the Book: ", self. bookname )
print ( " Author of the Book: ", self. author )
print ( " \n " )
book = [ ] # empty list
ch = ' y '
while ( ch = = ' y ' ):
print ( " 1. Add new Book \n 2. Display Books " )
resp = int ( input ( " Enter your choice: " ) )
if ( resp = = 1 ):
L = Library ( )
L. getdata ( )
book. append ( L )
elif ( resp = = 2 ):
for x in book:
x. display ( )
else:
print ( " Invalid input . . . . " )
ch = input ( " Do you want continue . . . . " )
16.
class Circle:
pi = 3.14
def _ init _ ( self, radius ):
self. radius = radius
def area ( self ):
return Circle. pi * (self. radius ** 2 )
def circumference ( self ):
return 2 * Circle. pi * self. radius
r = int ( input ( "Enter Radius: " ) )
C = Circle ( r )
print ( The Area = ", C. area ( ) )
print ( " The Circumference = ", C. circumference ( ) )
17.
# python program to find HCF
def HCF (x, y):
if (x >y):
s=y
else:
s=x
for i in range (1, s + 1):
if ((x % i == 0) and (y % i == 0)):
hcf= i
return hcf
x = int (input ("Enter Number 1"))
y= int (input ("Enter Number 2"))
print (HCF (x, y))
18.
தேவைப்படும் செயலுருபுகள்:
1) செயலுருபுகளை சரியான இடவரிசையில் செயற்கூற்றுக்கு அனுப்புவதே தேவைப்படும் செயலுருப்புகள் எனப்படும்.
2) இங்கு, செயற்கூறு அழைப்புக் கூற்றில் உள்ள செயலுருபுகளின் எண்ணிக்கை, செயற்கூறு வரையறையோடு சரியாக பொருந்த வேண்டும்.
3) தொடரியல் பிழையை தவிர்த்து, தேவையான வெளியீட்டை பெறுவதற்கு குறைந்தது ஒரு செயலுருபாவது தேவை.
எடுத்துக்காட்டு:
def printstring( str):
print ("Example - Required arguments ")
print (str)
return
# Now you can call printstring() function
printstring("Welcome")
வெளியீடு:
Example - Required arguments
Welcome
சிறப்புச் சொல் செயலுருபுகள்:
1) அளபுருக்க்களின் பெயரை அடையாளம் கண்டபின்பு சிறப்புச் சொல் செயலுருபானது செயற்கூறினை அழைக்கிறது.
2) சிறப்புச் சொல் செயலுருபின் மதிப்பு அளபுரு பெயருடன் பொருந்த வேண்டும். எனவே, முறையற்ற வரிசையிலும் செயலுருபுகளைக் கொடுக்கலாம்.
எடுத்துக்காட்டு:
def printdata (name):
print ("Example-1 Keyword arguments")
print ("Name :",name)
return
# Now you can call printdata() function
printdata(name = "Gshan")
வெளியீடு:
Example-1 Keyword arguments
Name :Gshan.
தானமைவு செயலுருபுகள்:
1) பைத்தானில், செயற்கூறை அழைக்கும் போது எந்த மதிப்பும் கொடுக்கப்படவில்லை எனில், செயலுருபானது தானாகவே மதிப்பை எடுத்துக் கொள்ளும். இதுவே தானமைவு செயலுருபு ஆகும்.
2) பின்வரும் எடுத்துக்காட்டில் செயலுருபுவை அனுப்பாதபோது தானமைவு Salary -யை அச்சிடுவதைக் காணலாம்.
எடுத்துக்காட்டு:
def printinfo( name, salary = 3500):
print ("Name:", name)
print ("Salary:", salary)
return
printinfo("Mani ")
வெளியீடு:
Name: Mani
Salary: 3500
மாறும் நீள செயலுருபுகள்:
1) சில சமயங்களில், ஏற்கனவே குறிப்பிடப்பட்ட செயலுருபுகளை விட அதிகமான செயலுருபுகளை அனுப்ப வேண்டிய தேவை இருக்கும்.
2) மீண்டும் செயற்கூறினை மறுவரையறை செய்வது கடினமான செயல் அதற்கு பதிலாக மாறும் நீள செயலுருபுகளை பயன்படுத்தலாம்.
3) செயற்கூறு வரையறையில் இது குறிப்பிடப்படுவதில்லை. மாறாக இந்த செயலுருபுகளை குறிப்பிடுவதற்கு * குறியீடு பயன்படுகிறது.
மாறும் நீள செயலுருபின் பொதுவடிவம்:
def function_name(*args):
function_body
return statement
எடுத்துக்காட்டு:
def printnos (*nos):
for n in nos:
print (n)
return
# now invoking the printnos() function
print ('Printing two values')
printnos (1,2)
print ('Printing three values')
printnos (10,20,30)
வெளியீடு:
Printing two values
1
2
Printing three values
10
20
30
19.
தேர்ந்தெடுப்பு வரிசையாக்கம் (Selection Sort):
(i) பட்டியலில் ஒவ்வொரு முறியும் நுழையும் போது ஒரே ஒரு இடமாற்றம் மட்டுமே இருப்பதால், இது குமிழி வரிசையாக்கத்தை விட மேம்பட்டதாகும்
(ii) தேர்ந்தெடுப்பு வரிசையாக்கமானது கருத்துருவின் படி மிகவும் எளிமையான வரிசையாக்க நெறிமுறையாகும்
(iii) இந்த நெறிமுறை, முதலில் மிகச்சிறிய உறுப்பை அணியில் கண்டுபிடித்து அதனை முதல் இருப்பிடத்திலுள்ள உறுப்புகளையும் வரிசைப்படுத்தப்படும் வரை இடமாற்றமானது நடைபெறும்
போலி குறிமுறை:
(i) முதல் உறுப்பில் தொடங்கி அணியில் உள்ள மிகச் சிறிய உறுப்பைத் தேடி, முதல் இடத்தில் உள்ள உறுப்போடு இடமாற்றம் செய்ய வேண்டும். (அணியின் சுட்டு எண் 0 - ல்)
(ii) பிறகு இரண்டாவது இடத்திற்கு சென்று, துணை அணியில் உள்ள மிகச் சிறிய உறுப்பை சுட்டெண் வரை தேட வேண்டும்
(iii) அணி வரிசையாக்கம் செய்யப்படும் வரை, இதை மீண்டும் மீண்டும் செய்தல் வேண்டும் (13, 16, 11, 18, 14, 15} மதிப்புகளைக் கொண்ட ஒரு அணியை எடுத்துக்கொள்வோம்
(iv) தேர்ந்தெடுப்பு வரிசையாக்கம் கொடுக்கப்பட்ட அணியை எவ்வாறு வரிசையாக்கம் செய்கிறது என்பதற்கான விளக்கப்படம் கீழே கொடுக்கப்பட்டுள்ளது
(v) முதல் சுற்றில், மிகச் சிறிய எண் 11 ஆகும். எனவே, அது முதல் இடத்தில இறுதி வைக்கப்படுகிறது
(vi) முதல் உறுப்பைத் தவிர்த்து, மீதமுள்ள உறுப்புகளில் இருந்து அடுத்த மிகச் சிறிய உறுப்பைத் தேட வேண்டும்
(vii) 13 தான் அடுத்த மிகச்சிறிய எண் ஆதலால் அதை இரண்டாம் இடத்தில் இறுதி வைக்கப்படுகிறது
(ix) இவ்வாறு அணியானது வரிசைப்படுத்தப்படும் வரை மீண்டும் மீண்டும் இச்செயல் நடைபெறும்
20.
| வ. எண் | நெறிமுறை | நிரல் |
| 1. | சிக்கலை தர்க்கரீதியாக தீர்க்க உதவுகிறது மற்றும் நிரலுடன் வேறுபட்டிருக்கலாம் | நிரல் என்பது நிரலாக்க மொழியில் நெறிமுறையின் வெளிப்பாடாகும் |
| 2. | செயல்படுத்தப்படும் முறை மற்றும் வடிவமைப்பு நுட்பம் ஆகியவற்றை பொறுத்து இதனை வகைப்படுத்தலாம் | கட்டமைப்பு நிரல் அணுகுமுறை அல்லது பொருள் நோக்கு நிரலாக்க அணுகுமுறையை பயன்படுத்தி இதனை செயல்படுத்த முடியும் |
| 3. | நெறிமுறைக்கு குறிப்பிட்ட விதிமுறைகள் கிடையாது ஆனால் சில வழிகாட்டுதல்களை பின்பற்ற வேண்டும் | தேர்ந்தெடுக்கப்பட்ட மொழியில் குறிப்பிட்ட கட்டளை அமைப்புகளைக் கொண்டு நிரலை எழுதலாம் |
| 4. | போலி குறிமுறையை ஒத்திருக்கும் இதை எந்த கணிப்பொறி மொழியில் வேண்டுமானாலும் செயல்படுத்தலாம் | நிரலாக்க மொழிக்கு மிகவும் குறிப்பிடத் தக்கதாக நிரல் இருக்க வேண்டும் |
21.
(i) for i in range (5, 0, -1): .
for j in range (1, i+ 1):
print (i, end = ' ')
print (end = '\n')
(ii) for i in range (5, 0, -1):
for j in range (1, i+ 1):
print (j, end = ' ')
print (end = '\n')
22.
பைத்தானிலுள்ள JUMP கூற்று, கட்டுப்பாட்டை எந்தவொரு நிபந்தனையுமின்றி, நிரலின் ஒரு பகுதியில் இருந்து மற்றொரு பகுதிக்கு இடமாற்றம் செய்ய பயன்படுகிறது. பைதானில் Jump கூற்றை பயன்படுத்த மூன்று சிறப்புச் சொற்கள் உள்ளன.
அவை: break, continue, pass. பின்வரும் பாய்வுப்படம் break மற்றும் continue பயன்பாட்டை விளக்கும்.
break கூற்று:
1) break கூற்றானது அதை உள்ளடக்கிய மடக்கை விட்டு வெளியேறச் செய்கிறது. நிரலின் கட்டுப்பாடானது, மடக்கின் உடற்பகுதியைத் தொடர்ந்து உடனடியாக இருக்கும் கூற்றுக்கு பாய்கிறது,
2) நிபந்தனையானது தவறு என்று பரிசோதிக்கும் வரை while அல்லது for மடக்கு செயல்படுத்தப்படும். ஆனால், break கூற்றைப் பயன்படுத்தி கட்டுப்பாட்டை மடக்கை விட்டு நிறுத்தி வெளியேறச் செய்யமுடியும்.
3) break கூற்று நிறைவேற்றப்படும் போது, நிரலின் கட்டுப் பாட்டுபாய்வு, மடக்கை விட்டு வெளியேறி, மடக்கு அமைப்பிற்கு இறுதிக்கு அடுத்து உள்ள குறி முறை பகுதியில் இருந்து நிறைவேற்றத் தொடங்கும்.
4) break கூற்று பின்னலான மடக்கின் உள்ளே இருந்தால், break கூற்று மிகவும் உள்ளே உள்ள மடக்கை விட்டு வெளியேறும்.
தொடரியல்:
break
continue கூற்று:
1. continue கூற்றானது break கூற்றைப் போல் இல்லாமல், மடக்கின் மீதமுள்ள குறிமுறையைத் தவிர்த்து அடுத்த மடக்கு செயலை ஆரம்பிக்கும்.
தொடரியல்:
continue
pass கூற்று:
1. pass கூற்று ஒரு null கூற்றாகும். நிரல் பெயர்ப்பி pass கூற்றை நிறைவேற்றும் பொழுது, அதே கூற்றை முழுவதுமாக புறக்கணித்துவிடும். pass கூற்றை இயக்கம் பொழுது எந்த செயல்பாடும் நடைபெறாது.
2. 'if' கூற்றிலும், மடக்கினுள்ளும் எந்த கட்டளையையும் அல்லது கூற்றையும் நிறைவேற்ற வேண்டாம் என நினைக்கும் போது pass கூற்று இயக்கப்படுகிறது.
தொடரியல்:
Pass
23.
பைத்தான் வெற்றிகரமான C++ நிரலை இயக்குவது மட்டுமல்லாது, தொகுத்தலின் போது C++ கூற்றில் ஏதேனும் பிழைகள் இருப்பின் அவற்றை வெளியிடவும் உதவுகிறது. உதாரணத்திற்கு, கீழ்க்காணும் C++ நிரலின் ஒரு பிழை உள்ளது. பைத்தான் மூலம் தொகுக்கும் போது என்ன நேரும் என்பதைத் பார்க்கலாம்.
எடுத்துக்காட்டு :
// C++ program to print the message Hello
// Now select File-s-New in Notepad and type the C++ program
#include< iostream >
using namespace std ;
int main( )
{
std::cout<<"hello"
}
// Save this file as hello.cpp
#Now select File\(\rightarrow \)New in Notepad and type the Python program as main.py
# Program that compiles and executes a .cpp file
# Python main.py -i hello
import sys, os, getopt
def main(argv):
cpp_file ="
exe_ file ="
opts,args = getopt.getopt( argv,"i:" ,['ifile='])
for o, a in opts :
if in ("-i", "--ifile"):
cpp_file = a + '.cpp'
exe_file = a + '.exe'
runecpp_file, exe_file)
def runecpp_file, exe_file):
print=Compiling " + cpp _file)
os.system('g++ ' + cpp_file +' -o' +exe_ file)
print("Running " + exe_file)
print("_______ ")
print
os.system( exe_file)
print
if____ name =='____ main_____ ':
main(sys.argv[l:])
நிரலின் வெளியீடு
C:\Program Files\OpenOffice 4\
program > Python c:\pyprg\main.py -i c:\pyprg\hello
[('-i', 'c:\\pyprg\\hello')] .
Compiling c:\pyprg\heHo.cpp
c:\pyprg\hello.cpp: In function 'int main( )':
before 'return'
std::cout < <"hello"
/\
;
return 0;
------------
Running c:\pyprg\ch14\cpp __file.exe
_______
'c:\pyprg\hello.exe' is not recognized as an internal or external command, operable program or batch file.
C:\Program Files\OpenOffice 4\program>
24.
(i) அணுகல் கட்டுப்பாடு என்பது கணினி சூழலில் உள்ள வளங்களை யாரெல்லாம் பார்வையிட மற்றும் பயன்படுத்த முடியும் என்பதை வரைமுறைப்படுத்தும் ஒரு பாதுகாப்பு தொழில்நுட்பமாகும். இது பாதுகாப்பின் ஒரு அடிப்படைக் கருத்தாகும்.
(ii) பொருளுக்கான ஆபத்தைக் குறிக்கிறது. அதாவது அணுகல் கட்டுப்பாடு என்பது தரவை அணுகுவதற்கான குறிப்பிடப்பட்ட கட்டுப்பாடாகும்.
(iii) பொருள் நோக்கு நிரலாக்க மொழியில் இது அணுகியல்பு வரையறுப்புகள் மூலம் செயல்படுத்தப்படுகிறது
(iv) C++ மற்றும் Java போன்ற பொருள் நோக்கு மொழிகள் Private, Protected, Public என்னும் சிறப்புச் சொற்களைப் பயன்படுத்தி இனக்குழு உறுப்புகளின் அணுகலைக் கட்டுப்படுத்துகிறது
(v) Private உறுப்புகளை இனக்குழுவிற்கு வெளியே இருந்து அணுக முடியாது. இனக்குழுவிற்கு உள்ள மட்டும்தான் கையாள முடியும்
(vi) Public உறுப்புகளை இனக்குழுவிற்கு வெளியே இருந்தும் அணுக முடியும். Public வழிமுறையை செயலாக்க அந்த இனக்குழுவின் பொருள் தேவைப்படுகிறது
(vii) Protected உறுப்புகள் அந்த இனக்குழு மற்றும் அதன் துணை இனக்குழுக்களால் அணுகப்படலாம். இதை அணுகுவதற்கு வேறு எந்த செயல்முறையும் அனுமதிக்காது
(ix) இது (Child) இனக்குழுவின் மரபுரிமை பெற்ற Parent இனக்குழுவின் குறிப்பிட்ட வளங்களை செயல்படுத்துகிறது. மாறி அல்லது வழிமுறையின் அணுகலை திறம்பட கட்டுப்படுத்துவதற்கான எந்த விதமான வழிமுறையையும் பைத்தான் கொண்டிருக்கவில்லை
(x) பைத்தான் ஒரு மாறி அல்லது வழிமுறையின் பெயருக்கு முன்னே ஒற்றை மற்றும் இரட்டை அடிக்கோடிடும் வழக்கத்தைப் பரிந்துரைக்கிறது. இதனால் Private மற்றும் Protected அணுகியல்பு வரையறுப்பிகளின் சில பண்புகளைப் பின்பற்றுகின்றன
(xi) பைத்தானில் தானமைவாக இனக்குழுவின் அனைத்து உறுப்புகளும் Public உறுப்புகளாகவும், C++ மற்றும் Java வில் தானமைவாக Private உறுப்புகளாகவும் உள்ளன
(xii) பைத்தானில் அனைத்து உறுப்புகளையும் இனக்குழுவிற்கு வெளியில் இருந்து அணுகமுடியும். ஆனால், C++ மற்றும் Java - வில் இவ்வாறு அணுக முடியாது
25.
import csv
csv.register_dialect('my Dialect' , delimiter = 'I', quoting=csv.QUOTE_ALL)
with open('c:\\pyprg\\ch13\\grade.csv', 'w') as csvfile:
fieldnames = ['Name', 'Grade']
writer = csv.DictWriter( csvfile,
fieldnames=fieldnames, dialect="myDialect")
writer. writeheader( )
writer.writerows([ {'Grade': 'B', 'Name': Anu'},
{'Grade': 'A', 'Name': 'Beena'},
{'Grade': 'C', 'Name': 'Tarun'} D
print("writing completed")
26.
import csv
# other way of declaring the :filename
inFile= 'c:\\pyprg\\sample.csv'
F=open(inFile,'r')
reader = csv.reader(F)
# declaring array
arrayValue = [ ]
# displaying the content of the list
for row in reader:
arrayValue.append( row)
print(row)
F.close( )
27.
(அ) plt.xlabel
X - அச்சின் தலைப்பை குறிப்பிடுகிறது.
(ஆ) plt.ylabel
Y - அச்சின் தலைப்பை குறிப்பிடுகிறது.
(இ) plt.title
வரைப்படத்தின் தலைப்பை குறிப்பிடுகிறது.
(ஈ) plt.legend( )
plt.legend() கட்டளையைக் கொண்டு கொடாநிலை புனைவுகள் செயலாக்கலாம்.
(உ) plt.show( )
வரைபடத்தை காண்பிக்க உதவுகிறது.
28.
வெளியீட்டு திரையில், நீங்கள் கீழ் இடது மூலையில் சில பொத்தான்களைக் காணலாம். இந்த பொத்தான்களின் பயன்பாட்டை கீழே பார்க்கலாம்
முகப்பு பொத்தான் (Home Button):
வரைப்படத்தில் உலாவ தொடங்கிய உடன் இப்பொத்தான் உதவும். இப்பொத்தானை பயன்படுத்தி அசல் காட்சி திரையை எப்பொழுது வேண்டுமானாலும் பெறலாம்.
முன்னோக்கி /பின்நோக்கி (Forward/Backward buttons)
இப்பொத்தான்கள் உலவிகளில் காணப்படும் முன்னோக்கி/பின்நோக்கி பொத்தான்களைப் போல் பயன்படுகிறது. இப்பொத்தானைப் பயன்படுத்தி முந்தைய இடத்திற்கோ அல்லது முன்னோக்கி செல்லவோ முடியும்.
பான் ஆக்ஸிஸ் பொத்தான் (Pan Axis Button)
சிலுவை போன்ற தோற்றத்தை கொண்ட இப் பொத்தானை கிளிக் செய்து கொண்டே இழுத்து வரைபடத்தினுள் சுற்றி நகரலாம்.
பெரிதாக்கு பொத்தான் (Zoom Button)
குறிப்பிட்ட ஒரு பகுதியை பெரிதாக்க (Zoom-in) இப்பொத்தானை கிளிக் செய்து சதுர வடிவில் இழுக்க அப்பகுதியை மட்டும் பெரிதாக்கப்படும். பெரிதாக்க இடது கிளிக் செய்து இழுக்க வேண்டும். சிறிய தாக்க (Zoom - out) வலது கிளிக் செய்து (Right click) இழுக்க வேண்டும்.
சப் ப்ளாட் கட்டமைப்பு பொத்தான் (Configure Subplots Button)
இப்பொத்தான், படம் மற்றும் வரைவிடத்திற்கு இடையே உள்ள இடைவெளியை கட்டமைக்க உதவுகிறது.
படத்தை சேமிக்கும் பொத்தான் (Save Figure button)
இப்பொத்தான் படங்களை பல்வேறு வடிவங்களில் சேமிக்க உதவும்.
29.
குழு சார்புகளைப் பொறுத்து தரவுகளை வடிகட்ட HAVING துணை நிலைக்கூற்று பயன்படுகிறது. இது WHERE நிபந்தனை கூற்றை ஒத்ததாகும் ஆனால் குழு சார்புகளுடன் பயன்படுகிறது. குழு சார்புகளை WHERE துணை நிலைக் கூற்றில் பயன்படுத்த முடியாது. ஆனால் HAVING துணை நிலைக் கூற்றில் பயன்படுத்த முடியும்.
எடுத்துக்காட்டு:
import sqlite3
connection = sqlite3.connect("Academy.db")
cursor = connection.cursor( )
cursor.execute("SELECT GENDER,COUNT(GENDER) FROM Student GROUP BY GENDER HAVING COUNT( GENDER) > 3")
result = cursor.fetchall( )
co = [i[0] for i in cursor. description]
print(co)
print(result)
வெளியீடு:
['gender', 'COUNT(GENDER)']
[('M', 5)]
30.
(i) SQLite என்பது எளிய உறவுநிலை தரவுத்தள அமைப்பாகும். இது தரவுகளை வழக்கமான தரவுக்கோப்புகளாக கணினியின் உட்புற நினைவகத்தில் சேமித்து வைக்கும்.
(ii) பயன்பாடுகளில் தனியாக MySQL மற்றும் Oracle போன்ற சேவையக தரவுத்தளங்களை பயன்படுத்துவதற்கு பதிலாக இது பயன்பாடுகளுடன் ஒன்றிணைந்து செயல்படும் வகையில் வடிவமைக்கப்பட்டுள்ளது.
(iii) வேகமாகவும், மிகுந்த சோதிக்கப்பட்டதாகவும் மற்றும் நெகிழ்வானதாகவும் உள்ளதால் SQLite-ல் வேலை செய்வது எளிதாகும். SQLite-க்காக பைத்தான் உள்ளிணைந்த நூலகத்தைக் கொண்டுள்ளது. SQLite யைப் பயன்படுத்த,
(iv) படிநிலை 1: sqlite 3 இணைக்கவும்.
(v) படிநிலை 2: connect() வழிமுறையைப் பயன்படுத்தி இணைப்பை உருவாக்கி தரவுத்தளத்தின் பெயரை இணைக்கவும்.
(vi) படிநிலை 3: cursor=connection.cursor() என்றக் கூற்றைப் பயன்படுத்தி cursor என்னும் பொருளை அனுப்பவும்.
(vii) படிநிலை 2 ல் தரவுத்தளத்தை இணைத்தல் என்பது, அணுக வேண்டிய தரவுத்தளத்தின் பெயரை அனுப்புதல் என்பதாகும். அவ்வாறு அனுப்பும்போது, அத்தரவுத்தளம் ஏற்கனவே இருக்குமாயின் அது இணைக்கப்படும். இல்லாவிடில், பைத்தான் கொடுக்கப்பட்ட பெயரில் ஒரு புதிய தரவுத்தளத்தை உருவாக்கும்.
(viii) படிநிலை 3ல் cursor என்பது ஒரு கட்டுப்பாட்டு அமைப்பாகும், இது தரவுத்தளப் பதிவுகளை இணைக்கப் பயன்படுகிறது.
(ix) பைத்தானில், cursor மிக முக்கிய பங்கு வகிக்கின்றது. அனைத்து கட்டளைகளும் cursor பொருள் மூலம் மட்டுமே இயக்கப்படும்.
(x) ஒரு தரவுத்தளத்தில் அட்டவணையை உருவாக்க, ஒரு பொருளை உருவாக்கி அதற்கான SQL கட்டளைகளை எழுத வேண்டும். எடுத்துக்காட்டு:- sql_comm = "SQL statement".
(xi) கட்டளைகளை நிறைவேற்ற cursor வழிமுறையைப் பயன்படுத்தி sql கட்டளையின் பெயரை ஒன்றன் பின் ஒன்றாக அளபுருக்களாக அனுப்ப வேண்டும். sql_commல் பல கட்டளைகள் சேமிக்கப்பட்டு அவை நிறைவேற்றப்படும். அனைத்து செயல்களையும் முடித்த பின்னர் மாற்றங்களைக் கோப்பில் சேமித்து பின்னர் இணைப்பை மூட வேண்டும்.
31.
#Now select File \(\rightarrow \) New in Notepad and type the Python program as main.py
# Program that compiles and executes a .cpp file
# Python main.py -i welcome
import sys, os, getopt
def main(argv):
cpp_file = ''
exe_file = "
opts, args = getopt,getopt(argv,"i:",['ifile='])
for 0, a in opts:
if 0 in ("-i", "--ifile"):
cpp_file = a + '.cpp'
exe_file = a + '.exe'
run(cpp_file, exe_file)
def run(cpp_file, exe_file):
print("Compiling" + cpp_file)
os.system('g++ ' + cpp_file + ' -o ' + exe_ file)
print("Running " + exe_file)
print("-------------------------")
print
os.system( exe_file)
print
if __name__ =='__main__' :
main(sys.argv[1:])
வெளியீடு:

32.
பைத்தான் getopt கூறுநிலை : பைத்தானில் getopt கூறுநிலை கட்டளை வரி தேர்வுகளையும் செயலுருபுகளையும் பிரித்தெடுக்க உங்களுக்கு உதவும். இந்த கூறுநிலை கட்டளைவரி செயலுருபு பிரித்தெடுத்தலை செயல்படுத்த செயற்கூறுகளை வழங்குகிறது.
getopt.getopt செயற்கூறு:
இந்த செயற்கூறு கட்டளை வரி தேர்வுகளையும், அளபுருக்களின் பட்டியலையும் பிரித்தெடுக்கும். இந்த வழிமுறைக்கான தொடரியல் பின்வருமாறு
<opts>,<args>=getopt.getopt(argv, options, [long_options])
அளபுருக்களின் விவரங்கள் :
(i) argv - இது பிரிக்கப்பட வேண்டிய அளபுருக்களின் மதிப்புகளின் பட்டியலைக் குறிக்கும். நமது நிரலில், கட்டளை முழுமையும் பட்டியலாக அனுப்பப்படுகிறது.
(ii) options-இது உள்ளீட்டு அல்லது வெளியீட்டு முறைகளை குறிக்கும். சர எழுத்து தேர்வுக்களாகும். இங்கு 'i' அல்லது 'o' போன்ற தேர்வுகளும், அதைத் தொடர்ந்து முக்காற்புள்ளியும் (:) அமைந்திருக்கும். இங்கு (:) முறைமை குறிப்பிடப் பயன்படுகிறது.
(iii) long_options - இந்த அளபுரு சரங்களின் பட்டியலை கொண்டுள்ளது, Long options-ன் செயலுருபைத் தொடர்ந்து அதன் அமைவிடத்தின் முழு முகவரியுடன் '=' சமக்குறி இடம்பெற வேண்டும். நம்முடைய நிரலில் C++ கோப்பின் பெயர் சரமாக செலுத்தப்படும். மேலும், அது ஒரு உள்ளீடு கோப்பு என்பதைக் குறிக்க, அதனுடன் 'i' என்ற தேர்வும் செலுத்தப்படும்.
வழிமுறை இரண்டு உறுப்புகளை கொண்டுள்ள மதிப்புகளை திருப்பியனுப்பும். இவை ஒவ்வொன்றும் தனித்தனியாக opts மற்றும் args என்ற இரண்டு வெவ்வேறு பட்டியலில் (அணிகள்) சேமிக்கப்படும்.
Opts முறைமை, பாதைப் போன்ற பிரிக்கப்பட்ட சரங்களின் பட்டியலைக் கொண்டிருக்கும். Args, தவறான பாதை அல்லது முறைமையின் காரணமாக பிரிக்கப்பட முடியாத எந்தவொரு சரத்தின் பட்டியலைக் கொண்டிருக்கும்.
getopt() வழிமுறையின் மூலம் சரங்களை பிரித்தெடுக்கும் போது பிழையேதும் இல்லாவிட்டால் args வெற்று அணியாக அமையும்.
உதாரணத்திற்கு, p4 என்ற C++ கோப்பினை, கட்டளை வரியில் இயக்கப்போகும் பைத்தான் நிரல், பின்வரும் ஒன்றைப் போல getopt() வழிமுறையைக் கொண்டிருக்கும்.
opts, args = getopt.getopt (argv, "i:",['ifile='])
| opts | [('-i', 'c:\\pyprg\\p4')] என்பதைக் கொண்டிருக்கும். |
| -i : | தேர்வு முறைமையினைத் தொடர்ந்து இடம் பெற்றிருக்க வேண்டும். |
| 'c:\\pyprg\\p4' | மதிப்பு C++ கோப்பின் முழுமையான பாதை |
நம்முடைய எடுத்துக்காட்டுகளில், கட்டளை வரி கட்டளைகளை அனைத்தும் பிரிக்கப்பட்டிருப்பதாலும், செயலுருபு மீதமில்லாமலிருப்பதாலும்,
இரண்டாவது செயலுருபு args வெறுமையாக இருக்கும். Print() கட்டளையைப் பயன்படுத்தி args வெளிக்காட்டப்பட்ட செய்திருந்தால், வெளியீடு [] என இருக்கும்.
>>>print(args)
[ ]
33.
CSV கோப்பிலுள்ள தரவை வடிவூட்டம் செய்ய பின்பற்ற வேண்டிய விதிமுறைகள்
(i) ஒவ்வொரு வரிசையும் (தரவின் வரிசை) புதிய வரியில் இருக்க அந்த வரியை நுழைவு பொத்தானை அழுத்த வேண்டும்.
எடுத்துக்காட்டு :↲
xxx,yyy↲
↲ என்ற குறியீடானது நுழைவு விசையை குறிக்கும்.
(ii) கோப்பினில் உள்ள கடைசி பதிவானது வரிமுறிவு/வரி செலுத்தி பிரிப்பானைக் கொண்டிருக்கலாம் அல்லது இல்லாமலும் இருக்கலாம்.எடுத்துக்காட்டாக :
PPP, qqq ↲
yyy, xxx
(iii) சாதாரண பதிவு வரிசைகளின் வடிவங்களை போன்று கோப்பின் முதல் வரிசையில் தோன்றக்கூடிய விருப்பத்தலைப்பு வரிசை இருக்கலாம். கோப்பின் தலைப்பானது புலங்களின் தொடர்புடைய பெயரினை கொண்டிருக்க வேண்டும். மேலும் பதிவுகளிலுள்ள புலங்களின் எண்ணிக்கையில் மீதமுள்ள கோப்பில் இருத்தல் வேண்டும். ↲
எடுத்துக்காட்டு :
field_name1, field_name2, field_name3↲
aaa,bbb,ccc ↲
zzz,yyy,xxx CRLF (Carriage Return and Line Feed)
(iv) தலைப்பு மற்றும் ஒவ்வொரு பதிவிலும் ஒன்று அல்லது அதற்கு மேற்பட்ட புலங்கள் காற்புள்ளியால் பிரிக்கப்பட்டிருக்கலாம். இடைவெளியானது புலத்தின் ஒரு பகுதியான கருதப்படும் மேலும் நிராகரிக்கப்பட மாட்டாது. பதிவின் கடைசி காற்புள்ளியை தொடர்ந்து காற்புள்ளி இடம் பெறல் கூடாது.எடுத்துக்காட்டு :Red,Blue
(v) ஒவ்வொரு புலமும் இரட்டை மேற்கோள் குறிகளுக்குள் கொடுக்கப்படலாம் அல்லது கொடுக்கப்படாமல் இருக்கலாம். புலமானது இரட்டை மேற்கோள் குறிகளுக்குள் தரப்படவில்லையெனில், புலங்களில் இரட்டை மேற்கோள் குறியானது தோன்றாது: எடுத்துக்காட்டு:
"Red","Blue","Green"↲ # இரட்டை மேற்கோள் குறிகளுடன் உள்ள புலத்தின் தரவு
Black, White, Yellow # இரட்டை மேற்கோள் குறிகள் இல்லாத புலத்தின் தரவு
(vi) புலங்களில் வரிதிருப்பி (CRLF), இரட்டை மேற்கோள் குறி மற்றும் காற்புள்ளி போன்றவைகளை கொண்டிருந்தால் அவைகள் இரட்டை மேற்கோள் குறிகளுக்குள் கொடுக்கப்பட வேண்டும்.
எடுத்துக்காட்டு :
Red,",",Blue CRLF # காற்புள்ளியே ஒரு புலத்தின் மதிப்பாக இருப்பதால் அதை இரட்டை மேற்கோள் குறிக்குள் கொடுக்கப்பட வேண்டும்.
Red, Blue, Green
(vii) புலமானது இரட்டை மேற்கோள் குறிகளுக்குள் கொடுக்கப்பட்டிருக்க வேண்டுமெனில், இரட்டை மேற்கோள் குறிகளுக்குள் உள்ள புலமானது மற்றொரு இரட்டை மேற்கோள் குறிகளுக்குள் அமைக்கப்பட வேண்டும்.
""Red"", ""Blue"", Green # இரட்டை மேற்கோள்குறி ஒரு புலத்தின் மதிப்பாக இருப்பதால் அதை மற்றொரு இரட்டை மேற்கோள் குறிக்குள் அமைக்கப்பட வேண்டும்.
34.
import csv
info = [['SNO', 'Person', 'DOB'],
['1', 'Madhu', '18/12/2001'],
['2', 'Sowmya','19/12/1998'],
['3', 'Sangeetha','20/3/1999'],
['4', 'Eshwar', '21/4/2000'],
['5', 'Anand', '22/5/2001']
csv.register_dialect('myDialect' ,quoting=csv. QUOTE_ALL)
with open(' c:\\pyprg\\ch13\\person.csv' ,'w') as f:
writer = csv.writer(f, dialect='myDialect')
for row in info:
writer.writerow(row)
f.close( )
35.
CREATE TABLE employee
(
empcode integer NOT NULL,
name char(20),
desig char(20),
Pay integer,
allowance integer,
PRIMARY KEY (empcode)
);
36.

37.
உறவுநிலை இயற்கணிதம் பல்வேறு தொகுதிகளாகப் பிரிக்கப்பட்டுள்ளது.
ஒரும உறவுநிலைச் செயற்பாடுகள்
SELECT ( symbol: \(\sigma \))
PROJECT (symbol:\(\Pi \) )
Set தேற்றத்தில் இருந்து உறவுநிலை இயற்கணித செயற்பாடுகள்
1) ஓட்டுதல் (∪)
2) வெட்டுதல் (\(\cap\))
3) வேறுபாடு (-)
4) கார்டீசியன் பெருக்கல் (X)
SELECT (symbol:\(\sigma \))
1) பொதுவடிவம் \(\sigma \)c (R): என்பது உறவுநிலை மற்றும் அதனுடைய பண்புக்கூறுகளின் நிபந்தனை C.
2) இந்த select செயற்பாடு ஒரு நிபந்தனையின் அடிப்படையில் துணைத் தொகுதியை tuples களுடன் தேர்ந்தெடுக்க உதவுகிறது.
3) நிபந்தனைகளை நிறைவேற்ற tuples களை Select வடிகட்டுகிறது.
STUDENT:
| Stud no | Name | Course | Year |
| cs 1 | Kannan | Big Data | II |
| cs 2 | Gowri Shankar | R language | I |
| cs 3 | Lenin | Big Data | I |
| cs 4 | Padmaja | Python Programming | I |
அட்டவணை A
\(\sigma \)course= "Big Data" (STUDENT) :
| Stud no | Name | Course | Year |
| cs 1 | Kannan | Big Data | II |
| cs 3 | Lenin | Big Data | I |
PROJECT (Symbol: II)
1) இந்த PROJECT செயற்பாடு குறிப்பிடப்பட்டுள்ள உள்ளீட்டு தொடர்புகளின் பண்புக்கூறுகளை நீக்குகிறது. இந்த செயற்பாடு கிடைமட்ட துணைத் தொகுதியின் ஒப்பீடுகளை வரையறுக்கிறது
2) எடுத்துக்காட்டு 1 அட்டவணை A ஐ பயன்படுத்தி
\(\Pi \)course(STUDENT)
Result
| Course |
| Big Data |
| R language |
| Python Programming |
எடுத்துக்காட்டு 2 (அட்டவணை A)
\(\Pi \)studno.course(STUDENT)
| Stud no | Course |
| cs 1 | Big Data |
| cs 2 | R language |
| cs 3 | Big Data |
| cs 4 | Python Programming |
ஓட்டுதல் (Symbol: ∪)
1) இது A அல்லது B அட்டவணையில் உள்ள அனைத்து tuples -களையும் உள்ளடக்கியது. இது நகல்களையும் நீக்குகிறது. தொகுதி A ஒட்டுதல் தொகுதி B என்பது A ∪ B
2) எடுத்துக்காட்டு 3( அட்டவணை A ஐ பயன்படுத்தி) பின்வரும் அட்டவணையை நோக்குக.
| Table A | |
| Stud no | Name |
| cs 1 | Kannan |
| cs 3 | Lenin |
| cs 4 | Padmaja |
| Table B | |
| Stud no | Name |
| cs 1 | Kannan |
| cs 2 | Gowri Shankar |
| cs 3 | Lenin |
விடை: அட்டவணை B
| Table A ∪ B | |
| Stud no | Name |
| cs 1 | Kannan |
| cs 2 | Gowri Shankar |
| cs 3 | Lenin |
| cs 4 | Padmaja |
வேறுபாடு (Symbol:-)
1) இது A மற்றும் B அட்டவணைகளை ஒப்பிட்டு A அட்டவணையில் உள்ள வேறுபட்ட tuples களை மட்டும் தருகிறது. B அட்டவணையைத் தவிர்க்கிறது. A பண்புக்கூறின் பெயர் B பண்புக்கூறின் பெயரோடு பொருந்த வேண்டும்.
2) எடுத்துக்காட்டு 4 (அட்டவணை B ஐ பயன்படுத்தி)
விடை:
|
Table A - B |
|
| cs 4 | Padmaja |
வெட்டு (Symbol: \(\cap\))A\(\cap\)B
1) இது A மற்றும் B அட்டவணைகளில் பொதுவாக உள்ள அனைத்து tuples களையும் உள்ளடக்கியது.
2) எடுத்துக்காட்டு 5 (அட்டவணை B ஐ பயன்படுத்தி)
| Table A \(\cap\) B | |
| cs 1 | Kannan |
| cs 3 | Lenin |
கார்டீசியன் பெருக்கல் (Symbol: X)
1) இரண்டு தொடர்புகளை சேர்க்க குறுக்குப் பெருக்கல் வழிவகுக்கிறது. இதன் விடை இரண்டு தொடர்புகளின் இணைப்பைக் கொண்டுள்ளது.
2) AxB என்பது A times B, இங்கு A தொடர்புகள் மற்றும் B தொடர்புகள் என்பன வேறுபட்ட பண்புக்கூறுகளாகும். இந்த வகை செயற்பாடுகள் இரண்டு தொடர்புகளிலிருந்து நெடுக்கைகளை ஒன்று சேர்க்க பயன்படுகிறது.

38.
| ஒப்பீட்டு அடிப்படை | DBMS | RDBMS |
| விரிவாக்கம் | Database Management System தரவுதள மேலாண்மை அமைப்பு | Relational Database Management System உறவுநிலை தரவுதள மேலாண்மை அமைப்பு. |
| தரவு சேமிப்பு | வழிசெலுத்தல் மாதிரி அதாவது ஒன்றோடொன்று இணைக்கப்பட்ட பதிவுகளின் தரவு | உறவுநிலை மாதிரி (அட்டவணையில்) அட்டவணையில் வரிசை மற்றும் நெடுவரிசை உள்ள தரவுகள் |
| மிகைமைத் தரவு | இடம் பெற்றுள்ளது | இடம் பெறவில்லை |
| இயல்பாக்கம் | செய்ய இயலாது | இயல்பாக்கத்தை பயன்படுத்துகிறது. |
| தரவு அணுகல் | அதிக நேரத்தை எடுத்துக் கொள்கிறது. | DBMS உடன் ஒப்பிடும் போது வேகமானது. |
| திறவு கோல்கள் மற்றும் குறியீடுகள் | பயன்படுத்தப்பட வில்லை | உறவுநிலையை உருவாக்குவதற்குப் பயன்படுகிறது. |
| பரிவர்த்தனை மேலாண்மை | திறமையற்றது, பிழைகளைக் கொண்டது பாதுகாப்பற்றது. | திறமையானது மற்றும் பாதுகாப்பானது. |
| பரவல் தகவல் தளம் | ஒத்துழைக்காது | ஒத்துழைக்கும் |
| எடுத்துக்காட்டு | Dbase, FoxPro | SQL server, Oracle, mysql, MariaDB, SQLite, MS - Access |
39.
Class stationery:
def getdata(self):
self.Itemname = input ("enter name of the item")
self.Brand = input ("enter brand name")
item = {}
ch= 'y'
while (ch = = 'y'):
print ("1. Add items \n 2. Delete items")
n = int (input ("enter your choice"))
if (n = = 1):
s = stationery ( )
s.getdata ( )
item.append {S}
elif (n = = 2):
del item
else: print ("Invalid Input")
ch = input ("Do you want to continue (Y/N)")
40.
கணிதத்தில் கற்ற Set செயற்பாடுகள் ஆகிய ஒட்டு (Union), வெட்டு (intersection) வேறுபாடு (difference) சமச்சீரான வேறுபாடு (Symmetric difference) , போன்றவற்றை பைத்தானிலும் பயன்படுத்தலாம்.
ஒட்டு (Union) : இது இரண்டு அல்லது அதற்கு மேற்பட்ட Set -களின் அனைத்து உறுப்புகளையும் உள்ளடக்கும்.

(i) பைத்தானின் என்ற செயற்குறி இரண்டு Set களின் இணைப்பை உருவாக்கப்பயன்படுகிறது. Union செயற்கூறும் பைத்தானின் இரண்டு Set களை இணைக்கப் பயன்படுகிறது.
(ii) எடுத்துக்காட்டு: ஒட்டு (Union) செயற்குறியைப் பயன்படுத்தி இரண்டு Set களை இணைப்பதற்கான நிரல்
set_A ={2,4,6,8}
set_B ={'A','B','C','D'}
U_Set=Set_A | set_B
print(U_set)
வெளியீடு:
{2,4,6,8,'A', 'D', 'C', 'B'}
வெட்டு (intersection) : இது இரண்டு Setகளின் பொதுவான உறுப்புகளை உள்ளடக்கியது.

(i) பைத்தானில் & செயற்குறி இரண்டு Set களை வெட்டுவதற்கு பயன்படுகிறது. வெட்டு (intersection()) செயற்கூறும் பைத்தானில் இரண்டு Set களை வெட்டுவதற்கு பயன்படுகிறது.
(ii) எடுத்துக்காட்டு : intersection()செயற்குறியைப் பயன்படுத்தி இரண்டு Setகளை வெட்டுவதற்கான நிரல்
set_A={'A', 2, 4, 'D'}
set_B={'A', 'B', 'C', 'D'}
print(set_A.intersection (set_B))
வெளியீடு : {'A', 'D'}
வேறுபாடு (Difference): இது முதல்Set(A)ல் உள்ள அனைத்து உறுப்புகளையும் உள்ளடக்கியது. இது இரண்டாவது Set-ஐ தவிர்க்கிறது.

(i) பைத்தானில் -(minus) செயற்குறி Set செயற்பாட்டின் வேறுபாட்டைக் கண்டறிய பயன்படுகிறது. difference() செயற்கூறும் வேறுபாட்டு செயற்பாட்டிற்காக பயன்படுகிறது.
(ii) எடுத்துக்காட்டு : (-) Minus பயன்படுத்தி இரண்டு setகளின் வேறுபாட்டுக்கான நிரல்
set_A={'A', 2, 4, 'D'}
set_B={'A', 'B', 'C', 'D'}
print(set_A - set_B)
வெளியீடு : {2, 4}
சமச்சீரான வேறுபாடு (Symmetric difference): இது இரண்டு Set-ல் உள்ள பொதுவான உறுப்புகளை மட்டும் தவிர்த்து மற்ற அனைத்து உறுப்புகளையும் உள்ளடக்கியது.

(i) Caret(^) செயற்குறி பைத்தானில் சமச்சீரான வேறுபாட்டை கண்டறிய பயன்படுகிறது. Symmetric difference() செயற்கூறும் அதே செயலை செய்ய பயன்படுகிறது.
(ii) எடுத்துக்காட்டு : Caret (^) செயற்குறியைப் பயன்படுத்தி சமச்சீரான வேறுபாட்டை கண்டறியும் நிரல்.
set_A={'A', 2, 4, 'D'}
set_B={'A', 'B', 'C', 'D'}
print(set_A ^ set_B)
வெளியீடு :: {2, 4, 'B', 'C'}
41.
(i) பைத்தானில், ஒரு Tuple-ஐ மற்றொரு Tuple-க்குள் வரையறை செய்வதை பின்னலான Tuples என்கிறோம்.
(ii) பின்னலான Tuples-ல் ஒவ்வொரு Tuple-ல் ஒரு உறுப்பாக கருதப்படுகிறது. for மடக்கு பின்னலான Tuples-ன் அனைத்து உறுப்புகளை அணுகுவதற்கு பயன்படுகிறது.
(iii) எடுத்துக்காட்டு :
Toppers = (("Vinodini", "XII-F", 98.7), ("Soundarya", "XII-H", 97.5), ("Tharani", "XII-F", 95.3), ("Saisri", "XII-G", 93.8))
for i in Toppers:
print(i)
(iv) வெளியீடு :
('Vinodini', 'XII-F', 98.7)
('Soundarya', 'XΙΙ-Η', 97.5)
('Tharani', 'XII-F', 95.3)
('Saisri', 'XII-G', 93.8)
42.
பைத்தான் பின்வரும் செயற்குறிகளை வழங்குகிறது. இச்செயற்குறிகள் சரங்களை கையாள உதவுகிறது.
(i) இணைப்பு (Concatenation +)
இரண்டு அல்லது அதற்கு மேற்பட்ட சரங்களை இணைக்கும் செயல்பாடு சேர்த்தல் அல்லது இணைத்தல் எனப்படும். கூட்டல் செயற்குறி சரங்களை இணைக்கப் பயன்படுகிறது.
எடுத்துக்காட்டு:
> > > "welcome" + "Python"
'welcomePython'
(ii) சேர்த்தல் (Append+=):
ஏற்கனவே உள்ள சரத்தின் இறுதியில் மேலும் புதிய சரம் அல்லது சரங்களை சேர்க்கும் செயல் சேர்த்தல் எனப்படும்.
+= செயற்குறி ஏற்கனவே உள்ள சரத்தின் இறுதியில் புதிய சரத்தினை சேர்க்க பயன்படுகிறது.
எடுத்துக்காட்டு:
> > > str1="Welcome to "
> > > str1 +="Learn Python"
> > > print (str1)
Welcome to Learn Python
பலமுறை (Repeating (*)) :
பெருக்கல் செயற்குறி கொடுக்கப்பட்ட சரத்தினை பல தடவைகள் வெளிப்படுத்த பயன்படுகிறது.
> > > str1="Welcome"
> > > print (str1*4)
Welcome Welcome Welcome Welcome
43.
def lcm(x, y):
if x>y:
greater = x
else:
greater = y
while (True):
if ((greater % x == 0) and (greater % y == 0)):
lcm = greater
break
greater += 1
return lcm
a = int (input ("Enter first number :"))
b = int (input ("Enter second number :"))
print ("The LCM of", a, "and", b, "is", lcm(a,b)).
வெளியீடு :
Enter the first number: 15
Enter the second number: 20
LCM is : 60
44.
| செயற்கூறுகள் | விளக்கம் |
| பயனர் வரையறுக்கும் செயற்கூறுகள் | பயனர்கள் தாங்களாகவே வரையறுக்கும் செயற்கூறுகள் |
| உள்ளிணைந்த செயற்கூறுகள் | பைத்தானில் உள்ளடக்கப்பட்ட செயற்கூறுகள் |
| லாம்டா செயற்கூறுகள் | பெயரில்லாத செயற்கூறுகள் |
| தற்சுழற்சி செயற்கூறுகள் | தற்சுழற்சியாக தன்னைத் தானே அழைத்துக் கொள்ளும் செயற்கூறுகள் |
பயனர் வரையறுக்கும் செயற்கூறின் தொடரியல்
def <function_name ([parameter 1, parameter2 ... ]) >:
<Block of Statements>
return <expression / None>
செயற்கூற்றை வரையறுக்கும் எடுத்துக்காட்டு
def hello( ):
print ("hello - Python ")
return
பைத்தானில், பெயரில்லாமல் வரையறுக்கப்படும் செயற்கூறுவுக்கு பெயரில்லாத செயற்கூறு என்று பெயர். மற்ற சாதாரண செயற்கூறுகள் def என்ற சிறப்பு சொல்லுடன் வரையறுக்கப்படுகிறது. பைத்தானில் பெயரில்லாத செயற்கூறுகள் லாம்டா சிறப்புச் சொல்லுடன் வரையறுக்கப்படுகிறது. எனவே, பெயரில்லா செயற்கூறுகளை லாம்டா செயற்கூறுகள் என்றும் அழைக்கலாம்.
லாம்டா அல்லது பெயரில்லா செயற்கூறின் பயன்கள் :
லாம்டா செயற்கூறு பெரும்பாலும் சிறிய மற்றும் ஒரு முறை பெயரில்லாத செயற்கூறை உருவாக்க பயன்படுகிறது.
filter(), map() மற்றும் reduce () போன்ற செயற்கூறுகளுடன் சேர்த்து லாம்டா செயற்கூறுகளை பயன்படுத்தலாம்.
பெயரில்லா செயற்கூறின் பொது வடிவம்
lambda [argument(s)] :expression
எடுத்துக்காட்டு :
sum = lambda arg 1, arg2: arg 1 + arg2
print ('The Sum is :', sum(30,40))
print ('The Sum is :', sum(-30,40))
வெளியீடு
The Sum is : 70
The Sum is : 10
45.
for a in range (100, 1000):
if a %2==1:
print a
வெளியீடு:
101, 103, 105, 107 ... ... 997, 999
46.
(i) பொதுவாக, for மடக்கு "வரையறுக்கப்பட்ட " மடக்கு என்று அழைக்கப்படுகிறது. ஏனெனில் இந்த மடக்கு சரியாக எத்தனை முறை மீண்டும் மீண்டும் இயங்கும் என்பதை நிரலர் தெரிந்துவைத்திருப்பார்.
தொடரியல் :
for counter_variable in sequence:
statements-block 1
[else: # optional block statements-block 2]
(ii) for....in என்ற கூற்று, பைத்தானில் பயன்படுத்தப்படும் மடக்கு கூற்றாகும். இது தொடர் பொருள்களின் வழியே சுழலும் தன்மையுடையது. அதாவது, ஒரு தொடரின் ஒவ்வொரு மதிப்பின் ஊடாக செல்லும். இங்கே தொடர் என்பது வரிசைபடுத்தப்பட்ட அல்லது வரிசைப்படுத்தப்படாத மதிப்புகள் அல்லது ஒரு | சரமாகவும் இருக்கலாம்.
(iii) கட்டுப்பாட்டு மாறி, ஒவ்வொரு சுழற்சியிலும், தொடரின் கடைசி மதிப்பு வரை, தொடரின் ஒவ்வொரு மதிப்பையும் அணுகும்.
range ()ன் தொடரியல்:
range(start,stop,[step])
எடுத்துக்காட்டு :
| range (1,30,1) | range-ன் மதிப்புகள் 1 முதல் தொடங்கி 29 வரை |
| range (2,30,2) | range() மதிப்புகள் 2 முதல் 28 வரை |
| range (30,3,-3) | range() மதிப்புகள் 30 முதல் 6 வரை |
| range (20) | 20 என்ற மதிப்பை இறுதி மதிப்பாக எடுத்துக்கொண்டு (அல்லது மேல்வரம்பு) 0 முதல் 19 வரையிலான மதிப்புகளைக் கொடுக்கும் (range() எப்பொழுதும் stop மதிப்பு-1 வரை மதிப்பைக் கொடுக்கும் என்பதை நினைவில்கொள்க). |

எடுத்துக்காட்டு : #for மடக்கு பயன்படுத்தி ஒற்றை இலக்க இரட்டைப் படை எண்ணை அச்சிட விளக்கும்
நிரல்
for i in range (2,10,2):
print (i, end = ' ')
வெளியீடு:
2 4 6 8
47.
வில்லைகள்:
பைத்தான், நிரலின் இடம்பெறும் வரிகளை அடிப்படை மொழிக்கூற்றுகளாக பிரிக்கிறது. இந்த கூறுகள் வில்லைகள் எனப்படும் பொதுவாக வில்லைகளின் வகையான,
(i) குறிப்பெயர்கள்
(ii) சிறப்புச் சொற்கள்
(iii) செயற்குறிகள்
(iv) வரம்புக்குறிகள்
(v) நிலைஉருக்கள்
வில்லைகளை பிரிப்பதற்கு வெற்று இடைவெளி கண்டிப்பாக இருத்தல் வேண்டும்
(i) குறிப்பெயர்கள்: மாறி, செயற்கூறு, இனக்குழு, தொகுதி அல்லது பொருள்களை அடையாளம் காணப் பயன்படும் பெயர்கள் குறிப்பெயர் என்று அழைக்கப்படுகிறது
சரியான குறிப்பெயர்களின் எடுத்துக்காட்டு:
Sum, total_marks, regno, num 1
தவறான குறிப்பெயர்களின் எடுத்துக்காட்டுகள்:
12Name, name\(\$\), total - mark, continue
(ii) சிறப்புச் சொற்கள்: நிரலின் அமைப்பை அடையாளம் காண பைத்தான் வரிமொழி மாற்றி சிறப்புச் சொற்களை பயன்படுத்துகிறது. சிறப்பு சொற்கள் மொழிமாற்றியில் குறிப்பிட்ட பொருள் கொண்டுள்ளதால் இவற்றை பிற பயன்பாட்டிற்கு பயன்படுத்தக்கூடாது.
பைத்தான் சிறப்புச் சொற்கள்:
| false | class | finally | is | return |
| None | continue | for | lambda | try |
| True | def | from | nonlocal | while |
| and | del | global | not | with |
| as | elif | if | or | yield |
| assert | else | import | pass | raise |
| break | except | in |
(iii) செயற்குறிகள்: கணிப்பொறி நிரலாக்க மொழியில் செயற்குறிகள் என்ற சிறப்பு குறியீடுகள் கணிப்பீடுகள், நிபந்தனை சோதிப்பு போன்ற செயல்பாடுகளை செய்ய பயன்படுகிறது. செயற்குறிகள் என்பவை குறியீடுகள் இவை செயலேற்பிகளில் உள்ள மதிப்புகளில் செயல்படும். கணித, ஒப்பீடு, தருக்க, மதிப்பிருத்தல் போன்று பல வகை செயற்குறிகள் உள்ளன மதிப்புகள்மற்றும் மாறிகள் செயற்குறியுடன் பயன்படுத்தும் போது செயலேர்பிகள் என்று அழைக்கப்படுகிறது.
(iv) வரம்புக்குறிகள் : சாதாரண உரை அல்லது பிற தரவுத் தொட்டிகளின் தனித்த, சார்பற்ற பகுதிகளின் எல்லைகளை குறிப்பிடப் பயன்படும் ஒன்று அல்லது அதற்கு மேற்பட்ட எழுத்துருக்கள் வரம்புக்குறிகள் ஆகும்.
பைத்தான், குறியீடு அல்லது குறியீடுகளின் தொகுப்பை, கோவை, பட்டியல், அகராதி மற்றும் சரங்களில் பயன்படுத்துகிறது. பின்வருவன பைத்தான் வரம்புக்குறிகளாகும்.
| ( | ) | [ | ] | { | } |
| , | : | . | ' | = | ; |
v) நிலைஉருக்கள் : நிலைஉருக்கள் என்பது மாறிகள் அல்லது மாறிலிகளுக்கு வழங்கப்படும் மூல தரவாகும். பைத்தானில் பல்வேறு வகையான நிலைஉருக்கள் உள்ளன.
எண்கள்
சரம்
பூலியன்
48.
உள்ளீடு மற்றும் வெளியீடு செயற்கூறுகள் :
ஒரு நிரல் பயனர் விரும்பிய பணியை நிறைவேற்றுவதற்கு பயனருடன் தொடர்பு கொள்ள வேண்டும். இதற்கு உள்ளீட்டு - வெளியீட்டு செயற்கூறுகள் பயன்படுகிறது. input( ) செயற்கூறு, ஓர் நிரலை இயக்கம் பொழுது தரவுகளை இயக்கும் பொழுது தரவுகளை உள்ளீடு செய்யவும், print( ) என்ற வெளியீடு செயற்கூறு நிரலின் தீர்வுகளை திரையில் காண்பிக்க உதவுகிறது
Print( ) செயற்கூறு
பைத்தானில், print( ) செயற்கூறு நிரலை இயக்கும் பொழுது தரவுகளை வெளியிட பயன்படுகிறது
print( ) செயற்கூறின் தொடரியல் கீழே கொடுக்கப்பட்டுள்ளது.
print ("string to be displayed as output")
print (variable)
print ("String to be displayed as output", variable)
print ("String1", variable, "String 2", variable, "String 3" .....)
எடுத்துக்காட்டு:
> > > print ("Welcome to Python Programming")
Welcome to Python Programming
> > > x = 5
> > > y = 6
> > > z = x + y
> > > print (z)
11
> > > print ("The sum = ", z)
The sum = 11
> > > print ("The sum of ", x, "and", y, "is", z)
The sum of 5 and 6 is 11
வெளியீடு
Welcome to Python programming
11
The sum = 11
The sum of 5 and 6 is 11
print( ) செயற்கூறு தீர்வுகளை திரையில் காண்பிக்கும் முன் கோவையை மதிப்பீடு செய்யவும். print( ) செயற்கூறினுள் கொடுக்கப்படும் முழு கூற்றினையும் திரையில் காட்டும். காற்புள்ளி(,) கொண்டு print( ) செயற்கூறினுள் ஒன்றுக்கு மேற்பட்ட உருப்புகளை பிரிக்கலாம்.
input ( ) செயற்கூறு
பைத்தானில், input( ) செயற்கூறு நிரலை இயக்கம் பொழுது தரவுகளை உள்ளீடாக பெற்றுக் கொள்ளப் பயன்படுகிறது. input( ) செயற்கூறின் தொடரியல்,
Variable = input ("prompt string")
இந்த தொடரியலில் உள்ள "prompt string" பயனர் கொடுக்கப்பட வேண்டிய உள்ளீடு எதுவென்பதை உணர்த்தும் கூற்று அல்லது செய்தியை கொண்டிருக்கும்
input( ) கட்டளை அமைப்பில் உள்ள "prompt string" திரையில் தோன்றும், பயனர் இதை படித்து உள்ளீடு சாதனத்திலிருந்து எதிர்பார்க்கப்படும் தரவுகளை கொடுக்கலாம். input( ) செயற்கூறு, விசைப்பலகையின் மூலம் தட்டச்சு செய்தவற்றை மாறியில் சேமித்து வைக்கும் "prompt string" கொடுக்கப்படவில்லையெனில் திரையில் எந்த தகவலும் தோன்றாது. இதனால் பயனர் எவற்றை உள்ளீடு செய்ய வேண்டும் என்பதை தெரிந்து கொள்ள முடியாது
எடுத்துக்காட்டு 1: "prompt string" கொண்டுள்ளன input ( ) செயற்கூறு
> > > city=input ("Enter Your City:")
Enter Your City: Madurai
> > > print ("I am from", city)
I am from Madurai
எடுத்துக்காட்டு 2: "prompt string" இடம்பெறாத input( ) செயற்கூறு
> > > city=input( )
Rajarajan
> > > print (I am from", city)
I am from Rajarajan
மேலே உள்ள எடுத்துக்காட்டு 2 ல், input( ) செயற்கூற்றில் "prompt string" இடம்பெறவில்லை. எனவே, எவற்றை உள்ளீடாக தர வேண்டும் என்பது பயனர் புரிந்து கொள்ள இயலாது. நிரலுக்கு தொடர்பில்லாத தரவுகளை உள்ளிட்டால், தவறான வெளியீட்டை வெளியிடும். எனவே பயனர் நிரலை உரிய முறையில் இயக்க, "prompt string" input() செயற்கூறில் பயன்படுத்த வேண்டும்.
input() செயற்கூறு அனைத்து தரவுகளையும் சரங்களாக ஏற்றுக் கொள்ளும். பயனர் எண்களை மதிப்புகளாக உள்ளீடு செய்யும் போது, அவை வெளிப்படையாக எண்வகை தரவுகளாக மாற்றப்பட வேண்டும். int() செயற்கூறு சரவகை தரவை எண்வகை தரவாக வெளிப்படையாக மாற்ற உதவுகிறது.
49.
இயங்கு நிரலாக்கம்:
(i) இயங்கு நிரலாக்கம் என்பது ஒரு சிக்கலுக்கு தீர்வுகாண வரிசையான முடிவுகளின் மூலம் செயல்படுத்தப்படும் நெறிமுறை வடிவ முறையாகும்.
(ii) இயங்கு நிரலாக்க அணுகுமுறை கொடுக்கப்பட்ட சிக்கலை சிறிய சிக்கல்களாகப் பிரிப்பதில் பிரித்து கைப்பற்றுதல் முறை சிக்கலை சிறு - சிறு சிக்கலாக பிரித்து செயல்படுவதாகும்
(iii) இயங்கு நிரலாக்கத்தை எங்கு சிக்கல்கள் உள்ளதோ அங்கு பயன்படுத்தலாம்
(iv) சிக்கல்களை ஒரே மாதிரியான துணை சிக்கல்களாக பிரிப்பதனால், அதன் மூலம் கிடைக்கும் தீர்வை மீண்டும் பயன்படுத்தலாம். பெரும்பாலும், இந்த நெறிமுறைகள் உகந்த தீர்வாகப் பயன்படுத்தப்படுகிறது
(v) கையில் உள்ள துணை சிக்கல் தீர்ப்பதற்கு முன் இந்த செயல்முறையானது ஏற்கனவே தீர்வு காணப்பட்ட துணை சிக்கல்களின் முடிவுகளை ஆராய முயற்சிக்கும்
(vi) மிகச் சிறந்த தீர்வை அடைவதற்கு துணை சிக்கல்களின் தீர்வுகளை ஒன்றிணைத்தல் வேண்டும்
இயங்கு நிரலாக்கத்தின் படிநிலைகள்:
(i) சிக்கல்களை சிறிய ஒன்றோடு இணைந்த துணை சிக்கல்களாகப் பிரிக்க வேண்டும்
(ii) சிறிய துணை சிக்கல்களின் உகந்த தீர்வைப் பயன்படுத்தி, சிக்கலின் உகந்த தீர்வை அடைய வேண்டும்
(iii) இயங்கு நிரலாக்கம் நினைவிருத்தலை (Memoization) பயன்படுத்துகிறது.
1. பைபோனாசி வரிசை (Fibonacci Series) - ஓர் எடுத்துக்காட்டு:
(i) பைபோனாசி வரிசையானது முந்தைய இரண்டு எண்களை கூட்டி அடுத்தடுத்த எண்களை உருவாக்கும்
(ii) பைபோனாசி வரிசை Fib0 மற்றும் Fib1 ஆகிய இரண்டு எண்களுடன் தொடங்கும். Fib0 மற்றும் Fib1 தொடக்க மதிப்பு 0,1 எடுத்துக்கொள்வோம்.
பின்வரும் நிபந்தனைகளை பைபோனாசி வரிசை நிறைவேற்றும்:
Fibn = Fibn-1 + Fibn-2
n - ன் மதிப்பு 8 ஆக உள்ளபோது பைபோனாசி வரிசை இவ்வாறு தோன்றும்
Fib8 = 0 1 1 2 3 5 8 1 3
2. பைபோனோசி சுழற்சி நெறிமுறை (Fibonacci) இயங்கு நிரலாக்க முறையில்
முதலில் நாம், பைபோனோசி வரிசைக்கு சுழற்சி நெறிமுறையை வரையறுக்க முயற்சி செய்யலாம் f0=0, f1 = 1 என தொடக்க மதிப்பிருந்தல் வேண்டும்.
படிநிலை - 1: Print the initial values of Fibonacci f0 and f1
படிநிலை - 2: fib \(\longleftarrow \) f0+ f1 மதிப்பிருத்தல் வேண்டும்
படிநிலை - 3: மதிப்பிருத்தல் f0 \(\longleftarrow \) f1 , f1 \(\longleftarrow \) fib
படிநிலை - 4: பைபோனோசியின் அடுத்த மதிப்பை fib காண்பிக்கவும்
படிநிலை - 5: குறிப்பிட்ட வரிசை உருவாக்கும் படிநிலை - 2 வரை திருப்பச் செய்தல்
உள்ளீடு n = 10
10 இலக்க வரை பைபோனோசி நெறிமுறை கீழே கொடுக்கப்பட்டுள்ளது:
பைபோனோசி வரிசை: 0 1 1 2 3 5 8 13 21 34 55
50.
வரிசைமுறைத் தேடல்: வரிசைமுறைத் தேடல் அல்லது தொடர் தேடல் பட்டியலில் விரும்பும் உறுப்பைக் கண்டுபிடிக்கும் வரை அல்லது பட்டியல் முடியும் வரை வரிசையிலுள்ள ஒவ்வொரு உறுப்புகளையும் சரிபார்த்து, குறிப்பிட்ட மதிப்பைப் பட்டியலில் கண்டுபிடிக்கும் வழிமுறையாகும். பட்டியலை வரிசைப்படுத்த வேண்டிய தேவை இல்லை
வழிமுறை:
(i) for மடக்கினைப் பயன்படுத்தி அணியில் பயணித்தல்.
(ii) ஒவ்வொரு சுழற்சியிலும், இலக்கு மதிப்பை தற்போதைய மதிப்புடன் ஒப்பிடவும்
1. மதிப்புகள் பொருத்தமாக இருந்தால் அணியின் தற்போதைய சுட்டெண்ணைத் திருப்பி அனுப்பும்
2. மதிப்புகள் பொருந்திவிட்டால் அணியில் அடுத்துள்ள உறுப்புக்கு சென்று விடும்
(iii) பொருத்தம் எதுவும் இல்லையென்றால், -1 மதிப்பைத் திருப்பி அனுப்பும்.
கீழே கொடுக்கப்பட்டுள்ள அணியில் 25 என்ற எண்ணைத் தேடுவதற்கு, வரிசைமுறைத் தேடலானது படிப்படியாக தொடர் வரிசையில் கொடுக்கப்பட்ட அணியின் முதல் உறுப்பிலிருந்து தேடலைத் தொடங்கும். தேடப்படும் உறுப்பு கண்டுபிடிக்கப்பட்டால் அந்த சுட்டெண் திரும்ப அனுப்பப்படும். இல்லையெனில், அணியின் இறுதி சுட்டெண் வரை தேடல் தொடரும். இந்த எடுத்துக்காட்டில், எண் 25 சுட்டெண் 3-ல் காணப்படுகிறது.
| அணியின் சுட்டு | 0 | 1 | 2 | 3 | 4 |
| மதிப்புகள் | 10 | 12 | 20 | 25 | 30 |
எடுத்துக்காட்டு 1:
Input: values[ ] = {5, 34, 65, 12, 77, 35}
target = 77
Output: 4
எடுத்துக்காட்டு 2:
Input: values[ ] = {101, 392, 1, 54, 32, 22, 90, 93}
target = 200
Output: -1 (not found)
51.
தொகுதி நிரலாக்கத்தின் பயன்கள் :
(i) குறைந்த வரிகளைக் கொண்ட குறிமுறையை எழுதினால் போதுமானது.
(ii) மறுபயனாக்கத்திற்கும் பலமுறை குறிமுறை தட்டச்சு செய்வதை தவிர்ப்பதற்கு, ஒற்றை செயல்முறையை உருவாக்க வேண்டும்.
(iii) நிரல்கள் மிக எளிதாக வடிவமைக்கப்படுகின்றன. ஏனெனில், முழு குறிமுறையும் சிறிய பகுதிகளாக பிரிக்கப்பட்டு சிறிய குழுவினரால் கையாளப்படுகிறது.
(iv) தொகுதி நிரலாக்கம் பல நிரலர்களை ஒரே பயன்பாட்டில் வேலை செய்ய அனுமதிக்கிறது.
(v) பல கோப்புகளில் இந்த குறிமுறை சேமிக்கப்படுகிறது.
(vi) குறிமுறை சிறியதாக, எளியதாக, புரிந்துகொள்ளும் வகையில் உள்ளது.
(vii) துணை நிரல்களாக அல்லது செயற்கூறுகளாக இருப்பதால் பிழைகளை எளிதாக கண்டுபிடிக்க இயலும்.
(viii) ஒரே குறிமுறை பல பயன்பாடுகளில் பயன்படுத்தப்படலாம்.
(ix) மாறிகளின் வரையெல்லையை எளிதில் கட்டுப்படுத்த முடியும்.
52.
தொகுதி பண்பியல்கள் பின்வருமாறு:
(i) தொகுதிகள் தரவு, தகவல் மற்றும் தருக்க செயலாக்கத்தைக் கொண்டுள்ளன.
(ii) தொகுதிகள் தனியாக தொகுக்கப்பட்டு நூலகத்தில் சேமிக்கப்படும்.
(iii) தொகுதிகள் நிரலில் சேர்க்க முடியும்.
(iv) ஒரு பெயரையும், சில அளபுருக்களையும் பயன்படுத்தி தொகுதி பிரிவுகள் செயல்படுத்தப்படுகின்றன.
(v) ஒரு தொகுதியின் பிரிவுகள் மற்ற தொகுதிகளால் பயன்படுத்தப்படுகின்றன.
53.
List:
(i) List என்பது கோவைகளை சதுர அடைப்புக்குறிக்குள் காற்புள்ளியால் பிரிக்கப்பட்டிருக்கும் அமைப்பு ஆகும். இவ்வகை கோவைகளை List literal என்று அழைக்கப்படுகிறது. List பல மதிப்புகளை சேமிக்கும் இம்மதிப்புகள் எவ்வகையாகவும் இருக்கலாம் அல்லது மற்றொரு லிஸ்டாகவும் இருக்கலாம்.
எடுத்துக்காட்டு : List[10, 20].
(ii) list-ன் உறுப்புகளை இரு வழியில் அணுகலாம். முதல் வழி, அதிகம் பயன்படுத்தப்படும் பன்மடங்கு மதிப்பிருத்தல். இம்முறையில், list-ன் உறுப்புகள் பிரிக்கப்பட்டு, அனைத்து உறுப்புகளும் வேறு பெயர்களுடன் இணைக்கப்படுகிறது.
lst := [10, 20]
x, y := lst
மேலே காணும் எடுத்துக்காட்டில், Xயின் மதிப்பு 10 என்றும், Y யின் மதிப்பு 20 என மதிப்பிருத்தப்படும்.
(iii) இரண்டாம் முறையில் லிஸ்டின் உறுப்புகள், உறுப்புகள் தேர்வு செயற்குறிகள் மூலம் அணுகப்படுகிறது. லிஸ்ட் லிட்டரல்ஸ் போல் அல்லாது கோவையில் ஒரு சதுர அடைப்புக்குறியை தொடர்ந்து வரும் மற்றொரு சதுர அடைப்புக்குறி லிஸ்டின் மதிப்புகளாக எடுத்துக்கொள்ளப்படுவதில்லை. ஆனால் முந்தைய கோவையின் உறுப்பை மதிப்பாக தேர்வு செய்யும்.
1st[0]
10
1st[1]
20
மேலே காணும் எடுத்துக்காட்டினை கணித முறையில் set போன்று அமைக்கலாம்.

(iv) இரு மதிப்புகளை ஒன்றாக இணைக்கும் முறையை இணைகள் (Pairs) என்று அழைக்கிறோம். List அதிகமாக பயன்படுத்தப்படும் முறையாகும். எனவே, List, Pairs என்று அழைக்கப்படுகிறது.
54.
தரவு அருவமாக்கினை செயல்படுத்த, ஆக்கிகள் (Constructor) மற்றும் செலக்டர் (Selectors) என்ற இரண்டு செயற்கூறுகள் உருவாக்கப்பட வேண்டும்.
ஆக்கிகள் மற்றும் செலக்டர்கள் (constructors and selectors):
(i) ஆக்கி செயற்கூறுகள் அருவமாக்கம் தரவு வகையை கட்டமைக்க பயன்படுகிறது. செலக்டர் செயற்கூறுகள் தகவல்களை தரவு வகையிலிருந்து பெறுவதற்கு பயன்படுகிறது.
(ii) எடுத்துக்காட்டாக, city என்று ஒரு அருவமாக்க தரவு வகை உள்ளது என வைத்துக்கொள். City என்ற பொருள் நகரத்தின் பெயர், அட்சரேகை மற்றும் தீர்க்கரேகை பற்றிய தகவல்களை சேமித்திருக்கும் city என்ற பொருளை உருவாக்க பின்வரும் செயற்கூற்றினை பயன்படுத்தலாம்.
city := makecity (name, lat, lon)
(iii) city பொருளின் தகவல்களை பெறுவதற்கு பின்வரும் செயற்கூறுகளை பயன்படுத்தலாம்.
1. getname(city)
2. getlat(city)
3. getlon(city)
(iv) பின்வரும் போலி குறிமுறை இரு நகரங்களுக்கு இடையேயான தொலைதூரத்தை கணக்கிடும்.
distance(city1, city2):
lt1, lg1 := getlat(city1), getlon(city1)
lt2, 1g2:= getlat (city2), getlon (city2)
return ((lt1 - lt2)**2 + (lg1 - lg2)**2))1/2
(v) மேலே காணும் குறிமுறையில், distance(), getlat() மற்றும் getlon() ஆகியவை செயற்கூறுகள் ஆகும். It என்பது அட்ச ரேகை மற்றும் lg என்பது தீர்க்கரேகையும் குறிக்கிறது. longitude. := என்பதை "assigned as" அல்லது "becomes" என்று வாசிக்க வேண்டும்.
It 1, lg1 := getlat(city1), getlon(city1)
(vi) இதனை It1 என்பது getlat(city1)ன் மதிப்பாகிறது மற்றும் lg1 என்பது getlon(city1) ன் மதிப்பாகிறது. என்று வாசிக்க வேண்டும்.
(vii) இந்த செயற்கூறுகள் எவ்வாறு செயல்படுத்தப்படுகிறது என்பதை தெரிந்து கொள்ள வேண்டியதில்லை. இதை வேறு ஒருவர் நமக்காக வரையறுத்துள்ளார் என்று கருதிக் கொள்ள வேண்டும். பயனர் செயற்கூறுகள் எப்படி செயல்படுத்தப்படுகின்றது என்று தெரிந்து வைத்திருக்க வேண்டியதில்லை எனினும் வேறு ஒருவரால் இச்செயற்கூறுகள் வரையறுக்கப்பட்டிருக்க வேண்டும்.
(viii) மேலே காணும் குறிமுறையில், ஆக்கி மற்றும் செலக்டர்களை அடையாளம் காண்போம். ஆக்கி செயற்கூறுகள் அருவமாக்க தரவு வகையை கட்டமைக்கப் பயன்படுகிறது என்பதை நாம் அறிவோம். மேலே காணும் போலிக் குறிமுறையில், cityயின் பொருளை உருவாக்கும் செயற்கூறு, ஆக்கி ஆகும்.
city := makecity(name, lat, lon) இங்கு makecity(name, lat, lon) என்ற ஆக்கி city எனும் பொருளை உருவாக்குகிறது.

(ix) செலக்டர் செயற்கூறுகள் தகவல்களை தரவு வகையிலிருந்து பெறுவதற்கு பயன்படுகிறது. மேலே காணும் குறிமுறையில்,
getname(city)
getlat(city)
getlon(city) என்பவை city எனும் பொருளிலிருந்து தகவல்களை பெற்றுத் தரும் செலக்டர் செயற்கூறுகளாகும்.
55.
(i) இடைமுகம் :
ஒரு பொருள் (Object) செய்யக்கூடிய செயல்களின் தொகுப்பு இடைமுகம் ஆகும். எடுத்துக்காட்டாக, மின் விளக்கின் சுவிட்சை அழுத்தும் போது மின் விளக்கு ஒளிர்கிறது. அது எவ்வாறு ஒளிர்கிறது என்பது தெரிந்திருக்க வேண்டியதில்லை. பொருள் நோக்கு நிரலாக்க மொழியில், இடைமுகம் என்பது அனைத்து செயற்கூறுகளின் விவரிப்பு ஆகும். எடுத்துக்காட்டில், மின் விளக்கை போல் செயல்படும் எதுவும் turn_on () மற்றும் turn_off () என்ற செயற்கூறு வரையறையைக் கொண்டிருக்கும். இனக்குழுவின் பண்புக் கூறுகளை செயல்படுத்த இடைமுகம் பயன்படுகிறது.
(ii) இடைமுகம் மற்றும் செயல்படுத்துதல் இரண்டுக்கும் இடையே உள்ள வேறுபாடு என்னவெனில்,
| இடைமுகம் | செயல்படுத்துதல் |
| ஒரு பொருள் செய்யக்கூடிய நடவடிக்கையை வரையறுக்கிறது, ஆனால் அவற்றை உண்மையில் செய்யக்கூடியது இல்லை. | இடைமுகத்தில் வரையறுக்கப்பட்டுள்ள கட்டளைகளை நிறைவேற்றுகிறது. |
(iii) பொருள் நோக்கு நிரலாக்க மொழியில் இனக்குழு என்பது இடைமுகம் ஆகும். செயல்படுத்துதல் என்பது பொருள் (object) எவ்வாறு செயல்படுத்தப்பட்டு இயங்குகிறது என்பதை குறிப்பதாகும்.
இடைமுகத்தின் பண்புகள்
(i) ஒரு பொருளை முறையாக உருவாக்கி வழங்குவதற்கும் அதனை செயல்படுத்துவதற்கும் தேவையான இடைமுகத்தை இனக்குழு வார்ப்பு குறிப்பிடுகிறது.
(ii) செயற்கூறுகளைப் பொருளுக்கு அனுப்புவதன் மூலம் பொருளின் பண்புகளையும் பண்புக்கூறுகளையும் கட்டுப்படுத்த முடிகிறது.
காரின் வேகத்தை அதிகரிக்கும் எடுத்துக்காட்டை எடுத்துக் கொள்வோம்.

(iii) காரை ஓட்டும் நபர் அந்த காரின் உட்புற செயல்பாடுகள் பற்றி அறிந்திருக்க வேண்டிய அவசியமில்லை. காரின் வேகத்தை அதிகப்படுத்த, அவர் காரின் துரிதப்படுத்தியை (accelerator) அழுத்தி விரும்பிய பண்பை பெறுவார். இங்கு துரிதப்படுத்தி என்பது கார் ஓட்டுநருக்கும் (அழைக்கும் பொருள்) இயந்திரத்துக்கும் (அழைக்கப்படும் பொருள்) இடையேயான இடைமுகம் ஆகும். இதில், அழைக்கும் செயற்கூறு இவ்வாறு இருக்க வேண்டும் speed(70): என இருக்க வேண்டும். இது ஒரு இடைமுகமாகும்.
(iv) உட்புறமாக, காரின் இயந்திரம் அனைத்து வேலைகளையும் செய்கிறது. எரிபொருள், காற்று, அழுத்தம் மற்றும் மின்சாரம் ஆகியவை இங்கு ஒன்றாக சேர்ந்து, ஆற்றலை உருவாக்கி, வாகனத்தை நகர்த்துகிறது. இந்த அனைத்து நடவடிக்கைகளும் கார் ஓட்டுநரிடம் இருந்து பிரித்து வைக்கப்பட்டுள்ளது. அவர் வேகமாக காரை செலுத்துவதில் ஆர்வமாக இருப்பார். இதனால், இடைமுகத்தை செயல்படுத்துதலில் இருந்து பிரித்து வைக்கப்படுகிறது.
(v) ஒரு எளிமையான உதாரணத்தைக் காணலாம். கொடுக்கப்பட்டுள்ள 3 செயலுருபுகளில் குறைந்த மதிப்பைக் காணும் செயற்கூற்றைச் செயல்படுத்துவதைக் கவனி.
let min x y z:=
if x < y then
if x < z then x else z
else
if y < z then y else z
56.
12th Standard Syllabus & Materials
12th Standard
TN 12th Computer Applications களப்பெயர் முறைமை (DNS) Sample Question Papers Study Material - QB365 Set A
NEW12th Standard
TN 12th Computer Applications வலையமைப்பு எடுத்துக்காட்டுகள் மற்றும் நெறிமுறைகள் Sample Question Papers Study Material - QB365 Set A
NEW12th Standard
TN 12th Computer Applications கணினி வலையமைப்பு ஓர் அறிமுகம் Sample Question Papers Study Material - QB365 Set A
NEW12th Standard
TN 12th Computer Applications PHP-உடன் MySQL-ஐ இணைத்தல் Sample Question Papers Study Material - QB365 Set A
Tamilnadu Stateboard 12th Standard Subjects

Maths

Chemistry

Physics

Biology

Computer Science

Business Maths and Statistics

Economics

Commerce

Accountancy

History

Computer Applications

Biology

Computer Technology

Computer Applications

Computer Science

Business Maths and Statistics

Commerce

Economics

Maths

Chemistry

Physics

Computer Technology

History

Accountancy

Tamil

English

French
Tamilnadu Stateboard Standards