Professional Documents
Culture Documents
3.
function kali(x:integer):integer; 7.
var begin
i,j:integer; writeln(10 shl 3);
Begin writeln((14 shr 3) shl 5);
j:=2; end.
For i:=1 to x do
j:=2+j*2; 8.
Kali:=j; function AB(a,b:integer):integer;
End; begin
AB:=a shl b;
Begin End;
Writeln(kali(5)); Begin
End. Writeln(ab(16,7));
End.
4.
var t:=string;
begin
t:=’belajar itu pusing’;
delete(t,5,length(t)-5);
writeln(t);
end.
11. 15.
procedure X(a,b:integer); var I,j,k:integer;
var c:integer; begin
begin j:=5;
a:=5; for k:=1 to 3 do
b:=3; begin
c:=a+b; writeln(I,’ ‘,j);
write(c); i:=k;
end; i:=i+j;
j:=i-j;
var I,j,k:integer; end;
begin end.
i:=20;
X(4,5);
End.
Latihan soal persiapan olimpiade komputer tahun 2006/2007 2
16. 19.
Procedure abc(i,j:integer; Function
s:string); tambah(a,b:integer):integer;
Var Var c:integer;
y:integer; Begin
X:char; C:=a+(b mod 2);
Begin C:=c+a div b;
If i=j then writeln(s) else Writeln(C);
Begin End;
X:=s[1];
S[1]:=s[i]; Begin
S[i]:=x; Tambah(8,4);
Abc(i+1,j,s); End.
End;
End; 20.
Var s:string; Var
Begin A,B:string;
S:=’Abc’; C:string[20];
Abc(1,3,s); Begin
End. A:=’Aku senang’;
B:=’Turbo Pascal’;
17. If pos(‘ka’,A)=pos(‘ba’,B)
Var then writeln(‘OK’) else
h,i,j:integer; writeln(‘No’);
begin End.
h:=3;j:=-5;
for i:=1 to 5 do 21.
Inc(h); Var I,j:shortint;
Dec(j); Begin
For i:=1 to 5 do
Repeat J:=inc(j,5)+(10 shl 3);
Inc(j,2); Writeln(j);
Inc(i); End.
Until i=8;
If h=I then writeln(‘Yes’)
else writeln(‘No’); 22.
If h=j then writeln(‘Ok’) Var a,b,c:integer;
else writeln(‘No’); Begin
If i=j then writeln(‘Yes’) A:=13 div 2; b:=7 shr 2;
else writeln(‘No’); C:= a mod 3;
End. If (b and c) then
writeln(‘OK’) else
writeln(‘No’);
18. If (b and a) then
Begin writeln(‘OK’) else
Writeln(18 shl 3); writeln(‘No’);
Writeln(18 shr 2); End;
Writeln((18 shr 3) shl 4);
End.
24. 28.
Var I,j:integer; Const
Begin tabel:array[1..3] of
For i:=5 to 8 do char=(‘a’,’b’,’c’);
Begin Begin
For j:= 4 downto 1 do Writeln(tabel[1]);
Write(I,’ ‘,j); Write(tabel[2]);
End; Writeln(tabel[3]+tabel[1]);
End. End.
25. 29.
Var s:string;i:integer; Var x:word;
begin Begin
s:=’pusing’; X:=’test’;
for i:=1 to length(s) do Writeln(‘pascal’);
begin Wroteln(x);
s[i]:=s[length(s)-i+2]; End.
write (s[i]);
end; 30
end. Function b(a:byte):boolean;
Var x,y:byte;
Begin
26. X:=trunc(sqrt(a))+2;y:=2;
Var While x<>y do
t,i:string; If (a mod y)>0 then
begin Inc(y) else exit;
t:=’menit’; b:=x=y;
for i:=length(s) downto 1 do End;
begin
s[i]:=s[length(s)-i+2]; Begin
write s[i]; If b(1) then write('a');
end; If b(2) then write('b');
end. If b(3) then write('c');
If b(4) then write('d');
If b(5) then write('e');
End.
55. 60.
Latihan soal persiapan olimpiade komputer tahun 2006/2007 8
Const procedure cetak(a:byte);
pos:array[1..5] of Begin
byte=(1,2,3,4,5); While a>0 do
var i,j:byte; Begin
k:array[1..5] of byte; Write(a mod 3);
begin A:=a shl 3;
j:=1; End;
for i:=1 to 5 do End;
begin Begin
k[pos[i]]:=j; Cetak(15);
dec(j); End.
end;
for i:=1 to 5 do 64.
write(k[i]:2); Var a,i,z:byte;
end. Begin
A:=ord(‘B’);
61. Z:=ord(‘C’);
Function coba(a:byte):byte; I:=a;
Var t:byte; While i<z do
Begin Begin
T:=a; Write(chr(i));
While odd(t) do i:=i+2;
Begin end;
T:=t shr 2; end.
End;
Coba:=t; 65.
End; Function a:boolean;
Begin Begin
Write(Coba(20)); Write(‘hello’);
End. A:=true;
End;
62. Function b:boolean;
Var i:integer; Begin
Procedure aa(var i:integer); Writeln(‘Word!’);
Begin B:=true;
i:=i*3; End;
end; Begin
procedure bb(i:integer); If a and b then
begin writeln(‘Pascal’);
aa(i); end.
i:=i-2;
end; 66.
begin Var x:integer;y:^integer;
i:=5; Begin
aa(i); X:=15;
bb(i); New(y);
writeln(i); Y^:=5;
end. Writeln(x,’ ’,y^);
Y:=@x;
Writeln(x,’’,y^);
End.
63. 67.
Latihan soal persiapan olimpiade komputer tahun 2006/2007 9
Var x,y:string; Function hitung(i:integer):integer;
I:integer; Var hit:integer;
Begin J:integer;
X:=’Tim Olimpiade Komputer Begin
Indonesia’; For j:=1 to i do
Y:=’’; Hit:=hit+j;
For i:=1 to length(x) do Hitung:=hit;
Y[i]:=x[length(x)-2+3]; End;
Writeln(y); Behin
End. Write(Hitung(15));
End.
68.
Procedure 73.
tambah(x,y,result:integer); var a,i,j,k,kode:integer;
Begin begin
Result:=x+y; writeln('masukan 5integer ');
X:=0; j:=1;
Y:=0; k:=2;
End; for i:=1 to 5 do
Var begin
X,y,result:integer; readln(a);
Begin j:=j+a;
Result:=0; if a<10 then k:=k+1;
X:=15; end;
Y:=17; kode:=j div k;
Tambah(x,y,reslut); writeln('kode=',kode);
Writeln(x,’ ’,y,’ ’,result); end.
End. Jika a diisi dengan 10, 20, 30, 40
dan 50, berapakah nilai kode?
69. 74.
Var I,j:integer; Var a,b:integer;
Begin Begin
For i:=1 to 4 do For a:=1 to 10 do
For j:=1 to 4 do Begin
Write(‘* ‘); B:=20-A;
Writeln; Write(a,b);
End. End;
End.
70. 75.
Const i:integer=10; Var I,j:integer;
Begin Function jumlah(n:integer):integer;
For i:=1 to 6 do Var j,k:integer;
Write(i,’ ‘); Begin
End. J:=1;
For k:=1 to n do j:=j+k;
71. Jumlah:=k;
Var p,q:word; End;
Begin Begin
P:=5; J:=15;
For q:=1 to 5 do For i:=1 to 5 do j:=j+jumlah(i);
Begin Writeln(j);
P:=p*q; End.
Writeln(q,’ ‘,p);
End;
End.
72.
Latihan soal persiapan olimpiade komputer tahun 2006/2007 10