Saturday, July 8, 2017

කාරක (Python Operators) - II කොටස



තාර්කික කාරක (Logical Operators)

පයිතන් භාෂාවේ තියන තවත් වැදගත් කාරක වර්ගයක් තමා තාර්කික කාරක කියන්නේ. තාර්කික කාරක ප්‍රධාන වශයෙන් 3 ක් තියනවා. ඒ තමා  and, or සහ not කියන ඒවා.තාර්කික ද්වාර (logic gates) ගැන දැනුමක් ඔබට තියනවනම් මේ කාරක ක්‍රියා කරන්නෙත් ඒ විදියටම තමා. ඒ කියන්නේ and කාරකය ක්‍රියා කරන්නේ and තාර්කික ද්වාරය ක්‍රියාත්මක වෙන විදියට සමාන විදියකටයි.නමුත් මෙතනදී තාර්කික කාරක බොහෝ විට ක්‍රියා කරන්නේ ප්‍රකාශන එක්ක. තාර්කික ද්වාර ගැන දැනුමක් තියන අයට වගේම නැති අයටත් පැහැදිලිව තේරුම් ගන්න අපි දැන් මේ තාර්කික කාරක  එක එක වෙන වෙනම සලකල බලමු.

and
and කාරකය පැහැදිලි කරගන්න මං මුලින්ම ප්‍රායෝගික උදාහරණයක් දෙන්නම්.දැන් ඔයාල facebook, twitter, gmail වගේ වෙබ් අඩවියක තමන්ගේ ගිණුමට (account) ලොග් වෙනවා කියල හිතන්නකෝ.එතකොට තමන්ගේ username එකත් password එකත් කියන දෙකම හරියට නිවැරදිව ඇතුලත් කලොත් විතරයි තමන්ගේ ගිණුමට ඇතුල් වෙන්න පුළුවන්.දෙකම වැරදියට ඇතුලත් කලොත් නැත්නම් එකක් හරි වැරදුනොත් ඇතුල් වෙන්න බෑ නේද ? and කාරකය ක්‍රියා කරන්නෙත් මේ විදියටයි.username එක පොඩ්ඩකට පහත වගුවේ පළමු ප්‍රකාශනය විදියටත් password එක දෙවෙනි ප්‍රකාශනය විදියත් හිතන්නකෝ.එහෙම හිතල පහත වගුව දිහා බැලුවොත් ඔයාලට පැහැ දිලි වෙයි මේ වගේ අවස්ථාවක වෙන්න පුළුවන් ආකාර පහත වගුවේ දක්වල තියනවා කියලා.මෙතැන සත්‍ය (true) කියන එකෙන් අදහස් වෙන්නේ ඔයාල නිවැරදි අගය ඇතුලත් කරනවා කියන එකයි.අවසාන තීරුවේ සත්‍ය කියන එකේ අදහස ඔයලාට තමන්ගේ ගිණුමට ඇතුල් වෙන්න පුළුවන් කියලත් හිතන්න.අසත්‍ය(false) කියන්නේ ඔයාල ඇතුලත් කරන අවස්ථා වලදී වැරදියට ඇතුලත් කරනවා කියන එක.අවසාන ප්‍රතිපලයේදී ඔයාලට ඇතුලත් වෙන්න බෑ කියන එක.

පළමු ප්‍රකාශනය
දෙවන  ප්‍රකාශනය
(පළමු ප්‍රකාශනය) and (දෙවන  ප්‍රකාශනය)
අසත්‍ය
අසත්‍ය
අසත්‍ය
අසත්‍ය
සත්‍ය
අසත්‍ය
සත්‍ය
අසත්‍ය
අසත්‍ය
සත්‍ය
සත්‍ය
සත්‍ය
 
වැදගත් :- and කාරකය මගින් ප්‍රකාශන දෙකක් සම්බන්ධ කලාම සමස්ත ප්‍රකාශනය සත්‍ය වෙන්න නම් ඒ ප්‍රකාශන දෙකම වෙන වෙනම සත්‍ය වෙන්න ඕනේ.
 
අපි දැන් ගණිතමය ප්‍රකාශන දෙකක් උදාහරණ විදියට යොදාගෙන සහ පයිතන් වැඩසටහන් මගින් and කාරකය පැහැදිලි කර ගනිමු.මේ උදාහරණ වලදී අපි කලින් කොටසේ භාවිතා කරපු සැසදුම් කාරකත් භාවිත වෙනවා.
 
පළමු ප්‍රකාශනය
දෙවන  ප්‍රකාශනය
(පළමු ප්‍රකාශනය) and (දෙවන  ප්‍රකාශනය)
(2 > 3)අසත්‍ය
(5 > 6 ) අසත්‍ය
(2 > 3) and (5 > 6 )අසත්‍ය
(2 > 3)අසත්‍ය
( 3 > 2 )සත්‍ය
(2 > 3) and (3 > 2)අසත්‍ය
(3 > 2)සත්‍ය
(5 > 6)අසත්‍ය
(3 > 2) and (5 > 6)අසත්‍ය
(3 > 2 )සත්‍ය
(6 > 5)සත්‍ය
(3 > 2) and (6 > 5)සත්‍ය
 


or 
or කාරකයත් හදුනා ගන්න අපි මුලින්ම ප්‍රායෝගික උදාහරණයක් ගනිමු.දැන් අපි හිතමු  දොරවල් දෙකක් තියන bus එකක අපි ගමනක් යනවා කියල.දොරවල් දෙකම ඇරලා තියනවනම් අපිට ඕන දොරකින් bus එකෙන් බහින්න පුළුවන් .එක දොරක් විතරක් ඇරලා තිබුනොත් එත් ප්‍රශ්නයක් නෑ.ඇරලා තියන දොරෙන් bus එකෙන් බහින්න පුළුවන්.හැබැයි දොරවල් දෙකම වහලා නම් bus එකෙන් බහින්න බෑ.or කාරකය ක්‍රියාත්මක වෙන්නෙත් මීට සමාන විදියකට.මේ එක දොරක් පළමු ප්‍රකාශනය විදියටත් අනික් දොර දෙවන ප්‍රකාශනය විදියටත් පොඩ්ඩකට හිතන්න.එතකොට සත්‍ය(true) කියන්නේ දොර ඇරලා කියන එකයි.අසත්‍ය(false) කියන්නේ දොර වහලා කියන එකයි.ඒවගේම පහත වගුවේ තුන්වන තීරුවේ දැක්වෙන්නේ ඔයාලට බස් එකෙන් බහින්න පුළුවන්ද බැරිද කියන එකයි.බහින්න පුළුවන් නම් සත්‍ය(true) විදියටත් බහින්න බැරි නම් අසත්‍ය(false) විදියටත් හිතන්න.

පළමු ප්‍රකාශනය
දෙවන  ප්‍රකාශනය
(පළමු ප්‍රකාශනය) or (දෙවන  ප්‍රකාශනය)
අසත්‍ය
අසත්‍ය
අසත්‍ය
අසත්‍ය
සත්‍ය
සත්‍ය
සත්‍ය
අසත්‍ය
සත්‍ය
සත්‍ය
සත්‍ය
සත්‍ය
 
වැදගත් :- or කාරකය මගින් ප්‍රකාශන දෙකක් සම්බන්ධ කලාම සමස්ත ප්‍රකාශනය සත්‍ය වෙන්න නම් ඒ ප්‍රකාශන දෙකෙන් එකක් හෝ දෙකම හෝ සත්‍ය වෙන්න ඕනේ.ඒ කියන්නේ එක ප්‍රකාශනයක් සත්‍ය වුනාම ඇති සමස්ත ප්‍රකාශනයම සත්‍ය වෙන්න.
 
අපි දැන් කලින් සලකල බලපු ගණිතමය ප්‍රකාශන ම or කාරකය එක්කත් යොදල බලමු මොන වගේ ප්‍රථිපලයක් ලැබෙයිද කියල.
 
පළමු ප්‍රකාශනය
දෙවන  ප්‍රකාශනය
(පළමු ප්‍රකාශනය) or (දෙවන  ප්‍රකාශනය)
(2 > 3)අසත්‍ය
(5 > 6 ) අසත්‍ය
(2 > 3) or (5 > 6 )අසත්‍ය
(2 > 3)අසත්‍ය
( 3 > 2 )සත්‍ය
(2 > 3) or (3 > 2) සත්‍ය
(3 > 2)සත්‍ය
(5 > 6)අසත්‍ය
(3 > 2)  or (5 > 6) සත්‍ය
(3 > 2 )සත්‍ය
(6 > 5)සත්‍ය
(3 > 2) or  (6 > 5) සත්‍ය
 
මේ ප්‍රථිපල එක එක ගැන වෙන වෙනම අපි පැහැදිලි කර ගත්තොත් පළමු ප්‍රකාශනයේදී ප්‍රකාශන දෙකම අසත්‍ය නිසා සමස්ත ප්‍රකාශනයම අසත්‍ය වෙනවා.දෙවන සහ තුන්වන පේළි වල තියන ප්‍රකාශන වල එක ප්‍රකාශනයක් සත්‍ය වෙන නිසා සමස්ත ප්‍රකාශනයම සත්‍ය වෙනවා.අවසන් පේළියේ තියන ප්‍රකාශනයේ ප්‍රකාශන දෙකම සත්‍ය වෙන නිසා මුළු ප්‍රකාශනයමත් සත්‍ය වෙනවා.
 
අපි දැන් පයිතන් වැඩසටහනක් යොදාගෙන මේ උදාහරණ ක්‍රියාත්මක වෙන විදිය බලමු.
 
 

 

not 

not කාරකයෙන් වෙන්නේ හැම වෙලාවේම තියන අගයේ ප්‍රතිවිරුද්ධ අගය ලබා දෙන එක.0 ලබාදුන්නොත් 1 ලබා දෙනවා.1 ලබා දුන්නොත් 0 ලබා දෙනවා .ඒ කියන්නේ සත්‍ය ප්‍රකාශනයක ප්‍රතිදානය not කාරකයට යොමු කලොත් අසත්‍ය ප්‍රථිපලයක් ලැබෙනවා.අසත්‍ය ප්‍රකාශනයක ප්‍රතිදානය not කාරකයට යොමු කලොත් සත්‍ය ලෙස ප්‍රතිදානය ලැබෙනවා .කලින් සදහන් කරපු තාර්කික කාරක දෙකටම වඩා not කාරකය තේරුම් ගන්න එක ලේසියි.අපි දැන් උදාහරණ සහ පයිතන් ප්‍රකාශන මගින් not ද්වාරය තව දුරටත් පැහැදිලි කර ගනිමු.

ප්‍රකාශනය
not (ප්‍රකාශනය)
සත්‍ය
අසත්‍ය
අසත්‍ය
සත්‍ය
  
ප්‍රකාශනය
not (ප්‍රකාශනය)
සත්‍ය (6 > 5 )
not (6 > 5 ) = අසත්‍ය
අසත්‍ය(5 > 6 )
not (5 > 6 ) = සත්‍ය
  
 

 

පයිතන් පරිගණක භාෂාවේ භාවිතා වන කාරක (Python Operators) අතරින් අංක ගණිතමය කාරක ,සැසදුම් කාරක සහ තාර්කික කාරක ගැන අපි මේ වෙනකොට  සාකච්චා  කරල ඉවරයි . ඒ වගේම කාරක පිළිබදව කතා කරනකොට තවත් ඉතාම වැදගත් කොටස් වන පැවරුම් කාරක සහ බිටුමය කාරක වගේම කාරක ප්‍රමුඛතාව ගැන මීලග post එකෙන් කතා කරමු.