C programmin in sinhala

C Programming In Sinhala | 05 | Switch

හැමෝටම කලින් කරපුවා මතක ඇති කියලා මම හිතනවා, වැරදිලා හරි කෙනෙකුට කලින් කරපුවා බලාගන්න බැරිවුනා නම් මෙතනින් ගිහිල්ලා ඒ ටිකත් බලලම එන්නකො..

Switch Statement

කිසියම් variable එකක තියෙන value එක අනුව එකකට එකක් වෙනස් යම් දෙයක් කරන්න ඕන වුනොත් අපිට if-else එකේ ඒ හැම value එකටම if ලිය ලියා ඉන්න ගියාම code එකත් ලොකු වෙනවා තේරුම් ගන්නත් අමාරු වෙනවානේ.. අන්න ඒකට විසඳුමක් දෙන්න තමයි මේ switch එක හදලා තියෙන්නේ.. ඒ කියන්නේ switch එකෙන් අපිට පුළුවන් variable එකකට run time එන value එක අනුව වෙනස් වෙනස් දේවල් වෙන්න කියලා සරලව code ටික ලියාගන්න.. මෙහෙම switch එකේ එක value එකකට අදාළව දෙයක් වෙන එකට අපි කියනවා case එකක් කියලා.. දැන් අපි බලමු කොහොමද switch එකෙන් එහෙම code එක ලියන්නේ කියලා..

C Programming In Sinhala | 05 | Switch

උඩ රූපෙ පෙන්නලා තියෙන විදියට switch එකේදි කරන්න තියෙන්නේ switch කියලා ලියලා වරහන ඇතුලේ switch එක විදියට use කරන්න ඕන variable එකේ නම ලියන එක. (variable එක කලින් හදලා තියෙන්න ඕනෙ..) ඊට පස්සේ ඒ switch එකක් විදියට use කරන variable එකේ අපිට දෙයක් වෙන්න ඕන values වලට අදාළව cases ලියන්න ඕනෙ.. 
එහෙම case එකක් ලියද්දි case කියලා ලියලා ඊට ඉස්සරහින් ඒ අදාළ value එක ලියලා colan ( : ) එකක් තියලා ඒක ඉස්සරහින් ඒ value එක ආවොත් වෙන්න ඕන statement එක හෝ කිහිපය ලියන එක තමයි තියෙන්නෙ..
විශේෂයෙන්ම මතක තියාගන්න මේ switch එකට use කරන්න පුළුවන් integer type එකේ variable ලුයි, char variable ලුයි විතරයි.. වෙන data type එකක් මේ switch statement එකත් එක්ක use කරන්න බෑ කියලා හොඳටම ඔලුවට දාගන්න.. ඒ වගේම case එකත් එක්ක use කරන value එකත් switch එකේ use කරපු variable එකේ data type එකේම value එකක් වෙන්න ඕනෙ..

default 

දැන් කෙනෙක්ට ප්‍රශ්නයක් එන්න පුළුවන් මෙහෙම අපි variable එකේ values එකින් එකට වෙන්න ඕන දෙයක් ලබා දුන්නත් අපි එහෙම දෙන value එකක් නැතුව වෙන value එකක් ආවොතින් මොකද වෙන්නෙ කියලා.. ඇත්තටම අපිට එහෙම එන්න පුළුවන් හැම value එකම දෙන්න බැරි නිසා අපි අවශ්‍යම වෙන values ටිකට අදාළව case ලියලා ඒවා ඇරෙන්න වෙන ඕනම value එකක් ආවොත් වෙන්න ඕන දේ ලියන්නේ default කියලා ලියලා.. මේ default එක use කරද්දි වෙන එකම වෙනස කලින් case කියලා ලියලා value එක ලියන එක වෙනුවට මෙහෙම default කියලා ලියන එක විතරයි.. ඊට පස්සෙ සාමාන්‍ය විදියටම colan ( ) එකක් තියලා වෙන්න ඕන දේ (statement එක) ලියන්න තියෙන්නේ..

C Programming In Sinhala | 05 | Switch

break

දැන් කට්ටිය මෙහෙම cases ලියලා values වලට අදාළව වෙන වෙනම දේවල් දුන්නම ඒ value එක ආවොත් ඒකට අදාළම ටික විතරයි run වෙන්නෙ කියලා හිතාගෙන හිටියට එහෙම වෙන්නේ නෑ.. කිසියම් value එකකට අදාළව case එකක් true වුනොත් එතනින් පහළ ලියලා තියෙන හැම statement එකක්ම run වෙන්න පටන් ගන්නවා.. දැන් කටිටියට හිතෙයි එහෙනම් මෙච්චර වෙලා මොන මගුලක්ද මේ කිව්වෙ කියලා නේද? ඇත්තටම ටිකක් හිතලා බලන්නකෝ අපි switch එකක් on කළාම එතනින් එහාට ඒක දිගටම වැඩ කරනවා නේද.. මෙතනදිත් වෙන්නේ ඒකම තමයි කිසියම් value එකකට අදාළව switch එක on වුනොත් එතනින් පල්ලෙහා තියෙන හැම statement එකක්ම run වෙනවා.. 

එහෙනම් දැන් කෙනෙක් අහන්න පුළුවන් අපිට ඕන විදියට අවශ්‍ය දේම විතරක් වැඩ කරවලා ආපහු switch එක off කරන්නෙ කොහොමද කියලා.. අන්න ඒකට තමයි break කියන keyword එක දීලා තියෙන්නේ.. අපිට කරන්න තියෙන්නේ එහෙම අවශ්‍ය දේවල් run වුනාට පස්සෙ switch එක off වෙන්න ඕන තැනින් break කියලා දීලා semicolon (;) එක දෙන එක විතරයි.. ඔන්න එහෙනම් ඒක අමතක කරන්න එපා..

C Programming In Sinhala | 05 | Switch

දැන්නම් switch එක ගැන තේරෙනවා කියලා හිතෙනවා.. එහෙමත් කෙනෙක්ට තේරෙන්නෙ නැත්නම් මේ උදාහරණෙ බලමුකො..
අපි age කියලා integer variable එකක තියෙන value එක අනුව වයස print කරන්න program එකක් ලියලා බලමු..

C Programming In Sinhala | 05 | Switch

රූපේ පෙන්නලා තියෙන විදියට මුලින්ම age කියන integer variable එක හදලා ඒකට 4 කියන value එක දාලා තියෙනවා. ඊට පස්සෙ ඒ age කියන integer variable එක switch එක විදියට set කරලා තියෙනවා.. දැන් age කියන එකේ value එක 1 වුනොත් වෙන්න ඕන දේ ලියන්න case 1 : කියලා ලියලා තියෙනවා.. ඊට පස්සේ ඒක true වුනොත්, ඒ කියන්නේ age කියන එකේ value එක 1 නම් වෙන්න ඕන දේ ලියලා switch එක off කරන්න ඕන නිසා break; කියන statement එක දීලා තියෙනවා..
ඒ විදියටම age කියන එකේ value එක 2 වුනොත් වෙන්න ඕන දේයි, 3 වුනොත් වෙන්න ඕන දේයි, 4 වුනොත් වෙන්න ඕන දේයි ලියලා තියෙනවා.. ඊට අමතරව මේ age කියන එකේ value එක 1 වත් 2 වත් 3 වත් 4 වත් නෙවෙයි නම් වෙන්න ඕන දේ default: එක යටතේ ලියලා තියෙනවා.. curly braces දාලා මේ case ටික group කරලා තියෙන්නේ ඒ ඔක්කොම switch statement එක යටතේ තියෙන නිසා..
දැන්නම් ඕන කෙනෙක්ට තේරෙනවා කියලා හිතෙනවා.. වැරදිලා හරි කෙනෙක්ට තේරෙන්නෙ නැත්නම් comment එකක් දාලා හරි අහන්නකෝ.. එහෙනම් තව කොටසක් එක්ක ඉක්මනටම හමු වෙන බලාපොරොත්තුවෙන් මම සමුගන්නම්…

Leave a Reply

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