Source Code :
uses crt;
type t = object
m1,m2 : array [1..2,1..2] of integer;
lok : array [1..4] of integer;
procedure input;
procedure deter;
procedure tampil;
procedure transpos;
end;
var m :t;
i, j, k, pil, det1, det2 : integer;
procedure t.input;
begin
clrscr;
writeln (' Input Matriks I : ');
for i:= 1 to 2 do
begin
for j := 1 to 2 do
begin
write ('Elemen Matriks [',i,',',j,']:');
readln (m1[i,j]);
end;
end;
gotoxy (35,1); writeln('Input Matriks II : ');k:=2;
for i:= 1 to 2 do
begin
for j := 1 to 2 do
begin
gotoxy (35,k);inc (k);
write ('Elemen Matriks [',i,',',j,']: ');
readln (m2[i,j]);
end;
end;
end;
procedure t.tampil;
begin
writeln;
writeln(' * Matriks I * ');
writeln (m1[1,1]:5,m1[1,2]:5);
writeln (m1[2,1]:5,m1[2,2]:5);
gotoxy(35,7);writeln(' * Matriks II * ');
gotoxy(35,8);writeln(m2[1,1]:5,m2[1,2]:5);
gotoxy(35,9);writeln(m2[2,1]:5,m2[2,2]:5);
readln;
end;
procedure t.deter;
begin
det1 := (m1[1,1]*m1[2,2])-(m1[1,2]*m1[2,1]);
det2 := (m2[1,1]*m2[2,2])-(m2[1,2]*m2[2,1]);
writeln;
writeln (' Determinan Matriks I = ',det1);
writeln (' Determinan Matriks II = ',det2);
readln;
end;
procedure t.transpos;
begin
writeln;writeln (' * Transpose Matriks I * ');
writeln(m1[1,1]:5,m1[2,1]:5);
writeln(m1[1,2]:5,m1[2,2]:5);
gotoxy(35,9);writeln(' * Transpose Matrik II * ');
gotoxy(35,10);writeln(m2[1,1]:5,m2[2,1]:5);
gotoxy(35,11);writeln(m2[1,2]:5,m2[2,2]:5);
readln;
end;
begin
repeat
clrscr;
gotoxy(25,1);writeln ('<--------- Menu Matrik ---------->');
gotoxy(25,2);writeln ('1. Input Matriks');
gotoxy(25,3);writeln ('2. Transpose Matriks');
gotoxy(25,4);writeln ('3. Determinan Matriks');
gotoxy(25,5);writeln ('4. Keluar');
gotoxy(25,6);writeln ('<-------------------------------->');
gotoxy(27,7);write ('Pilihan 1-4 :'); readln(pil);
case pil of
1 : begin
m.input;
m.tampil;
end;
2 : m.transpos;
3 : m.deter;
end;
until (pil)=4
end.
Output :
Rabu, 03 Juni 2015
Program Matriks Pertambahan dan Penjumlahan Pascal
Coding :
uses crt;
type t = object
m1, m2 : array [1..2,1..2] of integer;
lok : array [1..4] of integer;
procedure input;
procedure tampil;
procedure tambah;
procedure kurang;
end;
var m : t;
i,j,k,pil : integer;
procedure t.input;
begin
clrscr;
writeln('Input Matriks I');
for i := 1 to 2 do
begin
for j := 1 to 2 do
begin
write('Elemen Matriks [',i,',',j,']:');
readln(m1[i,j]);
end;
end;
gotoxy (35,1); writeln('Input Matriks II');
k := 2;
for i := 1 to 2 do
begin
for j := 1 to 2 do
begin
gotoxy (25,k);
inc(k);
write('Elemen Matriks [',i,',',j,']:');
readln(m2[i,j]);
end;
end;
end;
procedure t.tampil;
begin
writeln;
writeln('Matriks I');
writeln(m1[1,1]:5,m1[1,2]:5);
writeln(m1[2,1]:5,m1[2,2]:5);
gotoxy (35,7); writeln('Matriks II');
gotoxy (35,8); writeln(m2[1,1]:5,m2[1,2]:5);
gotoxy (35,9); writeln(m2[2,1]:5,m2[2,2]:5);
readln;
end;
procedure t.tambah;
begin
gotoxy (23,11); writeln('Hasil pemjumlahan matriks');
lok[1] := (m1[1,1] + m2[1,1]);
lok[2] := (m1[1,2] + m2[1,2]);
lok[3] := (m1[2,1] + m2[2,1]);
lok[4] := (m1[2,2] + m2[2,2]);
gotoxy (30,12); writeln(lok[1]:5,lok[2]:5);
gotoxy (30,13); writeln(lok[3]:5,lok[4]:5);
readln;
end;
procedure t.kurang;
begin
gotoxy (4,9); writeln('Hasil Matriks I - II');
lok[1] := (m1[1,1] - m2[1,1]);
lok[2] := (m1[1,2] - m2[1,2]);
lok[3] := (m1[2,1] - m2[2,1]);
lok[4] := (m1[2,2] - m2[2,2]);
gotoxy (9,11); writeln(lok[1]:5,lok[2]:5);
gotoxy (9,12); writeln(lok[3]:5,lok[4]:5);
gotoxy (4,9); writeln('Hasil Matriks II - I');
lok[1] := (m2[1,1] - m1[1,1]);
lok[2] := (m2[1,2] - m1[1,2]);
lok[3] := (m2[2,1] - m1[2,1]);
lok[4] := (m2[2,2] - m1[2,2]);
gotoxy (45,11); writeln(lok[1]:5,lok[2]:5);
gotoxy (45,12); writeln(lok[3]:5,lok[4]:5);
readln;
end;
begin
repeat
clrscr;
gotoxy (25,1); writeln('<<<<<<<<<< Menu Matriks >>>>>>>>>');
gotoxy (25,2); writeln('1. Input Matriks');
gotoxy (25,3); writeln('2. Penjumlahan Matriks');
gotoxy (25,4); writeln('3. Pengurangan Matriks');
gotoxy (25,5); writeln('4. Keluar');
gotoxy (25,6); writeln('---------------------------------');
gotoxy (25,7); writeln('Pilihan [1,4] :'); readln(pil);
case pil of
1: begin
m.input;
m.tampil;
end;
2: m.tambah;
3: m.kurang;
end;
until(pil)=4;
end.
begin
m.input;
m.tampil;
m.tambah;
Output :
uses crt;
type t = object
m1, m2 : array [1..2,1..2] of integer;
lok : array [1..4] of integer;
procedure input;
procedure tampil;
procedure tambah;
procedure kurang;
end;
var m : t;
i,j,k,pil : integer;
procedure t.input;
begin
clrscr;
writeln('Input Matriks I');
for i := 1 to 2 do
begin
for j := 1 to 2 do
begin
write('Elemen Matriks [',i,',',j,']:');
readln(m1[i,j]);
end;
end;
gotoxy (35,1); writeln('Input Matriks II');
k := 2;
for i := 1 to 2 do
begin
for j := 1 to 2 do
begin
gotoxy (25,k);
inc(k);
write('Elemen Matriks [',i,',',j,']:');
readln(m2[i,j]);
end;
end;
end;
procedure t.tampil;
begin
writeln;
writeln('Matriks I');
writeln(m1[1,1]:5,m1[1,2]:5);
writeln(m1[2,1]:5,m1[2,2]:5);
gotoxy (35,7); writeln('Matriks II');
gotoxy (35,8); writeln(m2[1,1]:5,m2[1,2]:5);
gotoxy (35,9); writeln(m2[2,1]:5,m2[2,2]:5);
readln;
end;
procedure t.tambah;
begin
gotoxy (23,11); writeln('Hasil pemjumlahan matriks');
lok[1] := (m1[1,1] + m2[1,1]);
lok[2] := (m1[1,2] + m2[1,2]);
lok[3] := (m1[2,1] + m2[2,1]);
lok[4] := (m1[2,2] + m2[2,2]);
gotoxy (30,12); writeln(lok[1]:5,lok[2]:5);
gotoxy (30,13); writeln(lok[3]:5,lok[4]:5);
readln;
end;
procedure t.kurang;
begin
gotoxy (4,9); writeln('Hasil Matriks I - II');
lok[1] := (m1[1,1] - m2[1,1]);
lok[2] := (m1[1,2] - m2[1,2]);
lok[3] := (m1[2,1] - m2[2,1]);
lok[4] := (m1[2,2] - m2[2,2]);
gotoxy (9,11); writeln(lok[1]:5,lok[2]:5);
gotoxy (9,12); writeln(lok[3]:5,lok[4]:5);
gotoxy (4,9); writeln('Hasil Matriks II - I');
lok[1] := (m2[1,1] - m1[1,1]);
lok[2] := (m2[1,2] - m1[1,2]);
lok[3] := (m2[2,1] - m1[2,1]);
lok[4] := (m2[2,2] - m1[2,2]);
gotoxy (45,11); writeln(lok[1]:5,lok[2]:5);
gotoxy (45,12); writeln(lok[3]:5,lok[4]:5);
readln;
end;
begin
repeat
clrscr;
gotoxy (25,1); writeln('<<<<<<<<<< Menu Matriks >>>>>>>>>');
gotoxy (25,2); writeln('1. Input Matriks');
gotoxy (25,3); writeln('2. Penjumlahan Matriks');
gotoxy (25,4); writeln('3. Pengurangan Matriks');
gotoxy (25,5); writeln('4. Keluar');
gotoxy (25,6); writeln('---------------------------------');
gotoxy (25,7); writeln('Pilihan [1,4] :'); readln(pil);
case pil of
1: begin
m.input;
m.tampil;
end;
2: m.tambah;
3: m.kurang;
end;
until(pil)=4;
end.
begin
m.input;
m.tampil;
m.tambah;
Output :
Sabtu, 02 Mei 2015
Program Sederhana COBOL : ARRAY
IDENTIFICATION DIVISION.
PROGRAM-ID. ARRAY.
AUTHOR. JESSY.
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 I PIC 9.
01 J PIC 9.
01 CETAK.
02 M1 PIC Z9.
01 DATA1.
02 BARIS1 OCCURS 2 TIMES.
03 MATRIKS1 OCCURS 2 TIMES PIC 999.
SCREEN SECTION.
01 HAPUS.
02 BLANK SCREEN.
PROCEDURE DIVISION.
MULAI.
MOVE 3 TO LIN.
DISPLAY HAPUS.
PERFORM ISI1 VARYING I FROM 1 BY 1 UNTIL I > 2
AFTER J FROM 1 BY 1 UNTIL J > 2.
COMPUTE LIN = 10.
DISPLAY HAPUS.
PERFORM HASIL VARYING I FROM 1 BY 1 UNTIL I > 2
AFTER J FROM 1 BY 1 UNTIL J > 2.
GO TO SELESAI.
ISI1.
DISPLAY(3 , 2 ) 'MATRIKS A'.
COMPUTE LIN = LIN + 1.
DISPLAY(LIN, 2) ' ELEMEN BARIS KE-', I ,
' KOLOM KE- ', J , ':'.
ACCEPT MATRIKS1(I, J).
HASIL.
MOVE I TO LIN.
MOVE J TO COL.
MOVE MATRIKS1(I, J) TO M1.
COMPUTE LIN = LIN * 2.
COMPUTE COL = COL * 4.
DISPLAY(LIN, COL + 1) M1.
DISPLAY SPACE.
SELESAI.
STOP RUN.
OUTPUT :
Program Sederhana COBOL : Segitiga (looping)
Codingan :
IDENTIFICATION DIVISION.
PROGRAM-ID. LOOPING.
AUTHOR. JESSY.
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 ANGKA PIC 99.
01 L PIC 99.
01 K PIC 99.
01 J PIC 99.
SCREEN SECTION.
01 CLS.
02 BLANK SCREEN.
PROCEDURE DIVISION.
MULAI.
DISPLAY CLS.
PERFORM TAMPILKAN
VARYING L FROM 5 BY -1 UNTIL L <2
AFTER K FROM 1 BY 1 UNTIL K > L.
TAMPILKAN.
MOVE K TO J
DISPLAY ( , ) J, ' '.
IF L = K DISPLAY SPACE.
SELESAI.
STOP RUN.
OUTPUT :
Program Sederhana COBOL : Looping
IDENTIFICATION DIVISION.
PROGRAM-ID. LOOPING.
AUTHOR. JESSY.
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 ANGKA PIC 99.
01 JUMLAH PIC 99.
PROCEDURE DIVISION.
MULAI.
DISPLAY ( , ) 'Masukkan Angka = ',
ACCEPT JUMLAH.
DISPLAY ' '.
PERFORM TAMPILKAN
VARYING ANGKA FROM 1 BY 1 UNTIL ANGKA = JUMLAH.
TAMPILKAN.
DISPLAY ANGKA.
SELESAI.
STOP RUN.
Output :
Program Sederhana COBOL : NILAI (GRADE)
Codingan :
IDENTIFICATION DIVISION.
PROGRAM-ID. GRADE.
AUTHOR. JESSY
DATA DIVISION
WORKING-STORAGE SECTION.
01 NAMA PIC A(20).
01 NPM PIC 9(8).
01 UTS PIC 9(2).
01 UAS PIC 9(2).
01 TOTAL PIC 9(3).
SCREEN SECTION.
01 MASUKKAN.
02 LINE 5 COLUMN 3 VALUE 'NAMA :'.
02 COLUMN PLUS 1 PIC A(20) TO NAMA.
02 LINE 7 COLUMN 3 VALUE 'NPM :'.
02 COLUMN PLUS 1 PIC 9(8) TO NPM.
02 LINE 9 COLUMN 3 VALUE 'NILAI UTS :'.
02 COLUMN PLUS 1 PIC 9(2) TO UTS.
02 LINE 11 COLUMN 3 VALUE 'NILAI UAS :'.
02 COLUMN PLUS 1 PIC 9(2) TO UAS.
01 GRADE-A.
02 LINE 15 COLUMN 3 VALUE 'GRADE A.'.
01 GRADE-B.
02 LINE 15 COLUMN 3 VALUE 'GRADE B.'.
01 GRADE-C.
02 LINE 15 COLUMN 3 VALUE 'GRADE C.'.
01 GRADE-D.
02 LINE 15 COLUMN 3 VALUE 'GRADE D.'.
01 GRADE-E.
02 LINE 15 COLUMN 3 VALUE 'GRADE E.'.
PROCEDURE DIVISION.
MULAI.
DISPLAY MASUKKAN.
ACCEPT MASUKKAN.
DISPLAY ' '.
COMPUTE TOTAL = (0.3 * UTS) + (0.7 * UAS).
IF TOTAL > 89
DISPLAY GRADE-A.
IF TOTAL < 89 AND TOTAL > 79
DISPLAY GRADE-B.
IF TOTAL < 79 AND TOTAL > 69
DISPLAY GRADE-C.
IF TOTAL < 69 AND TOTAL > 59
DISPLAY GRADE-D.
IF TOTAL < 59
DISPLAY GRADE-E.
SELESAI.
STOP RUN.
IDENTIFICATION DIVISION.
PROGRAM-ID. GRADE.
AUTHOR. JESSY
DATA DIVISION
WORKING-STORAGE SECTION.
01 NAMA PIC A(20).
01 NPM PIC 9(8).
01 UTS PIC 9(2).
01 UAS PIC 9(2).
01 TOTAL PIC 9(3).
SCREEN SECTION.
01 MASUKKAN.
02 LINE 5 COLUMN 3 VALUE 'NAMA :'.
02 COLUMN PLUS 1 PIC A(20) TO NAMA.
02 LINE 7 COLUMN 3 VALUE 'NPM :'.
02 COLUMN PLUS 1 PIC 9(8) TO NPM.
02 LINE 9 COLUMN 3 VALUE 'NILAI UTS :'.
02 COLUMN PLUS 1 PIC 9(2) TO UTS.
02 LINE 11 COLUMN 3 VALUE 'NILAI UAS :'.
02 COLUMN PLUS 1 PIC 9(2) TO UAS.
01 GRADE-A.
02 LINE 15 COLUMN 3 VALUE 'GRADE A.'.
01 GRADE-B.
02 LINE 15 COLUMN 3 VALUE 'GRADE B.'.
01 GRADE-C.
02 LINE 15 COLUMN 3 VALUE 'GRADE C.'.
01 GRADE-D.
02 LINE 15 COLUMN 3 VALUE 'GRADE D.'.
01 GRADE-E.
02 LINE 15 COLUMN 3 VALUE 'GRADE E.'.
PROCEDURE DIVISION.
MULAI.
DISPLAY MASUKKAN.
ACCEPT MASUKKAN.
DISPLAY ' '.
COMPUTE TOTAL = (0.3 * UTS) + (0.7 * UAS).
IF TOTAL > 89
DISPLAY GRADE-A.
IF TOTAL < 89 AND TOTAL > 79
DISPLAY GRADE-B.
IF TOTAL < 79 AND TOTAL > 69
DISPLAY GRADE-C.
IF TOTAL < 69 AND TOTAL > 59
DISPLAY GRADE-D.
IF TOTAL < 59
DISPLAY GRADE-E.
SELESAI.
STOP RUN.
Program Sederhana COBOL : BIODATA
Codingan :
Logika :
Logika :
- Dalam IDENTIFICATION DIVISION, kita diharuskan mengisi nama Program (PROGRAM-ID) dan pembuat program (AUTHOR).
- Dalam DATA DIVISION,berisi tentang variabel” yang akan digunakan dalam program. Variabel NAMA merupakan variabel karakter(alphabet) yang dapat memuat 20 karakter. Variabel NPM merupakan variabel numeric yang memuat 8 angka.Variabel KELAS merupakan variabel yg dapat menampung karakter dan numeric sebanyak 5 karakter. Variabel TAHUN merupakan variabel angka yg menampung 4 angka. Dan Variabel HITUNG adalah variabel numerik yang hanya memuat 2 angka.
- PROCEDURE DIVISION berisi tentang statement untuk menjalankan program. Pertama,program dimulai dengan statement Mulai. Program akan meminta menginput Nama dan ketika di enter(input),akan masuk ke dalam Variabel NAMA. Lalu akan melanjutkan hal yang sama. Meminta menginput KELAS,NPM,dan tahun lahir. Dan akan disimpan juga dalam variabel NPM,KELAS,dan TAHUN
- Pada Statement COMPUTE,akan dilakukan perhitungan tentang berapa umur anda sekarang. Menggunakan variabel TAHUN. Dan hasil perhitungan tersebut dimasukkan kedalam variabel HITUNG.
- Setelah semua data telah dimasukkan dan perhitungan telah dihitung, maka akan keluar output(hasil) yang berupa Nama,Kelas,NPM,Umur sesuai dengan data yang telah diinput oleh pengguna program.
- Selesai dan STOPRUN menandakan bahwa program selesai berjalan.
Langganan:
Postingan (Atom)


























