Thursday, December 22, 2011

சி# 9ம் பாடம்




பூலியன் டேட்டா இனம்.

பூலியன் டேட்டா இனமானது true அல்லது false மதிப்புகளுக்குள் ஒன்றை
 சேமிக்கிறது. பூலியன் இனத்துக்கும் இன்டிஜர் (integer) எந்த டேட்டா இன மாற்றமும் கிடையாது.அதாவது சி மொழியைப் போல் 0 என்பதை falseக்கும் 1 என்பதை trueவிற்க்கும் எடுத்துக் கொள்ளாது.

// Demonstrate bool values.

using System;

class BoolDemo

{

static void Main()

 {

bool b;

b = false;

Console.WriteLine("b is " + b);

b = true;

Console.WriteLine("b is " + b);

// A bool value can control the if statement.

if(b) Console.WriteLine("This is executed.");

b = false;

if(b) Console.WriteLine("This is not executed.");

// Outcome of a relational operator is a bool value.

Console.WriteLine("10 > 9 is " + (10 > 9));

}

}


Output:
b is False

b is True

This is executed.

10 > 9 is True

மேலே உள்ள நிரலின் படி முதலில் WriteLine  மெத்தட் ஆனது b  என்ற பூலியன் வேரியபிளின் மதிப்பை வெளிடுகின்றது. பின் b ன் மதிப்பானது if  ஸ்டேட்மென்ட்டை கன்ட்ரோல் செய்கின்றது.
அடுத்த முக்கியமானது > operator ஆனது பூலியன் மதிப்பை வெளியிடுகின்றது.
(10>9) ஐ ()க்குள் கொடுத்திருப்பதின் காரணம் + operator ஆனது > ஐ விட முன்னிலை அதிகம்.

வெளியீட்டில் சில வசதிகள்.

WriteLine மெத்தடின் மூலம் நமக்கு எவ்வாறு data output வேண்டுமோ அவ்வாறு அமைத்துக் கொள்ளலாம் .
String myName=”muthu”;
Console.WriteLine(“my name is  “+ myName);
மேற்கண்ட வரிகளின் output ஆனது பின் வருமாறு இருக்கும்

My name is muthu.

எனினும் floating point numbersஐ வெளியிடும் போது எத்தனை decimal places போண்றவற்றை நம்மால் கொடுக்க முடியாது.
உதாரணத்திற்கு
Console.WriteLine(“10.0/3.0 is “+10.0/3.0)
பின்வருமாறு வெளிடும்.
10.0/3.0  is 3.3333333
Number format ன் கன்ட்ரோல் ஆனது பின் வரும் writeLine statement படி  கொடுக்கப்படுகின்றது.

WriteLine(“format string”, arg0, arg1, ... , argN);
இந்த WriteLine மெத்தடில் ஆர்க்கியுமென்ட்ஸ் + operator க்கு பதில் ,(comma) operatorல் பிரிக்கப்படுகின்றது.
உதாரணமாக
 Console.WriteLine("February has {0} or {1} days.", 28, 29);
வெளியீடு:

February has 28 or 29 days.

அதாவது {0} ஆனது 28 ஆலும் {1} என்பது 29 ஆலும் replace செய்யப்பட்டிருக்கின்றது.

WriteLine மெத்தடின் அடுத்த இனம்

Console.WriteLine("February has {0,10} or {1,5} days.", 28, 29);
முதலில் {0,10} என்பதில் உள்ள 0 ஆனது முதல் ஆர்க்யூமென்ட் என்பதையும் 10 என்பது fieldந் அகலமானது 10 என்பதையும் குறிகின்றது.
இரண்டாவது உள்ள {1,5} என்பது 1 என்பது இரண்டாவது ஆர்க்யூமென்ட் என்பதையும் 5 என்பது fieldந் அகலமானது 5 என்பதையும் குறிகின்றது.

வெளியீடு:
February has              28 or      29 days.
WriteLine மெத்தடின் அடுத்த இனம்:
Console.WriteLine("Here is 10/3: {0:#.##}", 10.0/3.0);

வெளியீடு:

Here is 10/3: 3.33

மேலே உள்ள WriteLine மெத்தடின் #.## ஆனது இரண்டே தசமஸ்தானம் என்பதைக் குறிக்கின்றது

மற்றுமொரு உதாரணம்
.
Console.WriteLine("{0:###,###.##}", 123456.56);

வெளியீடு:

123,456.56

மற்றுமொரு உதாரணம்.

decimal balance;

balance = 12323.09m;

Console.WriteLine("Current balance is {0:C}", balance);

வெளியீடு:

Current balance is $12,323.09

C ஆனது வெளியீட்டை currency formatல் வெளியிடுகின்றது.



மாதிரி நிரல்.
using System;
class UseDecimal

{

static void Main()

{

decimal price;

decimal discount;

decimal discounted_price;

// Compute discounted price.

price = 19.95m;

discount = 0.15m; // discount rate is 15%

discounted_price = price - ( price * discount);

Console.WriteLine("Discounted price: {0:C}", discounted_price);

}

}
வெளீயீடு:

Discounted price: $16.96

-தொடரும்
ads Udanz

Wednesday, December 21, 2011

நிரல் மொழி கற்றுக்கொள்வதற்கு முன் சில அடிப்படை விஷயங்கள்:





Bit & bytes:
 Ram  மற்றும் hard disk முதலியவற்றிண் கொள்ளளவு BIT மற்றும் byte ல் அளவிடப் படுகின்றது.இருப்பதிலேயே சிறிய அளவு பிட் ஆகும்.
8 பிட் சேர்ந்தது 1 பைட் ஆகும்.

1 bit = a 1 or 0 (b)
8 bits = 1 byte (B)
1024 bytes = 1 Kilobyte (KB)
1024 Kilobytes = 1 Megabyte (MB)
1024 Megabytes = 1 Gigabyte (GB)
1024 Gigabytes = 1 Terabyte (TB)
தற்பொழுது எல்லாம் 1 tb அளவில் hard disk கிடைக்கின்றது. ஒரு  பிட்டில் 0 அல்லது 1 சேமிக்கலாம்.

ASCII மற்றும் Unicode:
நாம் keyboard ல் தட்டும் ஒவ்வொரு கீக்கும் ஒரு மதிப்பு உண்டு. உதாரணமாக A என்றால் 65, என்றால் 66 மற்றும் c என்றால் 67 என்று தொடரும். a என்றால் 97, b என்றால் 98 மற்றும் c என்றால் 99 என்று தொடரும். எண்டர் விசைக்கு 13.
Ascii- American standard code for information interchange.
Ascii-ல் ஆங்கில எழுத்துக்களுக்கு மற்றுமே கோட் ஒதுக்கப்பட்டிருந்தது. ஆனால் அதற்குப் பின் Unicode முறை ஏற்படுத்தப்பட்டது. அதில் தமிழ் உட்பட பெரும்பாலான மொழிகளுக்கு code ஒதுக்கப்பட்டது. ascii யில் ஒரு எழுத்துக்கு ஒரு பைட் போதும் . ஆனால் Unicode முறையில் ஒரு எழுத்துக்கு 2 பைட் வேண்டும். ஜாவா மற்றும் சி# போன்ற மொழிகள் Unicode முறையை பின் பற்றுவதால் அவற்றில் character தரவினத்துக்கு(data type) இரு பைட் நிணைவகம் தேவைப்படுகின்றது.
Distributed computing:

ஒரு சிஸ்டமில் வேலைகளைச் செய்வற்கு பதில் client server முறையில் வேலைகள் நெட் வொர்கில் பகிர்ந்தளிக்கப்பட்டு செய்வதே distributed computing எனப்படுகின்றது. client  server networking பற்றி மேலும் தகவல்களுக்கு இங்கே சொடுக்கவும்.

ads Udanz

Saturday, December 17, 2011

Php பாடங்கள் இது வரை


Php பாடங்கள் இது வரை

இது வரை நான் Phpயில் எழுதிய 5 பாடங்களின் தொகுப்பு.
இந்த பாடங்கள் தொடக்க நிலை பழகுபவரை மனதில் கொண்டு எழுதப்பட்டவை.படித்து விட்டு தயவு செய்து பின்னூட்டம் இடவும்.

---தொடரும்

ads Udanz

Php 5ம் பாடம்:


Php  5ம் பாடம்:
Php  யை இயக்குவதற்கு பின் வருவன தேவையாகும்.
1.ஒரு இயக்கமுறைமை(Operating system) பெரும்பாலும் லினக்ஸ்
2.ஒரு வெப் சர்வர்(usually apache on linux or iis on windows). இவை http requestயை இயக்குவதற்கு.
3.ஒரு Php  இண்டர்பிரட்டர் Php  கோடிங்கை பார்ஸ் செய்து இயக்குவற்கு.
4.மேலும் கூடுதலாக ஒரு database engine.(uaually Mysql)
மேலே குறிப்பிடப்பட்டுள்ள எல்லாமே இணையத்திலிருந்து இலவசமாக தரவிறக்கிக் கொள்ளலாம்.
எடிட்டர் ஆக நீங்கள் நோட்பேட் ,ட்ரீம்வீவர் அல்லது நெட்பீன்ஸ் இவற்றில் ஏதாவது உபயோகிக்கலாம்
முதல் ஸ்கிரிப்ட்:
<?php

// this line of code displays a famous quotation

echo “hello world”;

?>
மேலே உள்ள கோடிங்கை ஒரு html மின் body டேகுகளுக்கு இடையே கொடுக்க வேண்டும்.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>

<body>
// this line of code displays a famous quotation

 <?php

// this line of code displays a famous quotation

echo “hello world”;

?>

</body>
</html>
இதை c/xampp/htdoc என்ற ஃபோல்டரில் சேமிக்கவும்.உதரணமாக பெயர் prg1.php என இருக்கலாம்.
இயக்குவதற்கு உலாவியில்(browser) localhost/prg1.php  என்று கொடுத்தால் பின் வருமாறு வெளியிடும்.
 -தொடரும்
ads Udanz

Wednesday, December 14, 2011

ஜாவா பாடங்கள் முழுவதும் இது வரை:

ads Udanz

சி ஷார்ப்பும் மல்டிதிரட்டிங்கும் -----பாடம்-1


சி ஷார்ப்பும் மல்டிதிரட்டிங்கும் -----பாடம்-1



மல்டிதிரட்டிங் என்றால் என்ன?
மல்டிதிரட்டிங் நிரல் ஆனது ஒரே நேரத்தில் இயங்கக்கூடிய ஒன்றுக்கு மேற்பட்ட பகுதிகளைக் கொண்டிருக்கும். ஒவ்வொரு பகுதியும் ஒரு திரட் ஆகும்.ஒவ்வொரு திரட்டும் வெவ்வேறு பாதைகளில் இயங்கக்கூடியது. மல்டிதிரட்டிங் என்பது மல்டி பிராசஸிங்கில் இருந்து வேறுபடக்கூடியது.
மல்டிதிரட்டிங் அவசியம் என்ன?
கம்ப்யூட்டரின் சிபியு ஆனது ஒரு நேரத்தில் ஒரு வேலையைச் செய்யும். சிபியு ஆனது input/output சாதனங்களுடன் தகவல் பரிமாற்றம் செய்யும் போது அவற்றிற்காக காத்திருக்க வேண்டியுள்ளது..ஏனெனில் input/output  சாதனங்கள் சிபியுவை விட மெதுவனதாகும்.எனவே ஒரு நிரல் ஆனது அதன் பெரும்பாலான நேரத்தை தகவல் பரிமாற்றத்திற்காக காத்திருப்பதில் செவழிக்கின்றது.எனவே மல்டிதிரட்டிங் ஆனது ,நிரலின் ஒரு பகுதி தகவல் பரிமாற்றத்திற்காக காத்திருக்கையில் மற்றொரு பகுதியை இயங்குவதற்கு அனுமதிக்கின்றது.
மல்டி பிராசஸிங் மற்றும் மல்டிதிரட்டிங்  வேறுபாடு:
மல்டி டாஸ்கிங் ஆனது மல்டிதிரட்டிங் மற்றும் மல்டி பிராசஸிங் என இரு  கருத்துக்களை கொண்டது. ஒரு பிராசஸ் என்பது ஒரு இயங்கும் நிரல் ஆகும். அதாவது மல்டி பிராசஸிங் என்பது சிபியுவால் ஒன்றுக்கு மேற்பட்ட நிரல்களை ஒரே நேரத்தில் இயக்க பயன்படுகின்றது. உதாரணமாக  நாம் ஒரு வேர்ட் டாக்குமெண்ட்டை பிரிண்ட் செய்துகொண்டு அதே நேரத்தி எக்சலில் Data entry செய்ய முடியும்.
மல்டி பிராசஸிங்கில் இருப்பதிலேயே சிறிய பகுதியானது ஒரு நிரல் ஆகும். மல்டிதிரட்டிங்கில் இருப்பதிலேயே சிறிய பகுதியானது ஒரு திரட் ஆகும். அதாவது ஒரு நிரலின் ஒரு பகுதியாகும்.ஒவ்வொரு பகுதியும் ஒரு திரட் எனப்படுகின்றது. மல்டிதிரட்டிங்கில் ஒரே நிரலின் வெவ்வேறு பகுதிகள் ஒரே நேரத்தில் இயங்கும். அதாவது word ல் ஒரு பக்கம் பிரிண்ட் செய்து கொண்டு  
மற்றொரு பக்கம் அதே வேர்டில் formatting செய்யலாம்.
அதாவது மல்டி மல்டி பிராசஸிங் என்பது ஒரே நேரத்தில் வெவ்வேறு நிரல்கள் இயங்கக்கூடியது. மல்டிதிரட்டிங் என்பது ஒரு நேரத்தில் ஓரே நிரலின் வெவ்வேறு பகுதிகள் இயங்கக் கூடியது.இரண்டின் நோனக்கமும் சிபியுவின் வாளா இருக்கும் நேரத்தை குறைப்பதாகும்.
மல்டிதிரட்டிங் க்ளாஸ்கள்:
சி#ல் மல்டிதிரட்டிங்கிற்காக .net frameworkல் க்ளாஸ்கள் இருக்கின்றது.இவையாவன system நேம்பேஸில் உள்ள thread என்ற சப் நேம் பேசில் உள்ளன.Thread அவற்றில் முதன்மை கிளாஸாக இருக்கின்றது.
சி ஷார்ப் 4 உடன் மல்டிதிரட்டிங்:
சி ஷார்ப் 4ல் மல்டிதிரட்டிங்கிற்கென கூடுதல் பகுதிகள் இணைக்கப் பட்டுள்ளன. அவையாவன Task Parallel library(TPL) மற்றும் Parallel LINQ(PLINQ). இரண்டுமே இணையாக இயங்கும் நிரல்களை ஆதரிக்கின்றது..மேலும் அவை Multi processor(multi core) கணினிகளை ஆதரிக்கின்றது.TPL ஆனது  மல்டிதிரட்டிங் பயன்பாடுகளைஉருவாக்கவும் அவற்றை மேலாண்மை செய்யவும் பயன்படுகின்றது.
திரட்டின் நிலைகள் ;
திரட் ஆனது வெவ்வேறு நியோலைகளை கொண்டுள்ளது.அதாவது இயங்கக்கூடிய(running)மற்றும் இயங்குவதற்கு தயாராக உள்ள(ready to run)நிலை..அதே போல் suspended நிலையிலும் பிறகு resumed நிலையிலும் இருக்கலாம். ஒரு திரட் ஆனது resource க்காக காத்திருக்கும் நிலையிலும் தடை(blocked) செய்யப்படலாம்.
சி ஷார்ப்பில் இரண்டு விதமான திரட்களை உருவாக்கலாம். அவையாவன foreground மற்றும் background திரட்கள் ஒரு திரட் ஆனது உருவாக்கப்படுகையில்
Foreground ஆக உருவாக்கப் படுகின்றது.அவற்றை நாம் background ஆக மாற்றலாம்,. எல்லா foreground திரல்களும் முடிகையில் எல்ல background திரட்களும் முடிவுக்கு வரும்.
நிரலில் குறிப்பிட்டுள்ள செயல் பாட்டை ஒன்றுக்கு மேற்பட்ட திரட்கள் நிறைவேற்ற முயல்கையில் அச்செயல்பாடு lock  செய்யப்பட வேண்டும்.இவ்வாறு திரட்டில் செயல்பாட்டினை முறைப்படுத்துவது ஒத்தியக்கம்(Threading synchronization) எனப்படுகின்றது.
-தொடரும்.

ads Udanz

Sunday, December 11, 2011

ஜாவா 10 ம் பாடம்.


ஜாவா 10 ம் பாடம்.

 

Selection statements.


ஜாவாவானது இரண்டு வகையான selection statements யை ஆதரிக்கின்றது.
அவையாவானது
1.       If
2.       Switch
If:
If ஆனது ஒரு பூலியன் expression ன் அடிப்படையில் இயங்குகிறது.
பூலியன் expression  மதிப்பு true எனில் ஒரு set of statementsம் ,false எனில் இன்னொரு set of statements ம் இயக்கப்படும்.
உதாரணம்:
Int a,b;
--
--
If(a>b)
return a;
Else
return b;
இப்படியல்லாது பூலியன் மாறியின்(variable) அடிப்படையிலும் இயக்கலாம் .
அதாவது மாறியின் மதிப்பு true எனில் ஒரு statements  தொகுப்பும், false  எனில் மற்றொரு statements தொகுப்பும் இயக்கப்படும்.
If(available)
System.out.println(“call me”);
else
System.out.println(“don’t call me”);


ஒரு conditionன் கீழ் இயங்கும் statements ஒன்றுக்கு மேல்பட்டது எனில் அவை { மற்றும் } க்குள் கொடுக்கப்பட வேண்டும்.
உதாரணம்:
If(marks>=40)
{
System.out.println(“good”)
 System.out.println(“passed”);
}
else
{
System.out.println(“bad”);
System.out.println(“failed”);
}
Example flow chart:

மேலே உள்ள flowchart ல் ஸ்கோர் 60ற்கு மேல் எனில் ஒரு ஸ்டேட்மெண்டும் 60ற்கு கீழ் எனில் இன்னொரு ஸ்டேட்மெண்டும் இயக்கப்படும்.
தொடரும்

ads Udanz