11.1.8 පැස්කල් ක්‍රමලේඛන ලිවීම - 11-වසර තොරතුරු හා සන්නිවේදන තාක්ෂණය

11.1.8 පැස්කල් ක්‍රමලේඛන ලිවීම

 

පැස්කල් ක්‍රමලේඛනය හැදින්වීම.

පැස්කල් ක්‍රමලේඛනයක පහත අංග දක්නට ලැබේ. (Parts of the Pascal program)

  • ක්‍රමලේඛනයේ නම
  • විචල්‍යය (Variables)
  • ප්‍රධාන ක්‍රමලේඛනය ආරම්භය
  • ආදාන (inputs)
  • ප්‍රතිදාන (outputs)
  • කර්‍යයන් (process)
  • විවරණ (comments)
  • ප්‍රධාන ක්‍රමලේඛනයේ  අවසානය

 

  1. program circle (input,output);
  2. Var         radius:integer;
  3.                area:real;
  4. Begin   
  5.                Write('Enter The Radius');
  6.                Read(radius);
  7.                area=:22/7*radius*radius;
  8.                Writeln('Area is : ',area);
  9. End. 

 

මෙම පැස්කල් වැඩසටහන ඇසුරින් පැස්කල් ක්‍රමලේඛනයක ප්‍රධාන කොටස් හඳුනා ගනිමු.

  • මෙහි නිල් පැහෙයෙන් දක්වා ඇත්තේ ක්‍රමලේඛනයේ සඳහන් ඇවිරුණු (reserved words) පද වේ.
  • program යන්න පැස්කල් පරිගනක වැඩසටහනෙහි අනිවර්යෙන් සඳහාත් කළ යුතු වේ.
  • circle යනු මෙම පරිගනක වැඩසටහන සඳහා ලබාදී ඇති නමයි. පැස්කල් වැඩසටහනෙහි නම සඳහා එයට සුදුසු ඕනෑම නමක් "හඳුන්වන" (identifier) යෙදීමේ දී අනුගමනය කළ යුතු නීති අනුගමනය කරමින් ලබාදිය හැකිය.
  • 2 සහ 3 පේළි මගින් හදුන්වා දී ඇත්තේ විචල්‍යයන් (variable) වේ.
  • Begin   යන්නෙන් ප්‍රධාන ක්‍රමලේඛනයේ ආරම්භය සටහන් කරයි.
  • Write('') යනු පැස්කල් ක්‍රමලේඛන වලදී ප්‍රතිදාන (output) ලබාදීම සඳහා භාවිතාඅ කරන වචනය වේ.
  • Read() මගින් ආදානයන් (input) ලබාගනී.
  • area=:22/7*radius*radius;  යනු කර්‍යයකි / ක්‍රියාවලියකි (process). මේවා කාරක (operators) යොදාගෙන අවශ්‍ය පරිදි ගොඩ නැගිය හැකිය.
  • End. යන්නෙන් ප්‍රධාන ක්‍රමලේඛනයේ අවසානය පෙන්වයි.
  • " ; " semi-colon යෙදීමෙන් ප්‍රකාශනය අවසන් වූ බව හැගවේ.
  • " := " පැවරුම් කාර්‍යය සඳහා යොදාගැනේ.

 

අනුක්‍රමය (sequence) සහිත පැස්කල් ක්‍රමලේඛ

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

උදාහරණ : දිග සහ පළල අදානය ලෙස ගෙන වර්ගඵලය ප්‍රතිදානය කරන්න.

program     square(input,output);
Var            Width,Hight,area:integer;

Begin
                 Writeln('Enter Width and Hight');
                 Read(Width,Hight);
                 Area:=Width*Hight;
                 Writeln('Area is',area);
End.

 

වරණය (Selection) සහිත පැස්කල් ක්‍රමලේඛ

 වරණය ආකෘතිය තුළින් තෝරා ගැනීම් එකක් හෝ කිහිපයක් මගින් විකල්ප මාර්ග තෝරා ගැනීමට ඉඩකඩ සලසා දෙයි.

උදාහරණ :  සංඛ්‍යාවක් ලබාගෙන එය ඔත්තේ ද ඉරට්ටේඑ ද යන්න ප්‍රතිදානය කරන්න්න.

Program   evenOdd(input,output);
Var          No,Remainder:integer;
Begin
               Write('Enter the No : ');
               Read(No);
               Remainder:=No mod 2;
               if (Remainder=0) then
                     Writeln(No,' is an even number')
               Else
                    Writeln(No,' is an odd number');
End.

 

පුනර්කරණය (Iteration) සහිත පැස්කල් ක්‍රමලේඛ

යම් කොන්දේසියක් තෘප්ත වන තුරු පියවර හෝ පියවර කිහිපයක් නැවත නැවත සිදුවීම පුනර්කරණය ලෙස හැදින්වේ.

මෙහි දී අනුගමනය කළහැකි ව්‍යුහ තුනකි.

  • For.....Do ව්‍යුහ i
  • For.....Do ව්‍යුහ ii
  • While Do
  • Repeat Until

 

For.....Do 

පුනර්කරණයවන වාර ගණන නිශ්චිතව්ව දන්නේ නම් For.....Do භාවිතා කරයි.

 

For.....Do ව්‍යුහය i

Syntax :   For විචල්‍යය  := ආරම්භක අගය to අවසාන අගය do

උදාහරණ : 1 සිට 10 දක්වා සංඛ්‍යා ප්‍රතිදානය කරන්න.

program Print10No1(input,output);
var         c:integer;
begin
              for c:=1 to 10 do
              writeln(c);
end.

 

For.....Do ව්‍යුහය ii

Syntax :   For විචල්‍යය  := ආරම්භක අගය downto අවසාන අගය do

උදාහරණ : 10 සිට 1 දක්වා සංඛ්‍යා ප්‍රතිදානය කරන්න.

program Print10No1(input,output);
var         c:integer;
begin
              for c:=10 downto 1 do
              writeln(c);
end.

 

 

While Do

 

පුනර්කරණය වීමට පෙර කොන්දේසිය පරීක්ෂා කර කොන්දේසිය තෘප්ත වන්නේ නම් පමණක් පුනර්කරණය ආරම්භ වේ.

උදාහරණ : 0 සිට 10 දක්වා සංඛ්‍යා ප්‍රතිදානය කරන්න.

program Print10NoWithWhileDo(input,output);
var         count:integer;
begin
              while count<11 do
              begin
                  writeln(count);
                  count:=count+1;
              end;
 end.

 

Repeat Until

පුනර්කරණය කිරීමට අවශ්‍ය කොටස අවසානයේ දී කොන්දේසිය පරීක්ෂා කරනු ලබයි.

උදාහරණ : 1 සිට 10 දක්වා සංඛ්‍යා ප්‍රතිදානය කරන්න.

program Print10NoWithRepeat(input,output);
var         count:integer;
begin
              count:=1;
              repeat
                   writeln(count);
                   count:=count+1;
              until count>10;
 end.