SimplePascal Demo
Lyt
1.
求PI
function GetPI():real {
函数返回PI,返回值类型real }
var sum,n,sign:real; {
声明变量 }
pd:boolean;
begin { 以下为函数体 }
sum:=1.0; {
对sum赋值 }
n:=1.0;
sign:=1.0;
while
(n<=20000.0) do { 若满足条件则执行while循环 }
begin
sign:=-sign;
n:=n+2.0;
sum:=sum+sign*1.0/n;
end;
result:=4.0*sum; { 返回结果 }
end;
function main():real
begin
result:=GetPI();
end;
2.
求斐波那契数列
function fab(i:integer):integer { 不需要声明变量时var可省略 }
begin
if (i=1) then result:=1;
else if
(i=2) then result:=1;
else result:=fab(i-1)+fab(i-2);
end;
function main():integer
begin
result:=fab(5);
end;
3.
自然数列求和
function sum(number:integer):integer
var i:integer;
begin
i:=1;
result:=0;
while
(i<=number) do
begin
result:=result+i;
i:=i+1;
end;
end;
function main():integer
begin
result:=sum(4);
end;
4.
整数数组求和
function
sum(count:integer; data:integer^):integer
var i:integer;
begin
i:=0;
result:=0;
while (i<count) do
begin
result:=result+data^;
{
data偏移一个整数的距离,指针无法加减,只能强制转换成整数 }
data:=integer^(integer(data)+sizeof(integer)); { data偏移一个整数的距离 }
i:=i+1;
end;
end;