Like us on Facebook

Pseudo Codes ( ව්‍යාජ කේත- 2 ) තවදුරටත් ...

Pseudo Code



Hi Boys & Girls .....
ඔක්කොම හොඳින් කියලා හිතනවා. අද මම බලාපොරොත්තු වෙනවා Pseudo Codes වල දෙවෙනි පාඩම කරන්න. මේකේ පලවෙනි පාඩම මීට කලින් කවදාවත් නොදැකපු අය සහ මතක නැති අය (:D) මේ ලින්ක් 1න් යන්න.



හොඳයි එහෙනම් අපි අද දෙවෙනි කොටස බලමු. මේක ඉදිරියට කරන් යන්න කලින් අපි පොඩි වචන වගයක් තේරුම් බේරුම් කරන් ඉමු. සමහර ඒවා පොඩ්ඩක් අවුල් වෙයි. එහෙම වුනාට ගණන් ගන්නෙපා. හේතුව අපි ගැටළු සාකච්චා කරද්දී ඒ වචන වල ප්‍රායෝගික භාවිතාව අහුවෙන නිසා.



1. Variable
මේක ගැන නම් දන්නවා ඇතිනේ. අමතක නම් මතක් කරගන්නකො. උඩ තියෙන පින්තූරේ N1,N2,Total කියන 3ම Variables. Variables කියන්නේ සරලව කිව්වොත් අපේ වැඩසටහනේ ක්‍රියාවලීන් සඳහා අවශ්‍ය වන දත්ත තබාගැනීමට භාවිතා වෙන ක්‍රමයක්. Computer එකෙදීනම් මේ Variables වෙනුවෙන් Ram එකේ ඉඩක් වෙන් කරගන්නවා.

2. Arrays
Arrays කියන්නේ Variables වල ඉහල මට්ටමේ එකක් වගේ කියලත් කියන්න පුළුවන්. (මොකක් කිව්වා..??)
ඇත්තෙන්ම Variable එකකදී අපිට එක වරකට ගබඩා කරගන්න පුළුවන් එක දත්තයක් පමණයි. එත් Array 1 ක එක වතාවකදී දත්ත එකකට වඩා දාගෙන තියාගන්න පුළුවන්.
Name="Saman"  -> Variable එකක්
Names="Saman","Nimal","Amal"  -> Array එකක් (අගයන් එකකට වඩා දාගත හැකියි.)

3. Conditions
Conditions කියන්නේ යම් කොන්දේසියක් තෘප්ත වන විට, නැත්නම් තෘප්ත නොවන විට විය යුතු දේ ගැන උපදෙස් ලබාදෙමේදී භාවිතා වෙන ක්‍රමේට. IF,Else Conditions කියන්නේ මේ වර්ගයේ ඒවා තමයි. 

4. Loops 
Loops කියන්නේ අපේ වැඩසටහනේ යම් කොන්දේසියක් තෘප්තවෙලා තියෙනතුරු එහෙමත් නැත්නම් යම් කොන්දේසියක් තෘප්ත නොවන තුරු නොකඩවා වෙන්න ඕනා දෙයක් ගැන උපදෙස් දීමට භාවිතා වන ක්‍රමවලට.
Flow Charts ඉගෙන ගද්දී While කියන Loop එක භාවිතා වෙලත් ඇති. තේරුනේ නැත්නම් කලබල වෙන්නෙපා. මේකේ ගැටළු විසඳනකොට තේරුම යනවා.

ඊළඟට මේ Pseudo Codes ආකෘති 3කට බෙදාගන්න පුළුවන්.
1. Sequence Control Structure(අනුක්‍රමික පාලක ආකෘතිය)
2. Selection Control Structure(තේරීම් පාලක ආකෘතිය)
3. Repetition Control Structure(පුනරාවර්තී පාලක ආකෘතිය)

මේ 3න් පලවෙනි එක ගැන පලවෙනි පාඩමෙන් කතා කරපු නිසා දෙවෙනි ආකෘතියේ සිට අපි මේ ලිපියෙන් කතා කරමු.

2. Selection Control Structure(තේරීම් පාලක ආකෘතිය)


කලින් ආකෘතියේදී වුනේ පිළිවෙලට උපදෙස් ලබාදීමක් සහ ඒවා පිළිවෙලට execute(ක්‍රියාත්මක ) කිරීමක්. එත් මේ ආකෘතියේදී ඊට අමතරව කතා කෙරෙනවා තොරගැනීමක් භාවිතා කරන හැටි.
අපි උදාහරනේකින්ම මේ ගැන බලමු.

ex:
01. Write a pseudo code for a program to input marks of a student and output "Pass" or "Fail". Pass mark is 75.
(ශිෂ්‍යයෙකුගේ ලකුණු ඇතුලත් කොට "Pass" හෝ "Fail" යන ප්‍රතිදානය ලබාගැනීමට ව්‍යාජ කේතයක් සකසන්න. සමත්කිරීමේ ලකුණ 75 වේ.)

Start

Marks = 0
Input Marks
If (Marks >= 75)
     Output "Student is Pass"
Else
     Output "Student is Fail"
End If

End

දැන් අපි පියවරෙන් පියවර මෙහි දුන් codes ගැන සලකා බලමු.

මුලින්ම Pseudo Code එක ආරම්භ කරන්නේ Start කියන Code එකෙන්. 
ඊළඟට Marks නමින් Variable එකක් සැකසීම කරලා, එහි අගය 0ට  සමාන කරලා තියෙනවා. (Marks = 0)

Input Marks
මේ code 1න් කරන්නේ ඇතුල් කරන අංකය Marks කියන variable එකට දාගන්න එක.

ඊට පස්සේ තමයි හොඳම හරිය.

If (Marks >= 75)
Marks යන variable එකේ අගය 75ට සමාන හෝ විශාල නම්,

"Student is Pass" යන්න output කරනවා.

Else කියන්නේ එහෙම නෙමෙයි නම්, නැත්නම් කලින් සලකා බැලූ කොන්දේසිය තෘප්ත නොවේ නම් කියන එක.
ඉතින් මේ යටතේ එන්නේ අර If එකෙන් සලකා බැලූ කොන්දේසිය තෘප්ත නොවුනොත් වෙන්න ඕනා දේ ගැන උපදෙස්.

එතැනදී output වෙන්න ඕනා "Fail" කියලනේ. ඒ නිසා තමයි 
Output "Student is Fail" කියන පේලිය තියෙන්නේ.

ඊළඟ පේලියේදී If Condition එක අවසන් කිරීම කරලා තියෙනවා 
End If    කියන command 1න්.

අවසාන වශයෙන් Pseudo Code එක අවසන් කිරීම කරලා තියෙනවා
End  කියන command 1න්. පටන් ගන්න ඒවා ඉවර කොරන්නත් එපැයි. :D

හරි එහෙනම්. ඔන්න මම ලස්සනට පියවරෙන් පියවර පලවෙනි උදාහරනේ පැහැදිලි කලා. දෙවෙනි එකේදී මේ තරම්ම දිගට පැහැදිලි කරන්නැහැ. එහෙම වුනොත් මේ පොස්ට් එක ගොඩාක් දිග වෙනවා. ඒ නිසා මම කෙටියෙන් හැමෝටම තේරෙන මට්ටමෙන් Short n Sweet විදියට දාන්න හදන්නම්කො.


01. Write a pseudo code for a program to input a number output "Odd Number" if it is an odd number and output "Even Number" if it is an even number .
(යම් අංකයක් ඇතුලත් කොට එය ඔත්තේ අංකයක් නම් "Odd Number"කියාද , ඉරට්ටේ අංකයක් නම් "Even Number" කියාද ප්‍රතිදානය ලබාගැනීමට ව්‍යාජ කේතයක් සකසන්න.)

හෆ්ෆා... දැන් හෙන ප්‍රශ්නයක්නේ.. කොහොමද ඔත්තේ, ඉරට්ටේ හොයාගන්නේ..?? සමහරු නම් ක්‍රමේ දන්නවත් ඇති. මෙහෙමයි.

ඕනෑම ඉරට්ටේ අංකයක් 2න් බෙදුවම ඉතිරිය 0යි. ඒවගේම ඔත්තේ සංක්‍යාවක් 2න් බෙදුවම ඉතිරිය 1යි. ඒ නිසා ඇතුලත් කරන අංකය 2න් බෙදුවම එන ඉතිරිය සලකා බලන්න ක්‍රමේ හදාගත්තනම් වැඩේ ගොඩනේ. ඒ නිසා අපි ඒ ක්‍රමේ භාවිතා කරනවා. හැබයි එකත් ක්‍රම 2කට කෙරුවහැකි.

1. පළමුව ඔත්තේ ඉලක්කමක්ද කියා සලකා බලා, එසේ නොවේනම් ඉරට්ටේ ඉලක්කමක් දැයි බැලීම.

2. පළමුව ඉරට්ටේ ඉලක්කමක්ද කියා සලකා බලා, එසේ නොවේනම් ඔත්තේ ඉලක්කමක් දැයි බැලීම.

2න් කොයි ක්‍රමේ කලත් හරි. මම මේ උදාහරනේදී එකටම ඉරට්ටේද කියල බලන ක්‍රමේ ගන්නවා.


මෙක්දී තව පොඩි පොබ්බම් එකක් තියෙනවා. කොහොමද ඉලක්කමක්, තව එකකින් බෙදූ විට ඉතිරිය අරගන්නේ.

එකට Pseudo Code වලදී මෙහෙම ක්‍රමයක් ගන්නවා.

4 % 2 = 0

3 % 2 = 1

% ලකුණෙන් කියන්නේ බෙදූ විට ඉතිරිවන කියන එක. 

එමනිසා,   
5 % 2 = 1
6 % 3 = 0
9 % 5 = 4
7 % 2 = 1

මම හිතනවා දැන් සිස්ටම් එක තේරුණා කියලා.

එහෙනම් අපි දැන් විසඳුම බලමු.

මේකෙදි අපි බෙදීමෙන් පසු ඉතිරිවන අගය දාගන්න Rem කියලා variable 1ක් හදාගන්නවා.(Remainder=ඉතිරිය කියන තේරුමින්. කැමති නම් වෙන නමක් වුනත් variable 1ට දාගන්න පුළුවන්.) 

Start

N = 0 , Rem = 0 
Input N
Rem = N % 2
If (Rem = 0)
     Output N, " is an Even Number"
Else
     Output N, " is an Odd Number"
End If

End

දැන් බලමු මේකේ තේරුම් අරගන්න.


Input N
මේ code 1න් කරන්නේ ඇතුල් කරන අංකය N කියන variable එකට දාගන්න එක.


ඊට පස්සේ Rem = N % 2 කියන code එකෙන් වෙන්නේ N කියන variable එකේ අගය 2න් බෙදූ විට ලැබෙන ඉතිරිය Rem කියන variable 1ට සමාන කරගැනීම.



If (Rem = 0)
මේ code 1න් චෙක් කරලා බලනවා බෙදූ විට ලැබෙන ඉතිරිය 0ට සමානද කියලා. සමානයි නම් ඉතින් ආයේ බලන්න දෙයක් නැහැ ඉරට්ටේනේ. ඒ නිසා N is an Even Number" කියලා output කරනවා.

එහෙම නැත්නම්, ඉතිරිය 0 නෙමෙයි නම් N is an Odd Number" කියන output එක දෙන්න කියලා තමයි මේ code 1න් කියන්නේ..

හැබැයි මේකෙදි වෙනුවට ඇතුලත් කරන අංකයයි එන්නේ. තේරුණානේ නේද.
උද:
N (ඇතුලත් කරන අංකය)3යි නම්,
3 is an Odd Number

N 4යි නම්,
4 is an Even Number

තෙරුණානේ හෆ්ෆා... අද පොස්ට් එක නම් හොදටෝම දිග වුනා. ඒ නිසා මෙතෙකින් නිමා කොට 3වෙනි වර්ගය සහ තවත් ගැටළු Pseudo Codes(ව්‍යාජ කේත) - 3 කියන පාඩමෙන් දාන්නම්. එක හැකි ඉක්මනින් දාන්නම්කො.

එහෙනම් අපි ඊළඟ ලිපියෙන් තව තොරතුරු කතා කරමු. දිගටම අපිත් එක්ක රැඳිලා ඉන්න. යාලුවන්වත් අපේ blog එක ගැන දැනුවත් කරන්න කියලා ඉල්ලනවා. හැමෝටම ජය වේවා...!!





Written by:  Admin Dila

2 comments :

kooo repitition nehanee

June 16, 2016 at 3:26 AM comment-delete

Elz kolla hoda wadak ah jaya weva

May 13, 2017 at 9:43 AM comment-delete

Post a Comment

Related Posts Plugin for WordPress, Blogger...