எளிய, இனிய கணிணி மொழி – ரூபி – 6 – ரூபி number classes மற்றும் conversions

ரூபியில் எல்லாமே object தான். இதில் ஆச்சரியப்படும் விசயம் என்னவென்றால் ரூபியில் எண்கள கூட object தான். பெரும்பாலான நிரலாக்க மொழிகள் எண்களை primitives ஆக கருதும். ஆனால் ரூபியில் எண்கள், எழுத்துக்கள் என எல்லாமே class தான். அவற்றுகான methods ஐ நாம் இயக்கிப் பார்க்கலாம். எல்லா எண் வகைகளுக்கும் அதற்கான class ரூபியில் உள்ளது. அதிலுள்ள method-களைக்கொண்டு எண்களை கையாளமுடியும்.

ரூபி number classes:

ரூபியில் உட்பொதிந்த (builtin ) எண்களுக்கான classes உண்டு. அதில் பொதுவாக பயன்படுத்தும் classes-யை இந்த பகுதியில் காணலாம்.

Integer class:

எல்லா class-களுக்கும் இது அடிப்படையான class ஆகும். பின்வரும் classes எல்லாம் இதிலிருந்து தருவிக்கப்பட்டவை (derived).

Fixnum class:

Fixnum-ன் அதிகபட்ச எல்லை ஆனது, code எந்த system-ல் execute செய்கிறோமோ அதனின் architecture பொறுத்தே அமையும். ஒருவேளை fixnum, system architecture எல்லையை தாண்டினால், அதன் value ஆனது bignum ஆக interpreter-னால் மாற்றப்படும்.

Bignum class:

Bignum objects ஆனது ரூபி fixnum class-லின் எல்லையை தாண்டிய integer மதிப்பை வைத்து கொள்ளும். Bignum object கணக்கீடு திருப்பி அனுப்பும் விடை ஆனது fixnum-ல் பொருந்தினால், விடை fixnum-ஆக மாற்றப்படும்.

Rational class:

விகிதமுறு எண் என்பது ஒரு எண்ணாகும், இது fraction(p/q)-ல் கொடுக்கப்படும். இதில் p-தொகுதி எண் மற்றும் q-வகுக்கும் எ என்பர். விகிதமுறு இல்லாத எண்ணையை விகிதமுறா எண்கள் என்பர்.

ரூபியில் numbers-யை மாற்றுதல்:

ரூபியில் integer மற்றும் float methods பயன்படுத்தி எண்களை ஒரு வகையிலிருந்து மற்றொரு வகையாக மாற்ற முடியும். மாற்ற வேண்டிய மதிப்பை argument-ஆக இந்த methods-களுக்கு கொடுக்க வேண்டும்.

Floating Point Number-Integer-ஆக மாற்றுதல்:

[code lang=”ruby”]
Integer (10.898)
=> 10
[/code]

String-Integer-ஆக மாற்றுதல்

[code lang=”ruby”]
Integer ("10898")
=> 10898
[/code]

Hexadecimal Number-Integer-ஆக மாற்றுதல்

[code lang=”ruby”]
Integer (0xA4F5D)
=> 675677
[/code]

Octal Number-Integer-ஆக மாற்றுதல்

[code lang=”ruby”]
Integer (01231)
=> 665
[/code]

Binary Number-Integer-ஆக மாற்றுதல்

[code lang=”ruby”]
Integer (01110101)
=> 299073
[/code]

Character-ASCII Character Code–ஆக மாற்றுதல்

[code lang=”ruby”]
Integer (?e)
=> 101
[/code]

integer_conversions

அதேபோல் float method பயன்படுத்தி அதன் மதிப்பை floating point ஆக மாற்றலாம்.

Integer-Floating Point —ஆக மாற்றுதல்

[code lang=”ruby”]
Float (10)
=> 10.0
[/code]

String-Floating Point–ஆக மாற்றுதல்

[code lang=”ruby”]
Float ("10.09889")
=> 10.09889
[/code]

Hexadecimal Number-Floating Point–ஆக மாற்றுதல்

[code lang=”ruby”]
Float (0xA4F5D)
=> 675677.0
[/code]

Octal Number-Floating Point–ஆக மாற்றுதல்

[code lang=”ruby”]
Float (01231)
=> 665.0
[/code]

Binary Number-Floating Point–ஆக மாற்றுதல்

[code lang=”ruby”]
Float (01110101)
=> 299073.0
[/code]

Character-Floating Point ASCII Character Code–ஆக மாற்றுதல்

[code lang=”ruby”]
Float (?e)
=> 101.0
[/code]

float_conversions

 

— தொடரும்

பிரியா – priya.budsp@gmail.com – ஐக்கிய அரபு அமீரகம்

%d bloggers like this: