ඊයේ දිනයත්, කලින් දින කිහිපයත් මට නිදන්නට නොදුන් රාත්‍රීන්ය. කොහේදෝ නැති Function කිහිපයක් මගේ සිතට වද දෙන්නට විය. ඉන් කුඩාම Function එක වනුයේ Len (Length)  යන Function එකය. ලෝකයේ මෙම Function එක භාවිතා වන සෑම මෘදුකාංගයකම මෙම ගැටළුව මා ප්‍රයෝගිකව අත්දැකීමෙන් වින්දෙමි. එනම් සිංහල යුනිකෝඩයෙන් සටහන් කළ යම් අක්ෂර පේළියක ඇති සම්පූර්ණ අක්ෂර සංඛ්‍යාව කොපමණක්ද යන්න මෙම Function එකට ආදේශ කොට සෙවූ විට ලැබෙන්නේ අපූරු උත්තරයක්ය. උදාහරණයක් ලෙස තාත්තා යන වචනයේ ඇති අක්ෂර සංඛ්‍යාව තුනක් බව මා දැනගත්ත ද උත්තරය ලෙස ලැබුණේ හයක් ලෙසය.  ඉතින් මෙය ගැටළුවක් නොවේද?. එසේම මෙවැනි Text Function ගණයට වැටෙන Function බොහොමයක ඇත්තේ මෙවැනි වැරදිමය. Left, Mid, Right යන Function දත්ත ගොනු හා විසුරුම් පත්‍රිකා හා පරිගණක භාෂා වල දැකගත හැකි අතර මේ සියල්ලේදීම ලැබෙනුයේ මෙවැනි වැරදි උත්තරය.

 

 

 

මෙම වරද නිවැරදි කළ නොහැකිද?

 

මා මිතුරෙකු පැවසූ පරිදි එය කළ නොහැක. එයට හේතුව ලෙස ඔහු මට කියුවේ, යුනිකෝඩ් වල එක් අක්ෂරයක් නිරූපණය කිරීමට ‍Unicode එකකට වැඩිය භාවිතා වන බැවින් එය කළ නොහැකි බවය. උදාහරණයක් ලෙස ක්‍ෂ යන අක්ෂරය ගතහොත් එය සෑදී ඇත්තේ යුනිකෝඩ් හතරකිනි.  0D9A 0DCA 200D 0DC2

යුනි‍කෝඩ් වැරදියි කියලා මම කියන්නේ ඕකනේ ... තව මිතුරෙක් මට පවසන ලදි.

මෙම වරද නිවැරදි කළ නොහැකිද.

ලෝකයේ ඇති ඕනෑම ගැටළුවකට විසඳුම් ඇත. (කා ළඟ නැතත් මා ළඟ ඇත.)

ගැටළුව හදුනාගනිමු 

මෙම ‍ගැටළුව ඇති වනු‍යේ යුනිකෝඩයේ සිංහල අක්ෂර නිරූපණය කිරීම සඳහා අක්ෂර එකකට වඩා වැඩි සංක්‍යාවක් ඇතැම් අක්ෂර සඳහා යොදා ගැනීමය. තාත්තා යන වචනය ගත හොත් ඒ සඳහා යුනිකේත හයක් යොදා ගනී.  එනම්  0DAD 0DCF 0DAD 0DCA 0DAD 0DCF ය.

එවිට ඉහත Function එක තුළට ගනුයේ සත්‍ය වශයෙන්ම යුනිකේත හයකි. ඉතින් Function තුලින් පිටතට දක්වන උත්තරය වැරදීමට හේතුව ඔබට තේරුම් ගත හැකි‍ නොවේද.?

ඉතින් මෙම ගැටළුව දැන් විසඳිය නොහැකිද.

අක්ෂරයක් වටා ඇති හා අක්ෂර එකිනෙක බන්ධන යම් යුනිකෝඩයක් වේ නම් එය තේරුම් ගැනීම එකම විසඳුමය. (තවදුරටත් විසඳුම මා විස්තර නොකරමි. ඔබ ‍සංවාදයක් ‍ගොඩනගන්න)  

මෙම කුඩා මෘදුකාගය මගින් සිංහල භාෂාවෙන් හෝ දෙමළ බසින් වචනයක් සටහන් කළ විට. ඒ තුළ ඇති සැබෑ අක්ෂර සංඛ්‍යාව ‍නිරූපණය කරයි. එහි සටහන් කොට ලැබෙන උත්තරය ඔබ බලාපොරොත්තු වූ හා ලැබිය යුතු සත්‍ය උත්තරය නොවේද.

මෙම වරද නිවැරදි කළ හැකි වනුයේ ඔබ විසින් තනන ක්‍රමලේඛනයක පමණි. නමුත් ලෝකයේ ඇති දත්ත ගොනුවල, විසුරුම් පත්‍රිකා වල, හා පරිගණක භාෂාවන් හි ඇති මෙම වරද නිවැරදි කරන්නේ කවුරුන්ද. එය කළ යුත්තේ එම මෘදුකාංග සැකසූ ආයතනමය. එය කරන්නට බලකරන්නට ඔබ අදහස මෙම ලිපිය අගට එක්කරන්න.

අදින් පසු මා නිදා ගනිමි. මෙම ගැටළුව මට විතරක් ඇතිවූ එකක් නම් හෝ මා මවාගත් ගැටළුවක් නම් එයට මා විසඳුමක් සොයාගතිමි. මම නිදාගනිමි. නැවතත් මෙම මෘතෘකාව කථා නොකරන්නටත් තව සිහින දකින්නට අවසරයි.

.net වල පිළිතුරක් ඇත