Kali ini saya akan Share beberapa program sederhana yang bisa kita buat dengan free pascal, bagi yang belum punya aplikasi free pascal Klik
Disini.
Langsung saja berikut scriptnya.....
1. Program bagi pemula dengan struktur biasa
Program Contoh_Awal;
Uses CRT;
Var i,j,k : integer;
Begin
ClrScr;
Write(‘masukkan nilai i dan j : ‘);
Readln(i,j);
k:=i+j;
Writeln(‘nilai k : ‘,k);
Readln;
End.
2. Program bagi pemula dengan struktur biasa
Program ContohInteger;
Uses CRT;
Var y : Integer;
p : Real;
X : Real;
Begin
y := 5;
p := 6;
x := y + p;
Writeln(‘Nilai X adalah :’,x:4:1);
End.
3. Program untuk menginput sejumlah variabel dan menampilkannya
Program Contoh_Variabel;
Uses crt;
Var
Nama : string[15];
Jumlah,harga : Longint;
Nilai : real;
Begin
ClrScr;
{Memasukkan data}
Nama:=’Semen';
jumlah:=10;
harga :=250000;
Nilai :=Harga * Jumlah ;
{Menampilkan Data yang Telah Diproses}
writeln(‘Nama Barang:’,Nama);
writeln(‘Jumlah:’,Jumlah);
writeln(‘Harga:’,Harga);
writeln(‘Nilai Barang:’,Nilai);
Readln;
end.
4. Program untuk mengolah variabel
(* Variable dan Konstanta *)
Program Contoh_2a;
Uses CRT;
Const phi = 3.14;
Var x : Integer;
y : Real;
Begin
ClrScr;
x := 5;
y := x * phi;
Writeln(‘Nilai y = ‘, y:5:2);
Readln;
End.
5. Program untuk mengolah variabel, konstanta dengan model lain
Program Contoh_2b;
Uses CRT;
Const phi = 3.14;
Var x : Integer;
y : Real;
Begin
ClrScr;
Write(‘Masukkan Harga x =’);
Readln(x);
y := x * phi;
Writeln(‘Nilai y = ‘, y:10:2);
Readln;
End.
6. Program untuk mengolah data dengan type
{ Deklarasi Type }
Program Contoh_3a;
Uses CRT;
Type bulat = Integer;
pecahan = Real;
var x : bulat;
y : pecahan;
Begin
clrscr;
Write(‘Harga x : ‘); Readln(x);
Write(‘Harga y : ‘); Readln(y);
Writeln(‘Nilai x : ‘,x:3);
Writeln(‘Harga y : ‘,y:3:0);
Readln;
End.
7. Program untuk mengolah data dengan type
{ Deklarasi Type }
Program Contoh_3b;
Uses CRT;
Type bulat = Integer;
pecahan = Real;
var x : bulat;
y : pecahan;
Label Ulang;
Begin
Ulang:
clrscr;
Write(‘Harga x : ‘); Readln(x);
Write(‘Harga y : ‘); Readln(y);
Writeln(‘Nilai x : ‘,x:3);
Writeln(‘Harga y : ‘,y:3:0);
readln;
Goto Ulang;
End.
8. Program membandingkan 2 variabel
Program Banding;
Uses CRT;
Var a, b : Integer;
Begin
ClrScr;
read(a);
read(b);
if (a >b) then
Writeln(‘Bilangan A terbesar’)
else
Writeln(‘Bilangan B terbesar’);
end.
9. Program membandingkan 3 variabel
Program BanVar2;
Uses CRT;
Var a, b, c : Integer;
Begin
write(‘Masukkan bilangan A :’); readln(A);
write(‘Masukkan bilangan B :’); readln(B);
write(‘Masukkan bilangan C :’); readln(C);
if (a>b) then
if (a>c) then
Writeln(‘Bilangan A terbesar’)
else
Writeln(‘Bilangan C terbesar’)
else
if (b>c) then
Writeln(‘Bilangan B terbesar’)
else
Writeln(‘Bilangan C terbesar’);
End.
10. Program membandingkan 3 variabel model lain
Program BanVar2;
Uses CRT;
Var a, b, c : Integer;
Begin
write(‘Masukkan bilangan A :’); readln(A);
write(‘Masukkan bilangan B :’); readln(B);
write(‘Masukkan bilangan C :’); readln(C);
if (a>b) then
if (a>c) then
begin
Writeln(‘Bilangan A terbesar’);
if (b>c) then
Writeln(‘Bilangan C terkecil’)
else
Writeln(‘Bilangan B terkecil’);
End
else
begin
Writeln(‘Bilangan C terbesar’);
Writeln(‘Bilangan B terkecil’);
end
else
if (b>c) then
begin
Writeln(‘Bilangan B terbesar’);
if (a>c) then
Writeln(‘Bilangan C terkecil’)
else
Writeln(‘Bilangan A terkecil’);
end
else
begin
Writeln(‘Bilangan C terbesar’);
Writeln(‘Bilangan A terkecil’);
end;
End.
11. Program membandingkan 3 variabel model lain
Program Bandingkan3Variabel;
Uses CRT;
Var a,b,c : Real;
jb : Char;
Begin
jb := ‘y';
Repeat
ClrScr;
Write(‘A = ‘); Readln(a);
Write(‘B = ‘); Readln(b);
Write(‘C = ‘); Readln(c);
If (a > b) Then
If (a > c) Then
Begin
Writeln(‘Bil. A terbesar’);
if (b c) Then
Begin
Writeln(‘Bil. B terbesar’);
if (a <= c) Then
Writeln(‘Bil. A terkecil’)
Else
Writeln(‘C Terkecil’)
End
Else
Begin
Writeln(‘Bil. C terbesar’);
Writeln(‘Bil. A terkecil’)
End;
Write(‘Ulangi (y/t) : ‘); Readln(jb);
Until jb=’t';
End.
12. Program untuk Tipe data Boolean
Program Boolean1;
Uses CRT;
var tokka : boolean;
lahir : String;
nama : String;
jawab : char;
Begin
Write(‘Masukkan nama : ‘);
readln (nama);
Write(‘Pernahkah melahirkan ?(Y/T) : ‘);
readln(jawab);
if (jawab =’Y’) or (jawab=’y’) then tokka := true
else tokka := false;
if (tokka= False) then
Writeln(‘Berarti anda pria’)
else
Writeln(‘Berarti anda wanita’)
End.
13. Program untuk membedakan bilangan ganjil dan genap
Program ContohGanjilGenap;
Uses CRT;
var i : Byte;
ganjil, genap : Byte;
Begin
Clrscr;
ganjil := 0;
genap := 0;
For i:= 1 to 100 do
Begin
if (i mod 2)=0 Then
Inc(genap)
Else
Inc (ganjil);
End;
Writeln(‘Jumlah bilangan genap : ‘,genap);
Writeln(‘Jumlah bilangan ganjil : ‘,ganjil);
Readln;
End.
14. Program untuk membedakan bilangan ganjil dan genap
Program gangen;
uses crt;
var
bil : integer;
jumgen, jumgan : Integer;
i : byte;
Label ulang;
begin
jumgen := 0;
jumgan := 0;
i := 1;
ulang:
write(‘Masukkan bila ke-‘,i,’ : ‘); readln(bil);
if (bil mod 2 = 0) then
jumgen := jumgen+1
else
jumgan := jumgan+1;
if (i<10) then
begin
inc(i);
goto ulang;
end else
Begin
Writeln(‘Jumlah bilangan genap : ‘,jumgen);
Writeln(‘Jumlah bilangan ganjil : ‘, jumgan);
halt(1);
end;
end.
15. Program menggunakan label
{ Deklarasi Label }
Program Contoh_1;
Uses Crt;
Label A;
Begin
Clrscr;
a:
Writeln(‘Belajar Pascal’);
goto A;
End.
16. Program untuk mengkonversi waktu
Program BagiDIV;
Uses CRT;
var jam, menit, detik : Integer;
jlhdetik : integer;
Begin
ClrScr;
Write(‘Jam : ‘); Readln(jlhdetik);
jam := jlhdetik div 3600;
menit := (jlhdetik mod 3600) div 60;
detik := (jlhdetik mod 3600) mod 60;
Writeln(‘Jam : ‘, jam);
Writeln(‘Menit : ‘, menit);
Writeln(‘Detik : ‘, detik);
Readln;
End.
17. Program menggunakan perintah MOD
Program Modulus;
Uses CRT;
var i : Byte;
Begin
Clrscr;
for i:=1 to 10 do
Writeln(i,’ mod 3 = ‘, i mod 3);
Readln;
End.
18. Program Password
Uses CRT;
Label 5;
var kata: string[25];
i : integer;
Begin
Clrscr;
i := 1;
Repeat
Write(‘Anda Kuliah Dimana ? :’);
Readln(kata);
if i = 3 Then
Begin
Clrscr;
Writeln(‘Bye-bye’);
Goto 5;
End
Else
i := i+1;
Until Kata=’BD';
Writeln(‘Pasword anda benar’);
5 :
End.
19. Program yang menggunakan sejumlah perintah dengan menu pilihan
uses crt;
var
jurusan, kelas, cc : string;
pil, kls : byte;
totharga, harga : longint;
jlh : integer;
begin
clrscr;
writeln(‘Pilih Tujuan’);
writeln(‘————–‘);
writeln(‘1.Jakarta’);
writeln(‘2.Yogya’);
writeln(‘3.Surabaya’);
writeln(‘————-‘);
write(‘Pilih jurusan : ‘); readln(pil);
writeln;
Writeln(‘Pilih Kelas : ‘);
Writeln(‘1. Eksekutif’);
Writeln(‘2. Bisnis’);
Writeln(‘3. Ekonomi’);
writeln;
Write(‘Pilihan Anda : ‘); readln(kls);
Write(‘Jumlah tiket : ‘); readln(jlh);
if (pil=1) then
begin
cc:=’Jakarta';
case kls of
1 : begin
kelas := ‘Eksekutif';
harga := 70000;
totharga := harga * jlh;
end;
2 : begin
kelas := ‘Bisnis';
harga := 40000;
totharga := harga * jlh;
end;
3 : begin
kelas := ‘Ekonomi';
harga := 10000;
totharga := harga * jlh;
end;
else begin
kelas := ‘tidak jelas';
harga :=0;
totharga := harga * jlh;
end;
end;
end else
if (pil =2) then
begin
cc:=’Yogyakarta';
case kls of
1 : begin
kelas := ‘Eksekutif';
harga := 80000;
totharga := harga * jlh;
end;
2 : begin
kelas := ‘Bisnis';
harga := 50000;
totharga := harga * jlh;
end;
3 : begin
kelas := ‘Ekonomi';
harga := 20000;
totharga := harga * jlh;
end;
else begin
kelas := ‘tidak jelas';
harga :=0;
totharga := harga * jlh;
end;
end
end else
if (pil =3) then
begin
cc:=’Surabaya';
case kls of
1 : begin
kelas := ‘Eksekutif';
harga := 90000;
totharga := harga * jlh;
end;
2 : begin
kelas := ‘Bisnis';
harga := 60000;
totharga := harga * jlh;
end;
3 : begin
kelas := ‘Ekonomi';
harga := 30000;
totharga := harga * jlh;
end;
else begin
kelas := ‘tidak jelas';
harga :=0;
totharga := harga * jlh;
end;
end;
end else
begin
cc := ‘Tidak jelas';
kelas := ‘Tidak jelas';
harga := 0;
totharga := harga * jlh;
end;
writeln;
Writeln(‘Tujuan : ‘, cc);
Writeln(‘Kelas : ‘, kelas);
Writeln(‘Harga pertiket : Rp.’,harga);
Writeln(‘Harga Total : Rp.’,totharga);
readln;
end.
20. Program untuk membuat menu pilhan
Program Pilihan;
Uses Crt;
Var
pil, i : byte;
Bil, JumBilGjl, JumBilGnp, BilBes, BilKec : Integer;
Jen_kel, Hobby, Sifat : String;
piljen, pilhob : byte;
Label UlangGanGen, UlangKecBes, Ulang;
Begin
Ulang :
Clrscr;
Textcolor(15);
Writeln(‘Menu Pilihan : ‘);
Writeln(‘1. Tampil semua bil ganjil dan genap sekaligus dari 10 kali input data’);
Writeln(‘2. Tampil bil yang terbesar dan terkecil sekaligus dari 10 kali input data’);
Writeln(‘3. Tampil sifat seseorang berdasarkan input data’);
Writeln(‘4. Keluar’);
Writeln;
Write(‘Masukkan pilihan Anda : ‘); Readln(pil);
Case pil of
1 : Begin
(* Menampilkan semua bilangan ganjil dan genap
sekaligus dari 10 kali input data *)
JumBilGjl := 0; JumBilGnp := 0; i := 1;
UlangGanGen :
Write(‘Masukkan bilangan ke-‘, i , ‘ : ‘); Readln (bil);
If (bil mod 2 = 0) then
JumBilGnp := JumBilGnp + 1
Else
JumBilGjl := JumBilGjl + 1;
If (i BilBes) then
Begin
BilBes := bil;
If (bil < BilKec) then
BilKec := bil;
End Else
If (bil<BilKec) Then
BilKec := bil;
If (ib Then
if a>c Then
besar :=a
Else besar := c
Else If b>c Then
besar := b
Else besar := c;
Writeln(‘Bilangan a,b,c : ‘, a,’, ‘,b,’, ‘,c);
Writeln(‘Bilangan terbesar : ‘, besar);
Readln;
End.
22. Program pengolahan data
Program SoalNo2;
Uses CRT;
Var i : Byte;
Begin
ClrScr;
i:=10;
while (i >= 1) Do
Begin
If i mod 2 = 1 Then
Begin
Write(i,’ ‘);
if i= 5 Then
exit
End;
Dec(i);
End;
Readln;
End.
23. Program pengolahan data
Program SoalNo3;
Uses CRT;
var NIM : String[9];
Nm : String[25];
nh : Char;
tgs, mid, fnl, tot : Real;
Begin
ClrScr;
Write(‘NIM : ‘); Readln(NIM);
Write(‘Nama : ‘); Readln(Nm);
Write(‘Tugas : ‘); Readln(tgs);
Write(‘MID : ‘); Readln(mid);
Write(‘Final : ‘); Readln(fnl);
tot := 0.2*tgs + 0.3*Mid + 0.5*fnl;
If tot >= 80 Then nh := ‘A’ Else
If tot >= 70 Then nh := ‘B’ Else
If tot >= 51 Then nh := ‘C’ Else
If tot >= 41 Then nh := ‘D’ Else
nh := ‘E';
Clrscr;
Writeln(‘ DAFTAR NILAI MAHASISWA’);
Writeln(‘ JURUSAN INFORMATIKA’);
Writeln;
Write(‘NIM Mahasiwa : ‘,NIM);
Writeln(‘ Nama Mahasiswa : ‘,Nm);
Writeln(‘Nilai Tugas : ‘,tgs:3:2);
Writeln(‘Nilai Mid Test : ‘,mid:3:2);
Writeln(‘Nilai final Test : ‘, fnl:3:2);
Write(‘Total Nilai : ‘,tot:3:2);
Writeln(‘ Nilai Huruf : ‘,nh);
Readln;
End.
24. Program pengolahan data
Program Sore1;
Uses CRT;
Var a,b,c,d, kecil : Integer;
Begin
ClrScr;
Write(‘Harga a : ‘); Readln(a);
Write(‘Harga b : ‘); Readln(b);
Write(‘Harga c : ‘); Readln(c);
d:= c; c := b; b := a; a := d;
if a<b Then
if a<c Then
kecil :=a
Else kecil := c
Else If b<c Then
kecil := b
Else kecil := c;
Writeln(‘Bilangan a,b,c : ‘, a,’, ‘,b,’, ‘,c);
Writeln(‘Bilangan terkecil : ‘, kecil);
Readln;
End.
25. Program pengolahan data
Program Sore2;
Uses CRT;
Var i : Byte;
Begin
ClrScr;
i:=1;
while (i =3.00) then
Writeln(‘Anda berhasil lulus’)
else
Writeln(‘Anda perlu belajar lebih giat’)
Readln;
End.
31. Program untuk pergeseran BIT
Program BitWise;
Uses CRT;
Begin
ClrScr;
Writeln(4 shl 1);
Readln;
end.
32. Program untuk pergeseran BIT
Program BitWise;
Uses CRT;
Var x, y : Integer;
Begin
ClrScr;
Write(‘Harga x : ‘); Readln(x);
Write(‘Harga y : ‘); Readln(y);
Writeln(‘x shr y = ‘,x shr y);
Writeln(‘x shl y = ‘,x shl y);
Readln;
End.
33. Program yang menggunakan tipe data WORD
Program ContohWord;
Uses CRT, Dos;
Var hh,mm,ss,ns : Word;
i: byte;
Begin
ClrScr;
Settime(0,0,0,0);
for i := 1 to 10 do
Writeln(‘i = ‘,i);
gettime(hh,mm,ss,ns);
Writeln(hh:3,mm:3,ss:3,ns:3);
Readln;
End.
34. Program menggunakan Array
Program BalikArray;
Uses CRT;
Var a : array[1..25] of char;
temp : char;
i,n : byte;
Begin
Clrscr;
Writeln(‘Masukkan Nilai Array’);
for i:= 1 to 5 do
Begin
Write(‘a[‘,i,’]= ‘); Readln(a[i]);
End;
clrscr;
for i := 1 to 5 do
Write(a[i],’ ‘);
Writeln;
i:=1; n:=5;
While (i<=n) do
Begin
temp := a[i];
a[i] := a[n];
a[n] := temp;
inc(i);
dec(n);
End;
for i:=1 to 5 do
Write(a[i],’ ‘);
Readln;
End.
Latihan Array :
35. typing and then run
Program Array_1D_0;
Uses CRT;
Var
n,i : byte;
a : array [1..500] of real;
Begin
clrscr;
write(‘Masukkan banyak elemen data : ‘); readln(n);
(* bagian ini untuk memasukkan elemen data array
melalui keyboard *)
writeln;
writeln(‘Data-data anda yang akan diinput melalui keyboard’);
for i := 1 to 50 do
write(chr(205));
writeln;
for i := 1 to n do
begin
write(‘Data yang ke-‘,i, ‘ = ‘); readln(a[i]);
end;
(* bagian ini untuk mencetak data ke layar *)
writeln;
writeln(‘Data-data anda yang telah diinput sebelumnya’);
for i := 1 to 50 do
write(chr(205));
writeln;
for i := 1 to n do
writeln(‘Data yang ke-‘,i, ‘ = ‘, a[i]:4:2);
readln;
End.
36. Typing and then Run
Program Array_1D_1;
Uses CRT;
Var
n,i : byte;
a,b : array [1..500] of real;
Begin
clrscr;
write(‘Masukkan banyak elemen data : ‘); readln(n);
(* bagian ini untuk memasukkan elemen data array
melalui keyboard *)
writeln;
writeln(‘Data-data anda yang akan diinput melalui keyboard’);
for i := 1 to 50 do
write(chr(205));
writeln;
for i := 1 to n do
begin
write(‘Data A[‘,i, ‘] = ‘); readln(a[i]);
write(‘Data B[‘,i, ‘] = ‘); readln(b[i]);
end;
(* bagian ini untuk mencetak data ke layar *)
writeln;
writeln(‘Data-data anda yang telah diinput sebelumnya’);
for i := 1 to 50 do
write(chr(205));
writeln;
for i := 1 to n do
begin
write(‘A[‘, i, ‘] = ‘ , a[i]:4:2, ‘ ‘);
writeln(‘B[‘, i, ‘] = ‘ , b[i]:4:2);
end;
readln;
End.
37. Typing and then Run
Program Array_1D_1_1;
Uses CRT;
Var
n,i : byte;
a,b,c : array [1..500] of real;
Begin
clrscr;
write(‘Masukkan banyak elemen data : ‘); readln(n);
(* bagian ini untuk memasukkan elemen data array
melalui keyboard *)
writeln;
writeln(‘Data-data anda yang akan diinput melalui keyboard’);
for i := 1 to 50 do
write(chr(205));
writeln;
for i := 1 to n do
begin
write(‘Data A[‘,i, ‘] = ‘); readln(a[i]);
write(‘Data B[‘,i, ‘] = ‘); readln(b[i]);
write(‘Data C[‘,i, ‘] = ‘); readln(c[i]);
end;
(* bagian ini untuk mencetak data ke layar *)
writeln;
writeln(‘Data-data anda yang telah diinput sebelumnya’);
for i := 1 to 50 do
write(chr(205));
writeln;
for i := 1 to n do
begin
write(‘A[‘, i, ‘] = ‘ , a[i]:4:2, ‘ ‘);
write(‘B[‘, i, ‘] = ‘ , b[i]:4:2, ‘ ‘);
writeln(’C[‘, i, ‘] = ‘ , c[i]:4:2);
end;
readln;
End.
38. Typing and then Run
Program Input_Array_1D;
Uses CRT;
Var
n,i : byte;
a,b : array [1..500] of real;
Begin
clrscr;
write(‘Masukkan banyak elemen data : ‘); readln(n);
(* bagian ini untuk memasukkan elemen data array
melalui keyboard *)
writeln;
writeln(‘Data-data anda yang akan diinput melalui keyboard’);
for i := 1 to 50 do
write(chr(205));
writeln;
(* membaca data dengan menentukan posisi input *)
i := 1;
while (i<=n) do
begin
gotoxy(2, 4+i); write(‘Data A[‘,i, ‘] = ‘); readln(a[i]);
gotoxy(25,4+i); write(‘Data B[‘,i, ‘] = ‘); readln(b[i]);
i := i+1;
end;
(* bagian ini untuk mencetak data ke layar *)
writeln;
writeln(‘Data-data anda yang telah diinput sebelumnya’);
for i := 1 to 50 do
write(chr(205));
writeln;
for i := 1 to n do
begin
write(‘A[‘, i, ‘] = ‘ , a[i]:4:2, ‘ ‘);
writeln(‘B[‘, i, ‘] = ‘ , b[i]:4:2);
end;
readln;
End.
39. Typing and then Run
Program Jumlah_Array_1D;
Uses CRT;
Var
n,i : byte;
a,b,c : array [1..500] of real;
Begin
clrscr;
write(‘Masukkan banyak elemen data : ‘); readln(n);
(* bagian ini untuk memasukkan elemen data array
melalui keyboard *)
writeln;
writeln(‘Data-data anda yang akan diinput melalui keyboard’);
for i := 1 to 50 do
write(chr(205));
writeln;
i := 1;
while (i<=n) do
begin
gotoxy(2, 4+i); write(‘Data A[‘,i, ‘] = ‘); readln(a[i]);
gotoxy(25,4+i); write(‘Data B[‘,i, ‘] = ‘); readln(b[i]);
i := i+1;
end;
(* bagian ini untuk melakukan penjumlahan Array A dan B
dan disimpan di C’ *)
for i := 1 to n do
c[i] := a[i] + b[i];
(* bagian ini untuk mencetak data ke layar *)
writeln;
writeln(‘Hasil penjumlahan dari data yang telah diinput sebelumnya’);
for i := 1 to 58 do
write(chr(205));
writeln;
for i := 1 to n do
begin
write(‘A[‘, i, ‘] = ‘ , a[i]:4:2, ‘ + ‘);
write(‘B[‘, i, ‘] = ‘ , b[i]:4:2, ‘ = ‘);
writeln(c[i]:5:2);
end;
readln;
End.
40. Typing and then Run
Program Kurang_Array_1D;
Uses CRT;
Var
n,i : byte;
a,b,c : array [1..500] of real;
Begin
clrscr;
write(‘Masukkan banyak elemen data : ‘); readln(n);
(* bagian ini untuk memasukkan elemen data array
melalui keyboard *)
writeln;
writeln(‘Data-data anda yang akan diinput melalui keyboard’);
for i := 1 to 50 do
write(chr(205));
writeln;
i := 1;
while (i<=n) do
begin
gotoxy(2, 4+i); write(‘Data A[‘,i, ‘] = ‘); readln(a[i]);
gotoxy(25,4+i); write(‘Data B[‘,i, ‘] = ‘); readln(b[i]);
i := i+1;
end;
(* bagian ini untuk melakukan penjumlahan Array A dan B
dan disimpan di C’ *)
for i := 1 to n do
c[i] := a[i] – b[i];
(* bagian ini untuk mencetak data ke layar *)
writeln;
writeln(‘Hasil pengurangan dari data yang telah diinput sebelumnya’);
for i := 1 to 58 do
write(chr(205));
writeln;
for i := 1 to n do
begin
write(‘A[‘, i, ‘] = ‘ , a[i]:4:2, ‘ – ‘);
write(‘B[‘, i, ‘] = ‘ , b[i]:4:2, ‘ = ‘);
writeln(c[i]:5:2);
end;
readln;
End.
41. Typing and then Run
Program Jumlah_Matriks_2D;
Uses CRT;
Var
n,i,j, posx : byte;
posa, posb, posc : byte;
a,b,c : array [1..10,1..10] of real;
Begin
clrscr;
writeln(‘Masukkan ukuran ordo matriks maksimum 2′);
write(‘Masukkan ukuran ordo : ‘); readln(n);
(* bagian ini untuk memasukkan elemen data array
melalui keyboard *)
writeln;
writeln(‘Data matriks yang akan diinput melalui keyboard’);
(* untuk membuat garis *)
for i := 1 to 50 do
write(chr(205));
writeln;
(* memasukkan Array A *)
i := 1;
while (i<=n) do
begin
posx := 2;
j := 1;
while (j<=n) do
begin
gotoxy(posx, 5+i); write(‘Data A[‘,i, ‘,’ ,j, ‘] = ‘);
readln(a[i,j]);
posx := posx + 17;
j := j+1;
end;
i := i+1;
end;
(* memasukkan Array B *)
i := 1;
while (i<=n) do
begin
posx := 40;
j := 1;
while (j<=n) do
begin
gotoxy(posx, 5+i); write(‘Data B[‘,i, ‘,’ ,j, ‘] = ‘);
readln(b[i,j]);
posx := posx + 17;
j := j+1;
end;
i := i+1;
end;
(* bagian ini untuk melakukan penjumlahan Array A dan B
dan disimpan di C’ *)
for i := 1 to n do
for j := 1 to n do
c[i,j] := a[i,j] + b[i,j];
(* bagian ini untuk mencetak data ke layar *)
writeln;
writeln(‘Hasil penjulahan dari data yang telah diinput sebelumnya’);
for i := 1 to 56 do
write(chr(205));
writeln;
i := 1;
while (i<=n) do
begin
posa := 2;
posb := 23;
posc := 47;
j := 1;
while (j<=n) do
begin
gotoxy(posa, 10+i); writeln(a[i,j]:5:0);
gotoxy(posb, 10+i); writeln(b[i,j]:5:0);
gotoxy(posc, 10+i); writeln(c[i,j]:5:0);
posa := posa + 6;
posb := posb + 6;
posc := posc + 8;
j := j+1;
end;
i := i+1;
end;
readln;
End.
42. Typing and then Run
Program Perkalian_Matriks_2D;
Uses CRT;
Var
n,i,j,k, posx : byte;
posa, posb, posc : byte;
a,b,c : array [1..10,1..10] of real;
Begin
clrscr;
writeln(‘Masukkan ukuran ordo matriks maksimum 2′);
write(‘Masukkan ukuran ordo : ‘); readln(n);
(* bagian ini untuk memasukkan elemen data array
melalui keyboard *)
writeln;
writeln(‘Data matriks yang akan diinputkan melalui keyboard’);
(* untuk membuat garis *)
for i := 1 to 50 do
write(chr(205));
writeln;
(* memasukkan Array A *)
i := 1;
while (i<=n) do
begin
posx := 2;
j := 1;
while (j<=n) do
begin
gotoxy(posx, 5+i); write(‘Data A[‘,i, ‘,’ ,j, ‘] = ‘);
readln(a[i,j]);
posx := posx + 17;
j := j+1;
end;
i := i+1;
end;
(* memasukkan Array B *)
i := 1;
while (i<=n) do
begin
posx := 40;
j := 1;
while (j<=n) do
begin
gotoxy(posx, 5+i); write(‘Data B[‘,i, ‘,’ ,j, ‘] = ‘);
readln(b[i,j]);
posx := posx + 17;
j := j+1;
end;
i := i+1;
end;
(* bagian ini untuk melakukan perkalian Array A dan B
dan disimpan di C’ *)
for i := 1 to n do
for j := 1 to n do
begin
c[i,j] := 0;
for k :=1 to n do
c[i,j] := c[i,j] + a[i,k] * b[k,j];
end;
(* bagian ini untuk mencetak data ke layar *)
writeln;
writeln(‘Hasil penjulahan dari data yang telah diinput sebelumnya’);
for i := 1 to 56 do
write(chr(205));
writeln;
i := 1;
while (i<=n) do
begin
posa := 2;
posb := 23;
posc := 47;
j := 1;
while (j<=n) do
begin
gotoxy(posa, 10+i); writeln(a[i,j]:5:0);
gotoxy(posb, 10+i); writeln(b[i,j]:5:0);
gotoxy(posc, 10+i); writeln(c[i,j]:5:0);
posa := posa + 6;
posb := posb + 6;
posc := posc + 8;
j := j+1;
end;
i := i+1;
end;
readln;
End.