ගැටළු විසඳීමට ක්‍රමලේඛ ලිවීම

Table of Contents

11 ශ්‍රේණිය පළමු පාඩම වන ගැටලු විසඳීමට ක්‍රමලේඛ ලිවීම යන ඒකකයට අයත් පාඩම් සටහන් මෙම ලිපියට ඇතුළත් කර ඇත. මෙම මෙය හොඳින් පරිශිලනය කර ගැටලු විසඳීමට ක්‍රමලේඛ ලිවීම සඳහා අවශ්‍ය දැනුම වර්ධනය කරගන්න.

පරිගණක ක්‍රමලේඛනය #

What Is Computer Program ? | Computer Programming Basics | Coding

පරිගණක ක්‍රමලේඛනයක් යනු,

පරිගණකයකට යම් කාර්යයක් කිරීම සඳහා ලබාදෙන විධාන සහ උපදෙස් මාලාවක එකතුවකි. මෙම විධාන සහ උපදෙස් මාලාව මඟින් පරිගණකය ආධාරයෙන් ගැටලුවකට විසඳුම සොයාගැනීමේ හැකියාව ලැබේ.

පරිගණක ක්‍රමලේඛනයක් නිර්මාණය කිරීමේදී අනුගමනය කල යුතු පියවර,

  1. ගැටලුව තේරුම් ගැනීම සහ විශ්ලේෂණය කිරීම – Understanding the problem.
  2. ගැටලුව සඳහා ඇල්ගොරිතම ගොඩනැඟීම – Developing an Algorithm for the problrm.
  3. පරිගණක ක්‍රමලේඛය ලිවීම – Writing a computer program.
  4. පරිගණක ක්‍රමලේඛය ක්‍රියාත්මක කර බැලීම – Testing the computer program

ගැටලුව තේරුම් ගැනීම සහ විශ්ලේෂණය කිරීම – Understanding the problem. #

Psychological Steps Involved in Problem Solving - Psychestudy

ගැටලුවක් විශ්ලේෂණය කිරීම යනු,

එම ගැටලුව විසඳීම සඳහා අවශ්‍ය ආදාන, ක්‍රියාවලිය සහ ප්‍රතිදානය වෙන් වෙන්ව හඳුනා ගැනීමයි.

  • ගැටලුවක් විසඳීමට යොදා ගන්නා අමුද්‍රව්‍ය – ආදාන (Input) ලෙස හදුන්වයි.
  • ගැටලුව විසඳීමෙන් ලබාගන්නා ප්‍රතිඵලය – ප්‍රතිදානය (Output) ලෙස හැඳින්වේ.
  • ආදාන, ප්‍රතිදාන බවට පත් කිරීමේ ක්‍රියාවලිය – සැකසීම (Process) ලෙස හැඳින්වේ.
  • මෙය පියවරින් පියවර සිදු වන අතර එය අනුපිලිවෙලට දැක්වීම වැදගත් ය.
  • ගැටලුවක් විශ්ලේෂණයේදී එහි ආදාන, ක්‍රියාවලි හා ප්‍රතිදාන වෙන් වෙන්ව හඳුන්ගනී.

සරල උදාහරණයක් සලකා බලමු.

අපි දැන් එහි ආදාන, ක්‍රියාවලිය සහ ප්‍රතිදානය වෙන් කර ලියමු.
  • ආදාන – විදුලි කේතලය, ජලය, සීනි, තේ කොළ‍, කෝප්පය, හැන්ද, නැවුම් කිරි
  • ක්‍රියාවලිය –
    1. විදුලි කේතලයට වතුර දමා එම වතුර උණු කර ගැනීම.
    2. උණු වතුර කෝප්පයට දැමීම.
    3. තේ කොළ බෑගය කෝප්පයට දමා මද වේලාවක් තැබීම.
    4. කහට ප්‍රමාණය ඇති වූ පසු තේකොළ බෑගය ඉවත් කිරීම.
    5. එයට නැවුම් කිරි අවශ්‍ය ප්‍රමාණයට එක් කිරීම.
    6. අවශ්‍ය ප්‍රමාණයට සීනි දැමීම සහ කවලම් කිරීම.
  • ප්‍රතිදානය – රසවත් තේ කෝප්පයක්

එදිනෙදා ජීවිතයේදී මෙවැනි සරල උදාහරණ බොහොමයක් අපට හමුවේ. තොරතුරු තාක්ෂණය ඉගෙන ගන්නා සිසුන් ලෙස අප එම සිදුවීම් දෙස ගැටලු විශ්ලේෂණය කිරීමේ ඇසින් බලන්නට පුරුදු වෙමු. එවිට ගැටලු විශ්ලේෂණය කිරීම ඔබට ඉතා සරල දෙයක් වනු ඇත.

එවැනි උදාහරණ කිහිපයක් බලමු.

  • ලිපියක් තැපැල් කිරීමට සූදානම් කිරීම.
  • සංඛ්‍යා දෙකක එකතුව සෙවීම.
  • විනෝද චාරිකාවක් යාමට සැලසුම් කිරීම.
  • නිවසක් ඉදි කිරීම.
  • වාහනයක් සෑදීම
  • විභාගයක් ජය ගැනීම.
ක්‍රියාකාරකම 01. #

ඉහත දක්වන ලද උදාහරණ සඳහා ගැටලු විශ්ලේෂණ ලියන්න.

විකල්ප විසඳුම් #

එකම ගැටලුවක් සඳහා විසඳුම් එකකට වඩා තිබිය හැක. එසේ එකව ගැටලුවක් සඳහා ඇති වෙනත් විසඳුම් විකල්ප විසඳුම් ලෙස හැඳින්විය හැක. ගැටලු විශ්ලේෂණයේදී ද එම ගැටලුව විශ්ලේෂණය කරනු ලබන පුද්ගලයා අදාල ගැටලුව දෙස බලන ආකාරය හා ඔහුගේ දැනුම මට්ටම අනුව එය විශ්ලේෂණය කරන ආකාරය තීරණය වේ. එනම් එකම ගැටලුව කිහිප දෙනෙකුට විශ්ලේෂණය කිරීමට අවස්ථාව ලබා දුනහොත් විවිධ ආකාරයේ විසඳුම් ලැබීමට ඉඩ ඇත.

කෙසේ වෙතත් අවසානයේ ලාබන ප්‍රතිදානය එකම වන්නේ නම් එම විසඳුම් සියල්ල සාර්ථක විකල්ප විසඳුම් ලෙස හැඳින්වීමට හැක.

සරල උදාහරණයක් ඇසුරින් මෙය තවදුරටත් පැහැදිලි කරගනිමු.

ඔබසතුව පාපැදියක් ඇත. එමෙන්ම ඔබගේ පියාට මොටර් රථයක් ද ඇත. ඔබ නිවසේ අසල්වැසියන් සතුව කුලී රථයක් ද ඇත. ඔබ ඔබගේ නිවස ඇත්තේ නාගරික ප්‍රදේශයක ප්‍රධාන බස් මාර්ගයට මුහුණලා වේ. හෙට දින ඔබට ඔබේ මිතුරෙකු හමුවීමට ඔහුගේ නිවසට යායුතුව ඇත.

මිතුරාගේ නිවසට යාම සඳහා ඔබට භාවිත කළ හැකි ප්‍රවාහන මාධ්‍යයන් ගැන මදක් සිතන්න.

  1. ඔබේ පාපැදියෙන් ඔබට මිතුරාගේ නිවසට යා හැකිය.
  2. ඔබේ පියා රැකියාවට යන විට ඔහු සමග මිතුරාගේ නිවසට යාමට හැකිය.
  3. අසල්වැසි නිවැසියාගේ කුලී රථයෙන් ද ඔබට මිතුරාගේ නිවසට යා හැකිය.
  4. නැතිනම් පොදු ප්‍රවාහන සේවයක (මගි බස් රථයක) ඔබට මිතුරාගේ නිවසට යා හැකිය.

ඉහත දක්වන ලද ආකාර ප්‍රවාහන ආකාර සියල්ලම අවසානයේ ඔබට ලැබෙන්නේ එකම ප්‍රතිදානයයි. එනම් මිතුරාගේ නිවසට යාමයි. නමුත් ඔබ එම ප්‍රවාහන ආකාර අතරින් තෝරාගන්නේ ඔබට පහසුම ආකාරය නොවේ ද? යම් හෙයකින් ඔබේ පාපැදියේ රොදයක දෝෂයක් හෝ වෙනත් දෝෂයක් නිසා පාපැදියෙන් යාමට නොහැකි නම් ඊලඟට ඔබට පහසු ආකාරය ඔබට තෝරාගත හැකි වේ.

මේ අනුව ගැටලු විශ්ලේෂණයේදි ද මෙම ක්‍රියාවලිය එලෙසම සිදු වේ. විකල්ප විසඳුම් කිහිපයක් ඇතත්, සරලම සහ පහසුම ක්‍රමය භාවිතා කිරීමෙන් ගැටලුට ඉතා සරල පැහැදිළි විසඳුමක් ලබාගැනීමට හැකි වේ. එය වටහාගැනීමටද පහසු වේ. යමු හෙයකින් අප සතු සම්පත් හෝ වෙනත් සාධකයක ඌනතාවයක්/ හිඟකමක් නිසා අපට වෙනත් විකල්ප විසඳුමකට උවද යාමේ වරදක් නැත. ඒ මන්ද යත් අවසානයේ අප බලාපොරොත්තු වන විසඳුම අප වෙත ලැබෙන හෙයිනි.

ඒ අනුව දැන් ඔබට ගැටලුවක් සඳහා විකල්ප විසඳුම් ඇති බවත්, අවශ්‍යතාවය මත ඕනෑම විසඳුම් ආකාරයක් යොදා ගනිමින් ප්‍රතිදානය ලබාගත හැකි බවත් පැහැදිළි වනු ඇත.

ක්‍රියාකාරකම 02 #

පහත දක්වා ඇති ගැටලු සඳහා විකල්ප විසඳුම් 02 බැගින් ලියන්න.

  1. එක්තරා සිසුවෙකු විභාගයට ලබාගත් ලකුණු අනුව ඔහු සමත් හෝ අසමත් බව දැක්වීම. තීරණාත්මක සාධකය වන්නේ ලබාගත් ලකුණු 35 ට වැඩි හෝ අඩු වීමයි.
  2. සෘජුකෝණාස්‍රයක පරිමිතිය සෙවීම.
  3. කළුතර සිට කොළඹ බණඩාරණායක අනුස්මරණ සම්මන්ත්‍රණ ශාලාවේ ප්‍රදර්ශනයක් නැරඹීමට යාම.
  4. ලංකාවේ සිට ඉන්දියාවට සංචාරය කිරීම.
  5. සුපිරි වෙළඳසැලකට ගොස් භාණ්ඩ මිලදීගෙන එහි බිල්පත ගෙවීම.

ගැටලුව සඳහා ඇල්ගොරිතම ගොඩනැඟීම – Developing an Algorithm for the problrm. #

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

ගැටලුවක් විසඳීම සඳහා ඇල්ගොරිතමයක් ලිවීම වැදගත් වන්නේ, එවිට එම ගැටලුව සැලසුමක් සහිතව විසඳීමට අවස්ථාව ලැබෙන නිසාවෙනි. එහිදී ගැටලුව විසඳීමට ආරම්භ කිරීමට පෙර අප විසින් ලියන ලද ඇල්ගොරිතමය දෙස බලා අපේක්ෂිත ප්‍රතිඵලය ලැබෙන්නේ දැයි පුරෝකථනය කිරීමේ හැකියාව අපට ලැබේ. එබැවින් ගැටලුවක් විසඳීමට පළමුව ඒ සඳහා ඇල්ගොරිතමයක් ගොඩනැඟීම මඟින් විවිධ වාසි අත්කරගත හැකි වේ.

ඇල්ගොරිතම සංවර්ධනය සඳහා පාලන ව්‍යුහ – Control Structures #

එදිනෙදා ජීවිතයේදී අපට විවිධාකාරයේ ගැටලු හමුවේ. එම ගැටලු ප්‍රධාන වශයෙන් ආකාර 03කට වෙන් කළ හැකිය. එනම් සමහර ගැටලු පියවරින් පියවරට පිළිවෙලට විසඳාගත හැකිය. එමෙන්ම තවත් ගැටලු විසඳීමේදී යම් යම් තීරණ ගැනීමට සිදුවන අතර එම තීරණ අනුව ලබාගතහැකි විසඳුමද වෙනස් වේ. තවත් සමහර ගැටලු වලට විසඳුම් සෙවීමට නම් එකම ක්‍රියාවලියක් නැවත නැවත විසඳුම ලැබෙන තුරු ක්‍රියාත්මක කල යුතුවේ.

ඇල්ගොරිතම ද ප්‍රධාන වශයෙන් ආකාර 03ක් පවතින බව ඒ අනුව නිරීක්ෂණය කළ හැකිය. මෙම ආකාර, පාලන ව්‍යුහ (Control Structure) ලෙස හැඳින්වේ. එම පාලන ව්‍යුහ 03 නම්,

  1. අනුක්‍රමය – Sequence
  2. වරණය/තේරීම – Selection
  3. පුණර්කරණය – Iteration / Repetition

ඇල්ගොරිතමය ගොඩනැගීම රූපමය ආකාරයෙන් (Graphically) හෝ ලිඛිත ආකාරයෙන් (Textually) දැක්විය හැකිය. #

  1. රූපමය ආකාරය – ගැලීම් සටහන් ක්‍රමය (flow Chart Method)
  2. ලිඛිත ආකාරය – ව්‍යාජකේත ක්‍රමය (Pseudo Code Method)

ඇල්ගොරිතමයක් ගොඩනඟන අයුරු සලකා බලමු.විසඳිය හැකි සෑම ගැටලුවක් සඳහාම ඇල්ගොරිතම ලිවිය හැක. එය පියවර අනුක්‍රමයකි. යම් කාර්යයක් පරිගණකය හරහා සිදුකර ගැනීමේදී, එහි ප්‍රතිඵලය ලබාගත යුතු ආකාරය පිළිබඳව, පියවරින් පියවර ලියන ලද උපදෙස් මාලාව ඇල්ගොරිතමයක් මගින් දැක්වේ.

කාමරයක වර්ගඵලය සෙවීම.

  1. ආරම්භ කරන්න.
  2. කාමරයේ දිග ලබා ගන්න.
  3. කාමරයේ පළල ලබා ගන්න.
  4. කාමරයේ දිග x පළල මඟින් වර්ගඵලය සොයන්න.
  5. වර්ගඵලය තිරයේ දක්වන්න.
  6. අවසන් කරන්න.
වෘත්තයක වර්ගඵලය සෙවීම.

  1. ආරම්භ කරන්න.
  2. අරය (r) ලබාගන්න.
  3. වර්ගඵලය = Pi x r x r
  4. වර්ගඵලය තිරය මත පෙන්වන්න.
  5. අවසන් කරන්න.
ක්‍රියාකාරකම 03

පහත උදාහරණ සඳහා ඇල්ගොරිතම ලියන්න.

  1. ලිපියක් තැපැල් කිරීමට සූදානම් කිරීම.
  2. සංඛ්‍යා දෙකක එකතුව සෙවීම.
  3. සංඛ්‍යා දෙකකින් විශාල සංඛ්‍යාව තේරීම.
  4. රසවත් පළතුරු සලාදයක් සෑදීම.
  5. සංඛ්‍යාවක් ඇතුලත් කර එය ඔත්තේ ද ඉරට්ටේ ද යන්න සෙවීම.
  6. විභාගයකින් සමත් හෝ අසමත් වීම.

ගැලීම් සටහන් – Flow Charts #

ඇල්රිතම ගොඩනැඟීමේ රූපමය ආකාරය වන්නේ ගැලීම් සටහන් ක්‍රමයයි.  (Flow Chart Method)

ගැලීම් සටහන් වලදී භාවිතා කරන සංකේත – Symbols used in Flow Chart #
 ආරම්භය (Start) / අවසානය (End)
 ආදානය (Input) / ප්‍රතිදානය (Output)
 ක්‍රියාවලිය (Process)
තීරණය (Decision)
සම්බන්ධකය (Connector)
දත්ත ගලා යන දිශාව (Flow Line)

ව්‍යාජ කේත (Pseudo Code) #

ඇල්ගොරිතම ගොඩනැඟීමේ ලිඛිත ආකාරය වේ. ගැටලුවක් විසඳීම සඳහා අනුගමනය කරන ක්‍රමවේදය සංක්ෂිප්තව මානව භාෂාවක් (Human Language) මගින් ඉදිරිපත් කිරීම ව්‍යාජ කේතයක් (Pseudo Code) ලෙස හැඳින්වේ.

මෙසේ ලියනු ලබන ව්‍යාජ කේතයක් පරිගණක භාෂාවකින් ස්වායත්ත වන අතර ඕනෑම පරිගණක භාෂා උපදෙසක් බවට පහසුවෙන් පරිවර්තනය කළ හැකි ය. එබැවින් ව්‍යාජ කේත මඟින් ක්‍රමලේඛනය පහසු වේ. ව්‍යාජ කේත ලිවීමේදී සරල ඉංග්‍රීසි වචන භාවිතා කරයි.

ව්‍යාජ කේත වල බහුලව භාවිත කරන සරල ඉංග්‍රීසි යෙදුම්. #

  • ආරම්භය   – Begin
  • අවසානය   – End
  • ආදානය     – Input, Read, Get, Enter
  • ප්‍රතිදානය   – Output, Display, Show, Print
  • ක්‍රියාවලිය  – Process, Calculate
  • වරණය     – If … Then … Else … Endif
  • පුණර්කරණය  –  For – Do /  While – Endwhile / Repeat – Unti

ව්‍යාජ කේත ලිවීමේ වාසි. #

  • පරිගණක භාෂාවකින් ලියනු ලබන විධාන රැසක් සාරාංශ කර ලිවීය හැකි වීම.
  • පහසුවෙන් පරිගණක භාෂාවකට පරිවර්ථනය කළ හැකි වීම.
  • පරිගණක වැඩසටහන් සැලසුම් කිරීමට පහසු වීම.
  • පරිගණක පිළිබඳ දැනුමක් නොමැති පුද්ගලයින්ට වූවත් පැහැදිලි කිරීමට යොදාගත හැකි වීම.
  • පරිගණක වැඩසටහන් නිර්මාණය කිරීමට පෙර ගැටළු සහගත අවස්ථා නිවැරදි කරගැනීමට හැකි වීම.

දත්ත ලබා ගැනීම. (Read/Get/Input) #

  1. වැඩසටහනට නමක් ඇතුලත් කිරීමට,
  2. වැඩසටහනට සංඛ්‍යාවක් ඇතුලත් කිරීමට.

Begin

Read name ——–{1}

Get Num1 ———{2}

Input Marks ——{2}

End.

  • Read, Get, Input වැනි විධානයන් මඟින් වැඩසටහනට යම් ආදානයක් ලබාදිය හැකි ය.

තොරතුරු පිටතට ගැනීම. (Print/Write/Output/Display) #

  1. වචන කිහිපයක්/වාඛ්‍යයක්/වචනයක්
  2. විචල්‍යයකට පැවරූ අගයයක්.
  3. වචන කිහිපයක් සමඟ අගයයක්.

Begin

 Print “Enter 1st Number : ” ——{1}

Write Num1  ———-{2}

Output “Your Grade is :” , Grade —–{3}

End.

මේ සඳහා Print, Write, Output වැනි විධානයන් භාවිත කළ හැකිය. යම් ප්‍රකාශයක් ප්‍රතිදානය කරන්නේ නම් එය පෙරලි කොමා ( ” ” ) තුළ දක්වන අතර (උදාහරණ {1}), යම්කිසි විචල්‍යයක් මත පවරන ලද අගයයක් ප්‍රතිදානය කරන්‌නේ නම් එම විචල්‍යය පමණක් ලිවීම ප්‍රමාණවත් වේ. (උදාහරණ {2}) එමෙන්ම කිසියම් ප්‍රකාශයක් සමග විචල්‍යයක් ප්‍රතිදානය කරන්නේ නම් උදාහරණ {3} හි දැක්වෙන පරිදි ව්‍යාජ කේතය ලියනු ලැබේ.

ගණිතමය ක්‍රියාකාරකම් – Mathematical Operations #

Begin

Calculate

Total = Total + Num1 —> {Add Num1 to Total}

Add Score to TotalScore —> {TotalScore = TotalScore + Score}

Divide Total_marks by no_of_subjects —> {Total_Marks/no_of_Subjects}

Compute C = (F – 32)*5/9

End.

මෙහිදී සිදුකිරීමට අවශ්‍ය ගණිමය ක්‍රියාකාරකම වචනයෙන් හෝ ගණිතමය කාරක භාවිතයෙන් ලිවීම සිදුකළ හැකිය.

කිසියම් අගයයක් විචල්‍යයකට ආදේශ කිරීම. #

Begin

Total_Marks = 0

Set Total_Marks to 0

Count = 0

End.

කිසියම් අගයයක් විචල්‍යයකට ආදේශ කිරීමේදී විචල්‍යයේ නමට පසු “=” සලකුණ (පැවරුම් කාරකය) ලියා ඉන්පසු පැවරිය යුතු අගයය ලියනු ලැබේ.

ක්‍රියාකාරකම 04

  1. සංඛ්‍යා දෙකක් ඇතුලත් කර ඒවායේ එකතුව පෙන්වීමට ව්‍යාජ කේතයක් ලියන්න.
  2. සංඛ්‍යාවක් ඇතුලත්කර එය ඔත්තේ ද ඉරට්ටේ ද යන්න දැක්වීමට ව්‍යාජ කේතයක් ලියන්න.

වරණය සහිත ව්‍යාජ කේත ලිවීම. #

මේ සඳහා,

  1. If —- Then —— End if
  2. If —– Then ——– Else —– End if

යන පාලන ව්‍යුහ භාවිත වේ.

If — Then — End if #

කොන්දේසිය සත්‍ය නම් පමණක් යම් ක්‍රියාවලියක් හෝ ප්‍රතිදානයක් ලබා දීමට මෙම ව්‍යුහය භාවිත කරයි.

If —– Then ——– Else —– End if #

කොන්දේසිය සත්‍ය නම් එක් ක්‍රියාවලියක් හෝ ප්‍රතිදානයක් ද, අසත්‍ය නම් වෙනත් ක්‍රියාවලියක් හෝ ප්‍රතිදානයක් ද ලබා දීමට මෙම ව්‍යුහය භාවිත කරයි.

පුණර්කරණය සහිත ව්‍යාජ කේත. #

මෙහිදී ව්‍යාජ කේත වල භාවිත වන ලූප වර්ග කිහිපයක් ඇත.
  • WHILE .. END WHILE  Loop
  • REPEAT … UNTIL Loop
  • FOR DO Loop

අනුක්‍රමය පාලන ව්‍යුහය – Sequence Control Structure #

ඇල්ගොරිතමයක පිහිටි පියවර කිහිපයක් හෝ සියල්ල ම හෝ ආරම්භක පියවරක සිට අවසාන පියවර දක්වා එක එල්ලේ අනුපිළිවෙලින් ක්‍රියාත්මක වන ඇල්ගොරිතම අනුක්‍රමය පාලන ව්‍යුහය සහිත ඇල්ගොරිතම ලෙස හැඳින්වේ.

#

මෙම ව්‍යුහය වඩාත් හොඳින් පැහැදිලි කර ගැනීමට ඉහත අප විසින් කාමරයක වර්ඵලය සෙවීමට අදාල ගැටලුවට ලියන ලද ඇල්ගොරිතමය ඇසුරින් ඊට අදාල ගැලීම් සටහන සහ ව්‍යාජ කේතය විමසා බලමු.

ගැලීම් සටහන

ඇල්ගොරිතමය

  1. ආරම්භ කරන්න.
  2. කාමරයේ දිග ලබා ගන්න.
  3. කාමරයේ පළල ලබා ගන්න.
  4. කාමරයේ දිග x පළල මඟින් වර්ගඵලය සොයන්න.
  5. වර්ගඵලය තිරයේ දක්වන්න.
  6. අවසන් කරන්න.
ව්‍යාජ කේතය

Begin

Input Length as L and Width as W

Calculate Area = L * W

Display “Area”

End.

මෙහිදී කාමරයේ වර්ගඵලය ලබා ගැනීමට පියවරින් පියවර එක් එක් ආදානයන් ලබාගෙන එම ආදාන ඇසුරින් ප්‍රතිදානය ගණනය කර ලබාගෙන ඇත. එවැනි එක් පියවරකට පසුව පියවරක් වශයෙන් පහලට ගලාගෙන යන ආකාරයේ ඇල්ගොරිතම අනුක්‍රමය පාලන ව්‍යුහය සහිත ගැටලු ලෙස හැඳින්විය හැකිය.

ක්‍රියාකාරකම 05
පහත ගැටලු ඇසුරින් අනුක්‍රමය පාලන ව්‍යුහය පමණක් ඇති ගැටලු වෙන් කරන්න.

  1. ලිපියක් තැපැල් කිරීමට සූදානම් කිරීම.
  2. සංඛ්‍යා දෙකක එකතුව සෙවීම.
  3. සංඛ්‍යාවක් ඇතුලත් කළ විට එය ඔත්තේ ද, ඉරට්ටේ ද යන්න පෙන්වීම.
  4. නිවසක් ඉදි කිරීම.
  5. වයස අවුරුදු 18ට වැඩි අය සඳහා සර්වජන ඡන්ද බලය හිමි වීම.
  6. විභාගයකින් සමත් හෝ අසමත් වීම.

තේරීම් පාලන ව්‍යුහය – Selection Control Structure #

ඇල්ගොරිතමයක ඇතුලත් කොන්දේසියක් තෘප්ත වීම හෝ නොවීම හෝ අනුව ක්‍රියාත්මක කළ යුතු පියවර කුමක් ද යන්න තීරණය වන අවස්ථාවක් වරණයක් ලෙස හැඳින්වේ. වරනය සහිත ක්‍රමලේඛයක්, තේරීම් පාලන ව්‍යුහය සහිත ක්‍රමලේඛයක් ලෙස හැඳින්වේ.

තේරීම් පාලන ව්‍යුහය නිරූපණය කළ හැකි ආකාර, #

1. කොන්දේසිය සත්‍ය වේ ද? යන්න මත ප්‍රතිදානය තීරණය වන ආකාරය. #

මෙහිදී කොන්දේසිය සත්‍ය නම් ප්‍රතිදානයක් ලබාදෙන අතර, සත්‍ය නොවේ නම් කිසිවක් සිදු නොකර ක්‍රියාවලිය අවසන් වේ.

මෙය If … Then … End IF ප්‍රකාශයක් ලෙස හැඳින්වේ. කොන්දේසිය සත්‍ය වන්නේ නම් පමණක් ප්‍රකාශය ක්‍රියාත්මකවී ඊට අදාල ප්‍රතිඵලය ලබා දෙයි.

If … Then … End IF ප්‍රකාශයට අදාල ගැලීම් සටහනක් සහ ව්‍යාජ කේතයක් ඇසුරින් මේ පිළිබඳව පැහැදිලි කර ගනිමු. #

Begin
If <condition> Then
Ststement 1
End If
End

සංඛ්‍යාවක් ආදානය කළ විට එය 0 ට වඩා වැඩිනම් මුද්‍රණය කිරීමට අදාල ගැටලුව සලකා බලමු.

ගැලීම් සටහන

ඇල්ගොරිතමය

  1. ආරම්භ කරන්න.
  2. සංඛ්‍යාව N ඇතුලත් කරන්න.
  3. N > 0 ද? බැලීම.
  4. N > 0 නම් N මුද්‍රණය කිරීම.
  5. නැතිනම් අවසන් කරන්න.
ව්‍යාජ කේතය

Begin

Input Number As N

If N > 0 Then

Print N

End If

End.

මෙහිදී ඇතුලත් කරන සංඛ්‍යාව 0 ට වඩා වැඩිනම් පමණක් ප්‍රතිදානය ලබා දෙන අතර එසේ නොමැති නම් ප්‍රතිදානයක් නොමැතිව ක්‍රියාවලිය අවසන් වේ. මෙවැනි ගැටලු සඳහා If .. Then .. End If ආකෘතිය ක්‍රියාත්මක වේ.

2. සම්මත තේරීම් (වරණ) පාලන ව්‍යුහය #

කොන්දේසියක් පදනම් කරගෙන එය තෘප්ත වන්නේ නම් එක් ප්‍රතිඵලයක් ද කොන්දේසිය තෘප්ත නොවේ නම් තවත් ප්‍රතිඵලයක් ද ලබා දීම සිදු කරන පාලන ව්‍යුහයක් වේ.

මෙය If … Then … Else … End If ප්‍රකාශයක් ලෙස හැඳින්වේ. මෙහිදී කොන්දේසිය සත්‍ය හෝ අසත්‍ය වීම මත ලැබෙන ප්‍රතිදානය තීරණය වේ.

If … Then … Else … End IF ප්‍රකාශයට අදාල ගැලීම් සටහනක් සහ ව්‍යාජ කේතයක් ඇසුරින් මේ පිළිබඳව පැහැදිලි කර ගනිමු. #

Begin
If <condition> Then
Ststement 1
Else
Statement 2
End If
End

සංඛ්‍යාවක් ආදානය කළ විට එය එය ඔත්තේ ද? ඉරට්ටේ ද? යන්න පෙන්වීමට අදාල ගැටලුව සලකා බලමු.

ගැලීම් සටහන

ඇල්ගොරිතමය

  1. ආරම්භ කරන්න.
  2. සංඛ්‍යාව N ඇතුලත් කරන්න.
  3. N, 2න් බෙදා ඉතිරි අගය (R) ලබා ගැනීම.
  4. R = 1 නම් ඔත්තේ සංඛ්‍යාවක් බව පෙන්වීම.
  5. නැතිනම් ඉරට්ටේ සංඛ්‍යාවක් බව පෙන්වීම.
  6. අවසන් කරන්න.
ව්‍යාජ කේතය

Begin

Input Number As N

Number/2 and Get Remaider Value as R

If R = 1 Then

Print “Number is Odd Number”

Else

Print “Number is Even Number”

End If

End.

තේරීම් පාලන ව්‍යුහ වර්ග #

තේරීම් පාලන ව්‍යුහය හෙවත් වරණය (Selection) භාවිත වන ක්‍රමලේඛ ආකාර දෙකකින් දැක්විය හැකිය.

  1. සරල තේරීම් පාලන ව්‍යුහය – Simple Selection
  2. බහු තේරීම් පාලන ව්‍යුහය – Multiple Selection

සරල තේරීම් පාලන ව්‍යුහය – Simple Selection #

ඇල්ගොරිතමයක දී ඇති එක් කොන්දේසියක් පමණක්පදනම් කරගෙන එය තෘප්ත වන්නේ නම් එක් ප්‍රතිඵලයක් ද එම කොන්දේසිය තෘප්ත නොවේ නම් තවත් ප්‍රතිඵලයක් ද ලබා දීම සිදු කරනු ලබයි. මින් පෙර ඒකකයේදී අප විසින් සාකච්ඡා කළ සංඛ්‍යාවක් ඔත්තේ ද ඉරට්ටේ ද යන්න සෙවීමට අදාල ගැටලුව මේ සඳහා නිදසුනක් ලෙස ගත හැක.

බහු තේරීම් පාලන ව්‍යුහය – Multiple Selection #

ඇගොරිතමයක දී ඇති කොන්දේසි කිහිපයක් පදනම් කරගෙන ඒ එක් එක් කොන්දේසිය තෘප්ත වන විට එක් ප්‍රතිඵලයක් ද, කොන්දේසිය තෘප්ත නොවේ නම් තවත් ක්‍රියාවලියක් ද සිදු කරමින් තේරීම් කිහිපයකට අදාලව ප්‍රතිදාන කිහිපයක් ලබා දීම සිදුකරනු ලබයි.

මෙම පාලන ව්‍යුහයට අදාල ගැලීම් සටහනක් සහ ව්‍යාජ කේතයක් ඇසුරින් පැහැදිලි කර ගනිමු.

  • එක්තරා සිසුවෙකු ගණිතය විෂයට ලබාගත් ලකුණු සහ ඔහුගේ නම ඇතුලත් කළ විට ලකුණු 50 ට වැඩිනම් සමත් ලෙසත්, නැතිනම් අසමත් ලෙසත්, ඇතුලත් කළ ලකුණු ප්‍රමාණය වැරදි නම් දෝෂ පනිවිඩයක් පෙන්වීමටත් අදාල ගැලීම් සටහන සලකා බලමු.

ගැලීම් සටහන

ව්‍යාජ කේතය

Begin
    Input Name, Marks as M
 If M > 100 or M < 0 then
DIsplay Name, “Error Name”
Else
If M >= 50 then
Display Name, “Pass”
Else
Display Name, “Fail”
 End if
End if
End.

ක්‍රියාකාරකම 06

  1. ඉහත උදාහරණය සැලකිල්ලට ගනිමින් ශිෂ්‍යයෙකු ගණිතය විෂයට ලබාගත් ලකුණු අනුව පහත පරිදි සාමාර්ථය දැක්වීමට ගැලීම් සටහන සහ ව්‍යාජ කේතය ලියන්න.
    • 75 – 100   – “A”
    • 65 – 74     – “B”
    • 50 – 64     – “C”
    • 35 – 49     – “S”
    • 0   – 34     – “W”
  2. අ.පො.ස. (උසස් පෙළ) ප්‍රතිඵල අනුව සිසුවෙකුගේ Z Score ලකුණ මත විශ්ව විද්‍යාලයට ඇතුලත් වීමට සුදුසුකම් ලබන විෂය ධාරාව හඳුනා ගැනීමට පහත අගයන් අනුව අදාල විෂය ධාරාව පෙන්වීමට ගැලීම් සටහන සහ ව්‍යාජ කේතය ලියන්න.

ලබාගත් Z Score ලකුණ

    • 2.6 ට වැඩි නම්, “Medicine” විෂය ධාරාවට ද,
    • 2.5 සිට 2.6 දක්වා, “Dental” විෂය ධාරාවට ද,
    • 2.0 සිට 2.4 දක්වා, “Veterinary” විෂය ධාරාවට ද,
    • 1.5 සිට 1.9 දක්වා, “Bio Science” විෂය ධාරාවට ද, ඇතුලත් වීමට සුදුසු බව දක්වන්න.
    • 1.5 ට අඩු නම්, “Not Selected” ලෙස දක්වන්න.

පුනර්කරණ හෙවත් පුනරාවර්තන පාලන ව්‍යුහය – Repitition / Looping Control Structure #

ඇල්ගොරිතමයක හෝ පරිගණක ක්‍රමලේඛනයක උපදෙස් හෝ විධාන එකක් හෝ කිහිපයක් යම්කිසි වාර ගණනක් නැවත නැවත ක්‍රියාත්මක කිරීමට සිදු වීම, පුනර්කරණ හෙවත් පුනරාවර්ථන පාලන ව්‍යුහය ලෙස හදුන්වයි.

මෙම පාලන ව්‍යුහය සහිත ඇල්ගොරිතම හෝ ක්‍රමලේඛ ආකාර කිහිපයකි.

  • For – Do ආකෘතිය
  • While – End While ආකෘතිය
  • Repeat – Until ආකෘතිය

For – Do ආකෘතිය #

ක්‍රියත්මක වන වාර ගණන දන්නා අවස්ථා වලදී මෙම ආකෘතිය යෙදොගත හැක. මෙහිදී අප විසින් ලබාදෙන ආරම්භක අගයේ සිට අවසාන අගය දක්වා ඇති වාර ගණනක් For – Do ලූපය තුළ, දී ඇති ඇල්ගොරිතමය ක්‍රියාත්මක වේ.

For – Do ආකෘතියේ කාරක රීතිය (Syntax) #

For <Counter Var> = <Start Value>  to <End ValueDo Step <x>
Statement
Next <Counter Var>

  • Counter Var
    • පුනර්කරණය වන වාර ගණන ආදේශ කරගැනීම සඳහා භාවිතා කරන පූර්ණ සංඛ්‍යාමය විචල්‍යය (Integer Variable) මෙසේ හැඳින්වේ.

  • Start Value 
    • පුනර්කරණය වන වාර ගණන ගණන් කිරීම ආරම්භ කරන අගය.

  • End Value 
    • පුනර්කරණය වන වාර ගණන ගණන් කිරීම අවසාන කරන අගය.

  • Step
    • පුනර්කරණය වන වාර ගණන ගණන් කිරීම ආරම්භ කරන අගයේ සිට අවසන් කරන අගය තෙක් අගය වැඩිවිය යුතු හෝ අඩු විය යුතු වටිනාකම වේ. මෙහි අගයක් සඳහන් කොට නැති අවස්ථාවකදී එහි වටිනාකම එක බැගින් වැඩි වේ. (මෙය අවශ්‍ය නම් පමණක් යොදාගත හැක.)

උදාහරණය

1 සිට 20 දක්වා සංඛ්‍යා මුද්‍රණය කිරීමට අදාල ව්‍යාජ කේතය ලියමු.

Begin
For X = 1 to 20 Do
Print X
Next X
End.
  • මෙහි X හි අගය එක් වරකට එක බැඟින් ඉහල යයි.
  • X හි අගය 20 වූ විට පුනර්කරණය නවතී.

While – End While ආකෘතිය #

ආරම්භයේදී ම කොන්දේසිය සලකා බලා නිවැරදි (සත්‍ය) නම්, ලූපය තුල ඇති උපදෙස් ක්‍රියාත්මක වේ.

While – End While ආකෘතියේ කාරක රීතිය (Syntax) #

While <ConditionDo
Statement
End While

උදාහරණය

1 සිට 10 දක්වා වූ පූර්ණ සංඛ්‍යා සියල්ල මුද්‍රණය කිරීම.

ගැලීම් සටහන

ව්‍යාජ කේතය

Begin
Number = 1
While Number <= 10 Do
Print Number
Number = Number + 1
End While

End

Repeat – Until ආකෘතිය #

මෙහිදී ඇල්ගොරිතමය එක් වරක් ක්‍රියාත්මක වීමෙන් පසු කොන්දේසිය සලකා බලා කොන්දේසිය අසත්‍ය නම් ලූපය තුළ ඇති උපදෙස් ක්‍රියාත්මක වේ.

Repeat – Until ආකෘතියේ කාරක රීතිය (Syntax) #

Repeat
Statement

Until <Condition>

ඉහත උදාහරණයම Repeat – Until ලූපය මඟින් සිදුකරන අයුරු විමසා බලමු.

ගැලීම් සටහන

ව්‍යාජ කේතය

Begin
Number = 1
Repeat
Print Number
Number = Number + 1
Until Number >  10
End.

The Nested Loop – නීඩිත පාලන ව්‍යුහ සහිත පුණර්කරණ #

ලූපයක් තුල තවත් ලූපයක් හෝ උප ක්‍රියාකාරකමක් ක්‍රියාත්මක වීම මෙසේ හඳුන්වයි.

Begin

Input Number as N

Min = N

Count = 1

  While Count < 10

    Input Number as N

    If N<Min Then

    Min = N

End If

    Count = Count + 1

End While

Print Min

End.

මෙම ලිපිය පිළිබඳ ඔබේ අදහස් පහළින් Comment කරන්න.

Powered by BetterDocs

Leave a Reply

Your email address will not be published. Required fields are marked *