Halaman

Kamis, 28 Februari 2008

PEMOGRAMAN TERSTRUKTUR

A. LISTING PROGRAM

{***********************************************************
KELAS : MIF-X-K32.7
PROGRAM : D-III
CREATED BY : ASEP KURNIA NPM: 07.302.039
BAHAGIA KARO SEKALI NPM: 07.302.041
SAMJA DIPRAJA NPM: 07.302.058
************************************************************}
Program Tugas2_Pemograman_Terstruktur;
uses wincrt;
type BrgRec=record
Kode : string[5];
NamaBrg : string[15];
Harga : integer;
JmlStock : integer;
end;
var
RBrg : BrgRec;
FBrg : File of BrgRec;
vKode : string[5];
Huruf : char;
Jawab,Lagi : char;
Ketemu : boolean;
JmlD,JmlE,JmlL,JmlP,JmlH,JmlI,JmlSpasi: integer;
Pilih1,Pilih2,Pilih3 : byte;
alas,tinggi,sisi,jari,panjang,lebar : integer;
LSegiTiga,LSegiEmpat,KSegiEmpat,LPersegiPanjang,LLingkaran : real;
VKubus,VBola : real;
KPersegiPanjang,L : Real;
{Funngsi untuk menghitung luas kubus}
function L_Kubus(s:real):real;
begin
L_Kubus:=6*s*s;
end;
{Procedure untuk menghitung volume kubus}
procedure V_Kubus(s:real;var V:real);
begin
V:=Sqr(s)*s;
end;
{Funngsi untuk menghitung luas bola}
function L_Bola(r:integer):real;
begin
L_Bola:=4*3.14*r*r;
end;
{Procedure untuk menghitung volume bola}
procedure V_Bola(r:integer;var V:real);
begin
V:=(4*3.14*r*r*r)/3;
end;
{Procedure untuk menghitung luas lingkaran}
procedure L_Lingkaran(r:integer;var L:real);
begin
L:=Pi*r*r;
end;

{Program utama}
Label 1;
Label 2;
Label 3;
Label 4;
Label 5;
Label 6;
Label 7;
Label 8;
Label 9;
Label 10;
Label 11;
Label 12;
Label 13;
Label 14;
Label 15;
Label 16;
Label 17;
begin
1:
clrscr;
gotoxy(30,02); write('PEMOGRAMAN TERSETRUKTUR');
gotoxy(13,03); write('Manajemen Informatika-Program D-III Piksi Ganesha Bandung');
gotoxy(30,04); write('Created by : MIF-X-K32.7');
gotoxy(18,05); write('Asep Kurnia, Bahagia Karo Sekali, Samja Dipraja');
gotoxy(06,06); write('=============================================');
gotoxy(25,10); write('KASUS PEMOGRAMAN TERSETRUKTUR');
gotoxy(25,11); write('---------------------------------------------------------');
gotoxy(25,12); write('[1] Mesin Karakter');
gotoxy(25,13); write('[2] Opersai Matematik');
gotoxy(25,14); write('[3] Input Data');
gotoxy(25,15); write('[4] Keluar Program');
gotoxy(25,17); write('Pilihan [1-4] : '); Readln(Pilih1);
case Pilih1 of
1: begin
2:
clrscr;
gotoxy(30,02); write('PEMOGRAMAN TERSETRUKTUR');
gotoxy(13,03); write('Manajemen Informatika-Program D-III Piksi Ganesha Bandung');
gotoxy(30,04); write('Created by : MIF-X-K32.7');
gotoxy(18,05); write('Asep Kurnia, Bahagia Karo Sekali, Samja Dipraja');
gotoxy(06,06); write('==============================================');
gotoxy(25,10); write('MESIN KARAKTER');
gotoxy(25,11); write('---------------------------');
gotoxy(25,12); write('[1] Definisi Mesin Karakter');
gotoxy(25,13); write('[2] Contoh Program Mesin Karakter');
gotoxy(25,14); write('[3] Close');
gotoxy(25,16); write('Pilihan [1-3] : '); Readln(Pilih2);
case Pilih2 of
1: begin
5:
clrscr;
gotoxy(30,02); write('PEMOGRAMAN TERSETRUKTUR');
gotoxy(13,03); write('Manajemen Informatika-Program D-III Piksi Ganesha Bandung');
gotoxy(30,04); write('Created by : MIF-X-K32.7');
gotoxy(18,05); write('Asep Kurnia, Bahagia Karo Sekali, Samja Dipraja');
gotoxy(06,06); write('==============================================');
gotoxy(25,10); write('DEFINISI MESIN KARAKTER');
gotoxy(25,11); write('----------------------------------------');
gotoxy(04,12); write('Mesin Karakter adalah mesin abstrak yang menggambarkan dalam suatu mesin');
gotoxy(04,13); write('terdapat pita yang bertipe karakter, numerik, dan sebagainya');
gotoxy(04,15); write('Jika pita bertipe karakter maka akhir dari pta tersebut ditandai dengan ');
gotoxy(04,16); write('tanda titik. Jika pita bertipe numerik maka pita tersebut diakhiri dengan');
gotoxy(04,17); write('tanda 9999. Jika pita hanya berisi akhiran "."/"9999" berarti pita kosong');
gotoxy(04,19); write('Mesin Karakter terdiri atas empat komponen yaitu : Tombol STAR (posisi pada');
gotoxy(04,20); write('karakter pertama), ADV, maju satu karakter, sebuah lampu EOP (End of Pita)');
gotoxy(04,21); write('dan JENDELA yang ukurannya sebesar satu karakter. Hanya karakter yang ');
gotoxy(04,22); write('posisinya pada jendela yang dapat di konsultasi/dibaca. Karakter yang sedang');
gotoxy(04,23); write('dibaca pada jende;a dinamakan "CC" (Current Character).');
gotoxy(04,25); write('Close [Y/T] : '); readln(Jawab);
if Upcase(Jawab)='Y' then
goto 1
else
goto 5;
end;
2: begin
repeat
Jawab:='Y';
clrscr;
JmlD:=0;
JmlE:=0;
JmlL:=0;
JmlP:=0;
JmlH:=0;
JmlI:=0;
JmlSpasi:=0;
gotoxy(30,02); write('PEMOGRAMAN TERSETRUKTUR');
gotoxy(13,03); write('Manajemen Informatika-Program D-III Piksi Ganesha Bandung');
gotoxy(30,04); write('Created by : MIF-X-K32.7');
gotoxy(18,05); write('Asep Kurnia, Bahagia Karo Sekali, Samja Dipraja');
gotoxy(06,06); write('==============================================');
gotoxy(25,08); write('CONTOH PROGRAM MESIN KARAKTER');
gotoxy(25,09); write('-------------------------------------------------------');
gotoxy(05,10); write('Program menghitung banyaknya huruf "D,E,L,P,H,I" dari sebuah kalimat.');
gotoxy(05,11); write('Program akan berhenti jika ditekan tanda "titik" (.)');
gotoxy(05,13); write('Masukan huruf : '); readln(Huruf); gotoxy(23,13); write('');
while huruf <>'.' do
begin
Huruf:=Upcase(Huruf);
if Huruf='D' then
JmlD:=JmlD+1
else
if Huruf='E' then
JmlE:=JmlE+1
else
if Huruf='L' then
JmlL:=JmlL+1
else
if Huruf='P' then
JmlP:=JmlP+1
else
if Huruf='H' then
JmlH:=JmlH+1
else
if Huruf='I' then
JmlI:=JmlI+1
else
if Huruf=' ' then
JmlSpasi:=JmlSpasi+1;
gotoxy(05,13); write('Masukan huruf : '); readln(Huruf);
gotoxy(23,13); write('');
end;
writeln;
gotoxy(21,15); write('Huruf/Kalimat yang telah anda masukan');
gotoxy(21,17); write('Jumlah huruf "D" adalah : ',JmlD,' buah huruf');
gotoxy(21,18); write('Jumlah huruf "E" adalah : ',JmlE,' buah huruf');
gotoxy(21,19); write('Jumlah huruf "L" adalah : ',JmlL,' buah huruf');
gotoxy(21,20); write('Jumlah huruf "P" adalah : ',JmlP,' buah huruf');
gotoxy(21,21); write('Jumlah huruf "H" adalah : ',JmlH,' buah huruf');
gotoxy(21,22); write('Jumlah huruf "I" adalah : ',JmlI,' buah huruf');
gotoxy(21,23); write('Jumlah "SPASI" adalah : ',JmlSpasi,' buah spasi');
writeln;
gotoxy(05,25); write('Anda ingin mencoba lagi [Y/T] : '); readln(Jawab);
until upcase(Jawab)='T';
goto 1;
end;
3: begin
if Jawab='1' then
goto 1
else
goto 1;
end;
end;
end;
2: begin
6:
clrscr;
gotoxy(30,02); write('PEMOGRAMAN TERSETRUKTUR');
gotoxy(13,03); write('Manajemen Informatika-Program D-III Piksi Ganesha Bandung');
gotoxy(30,04); write('Created by : MIF-X-K32.7');
gotoxy(18,05); write('Asep Kurnia, Bahagia Karo Sekali, Samja Dipraja');
gotoxy(06,06); write('==============================================');
gotoxy(25,10); write('OPERASI MATEMATIK');
gotoxy(25,11); write('--------------------------------');
gotoxy(25,12); write('[1] Luas Segitiga');
gotoxy(25,13); write('[2] Luas Segiempat');
gotoxy(25,14); write('[3] Luas Persegi Panjang');
gotoxy(25,15); write('[4] Luas Lingkaran');
gotoxy(25,16); write('[5] Luas Kubus');
gotoxy(25,17); write('[6] Luas Bola');
gotoxy(25,18); write('[7] Volume Kubus');
gotoxy(25,19); write('[8] Volume Bola');
gotoxy(25,20); write('[9] Keliling Segiempat');
gotoxy(25,21); write('[10] Keliling Persegi Panjang');
gotoxy(25,22); write('[11] Close');
gotoxy(25,24); write('Pilihan [1-11] : '); readln(Pilih3);
case Pilih3 of
1: Begin
7:
clrscr;
gotoxy(30,02); write('PEMOGRAMAN TERSETRUKTUR');
gotoxy(13,03); write('Manajemen Informatika-Program D-III Piksi Ganesha Bandung');
gotoxy(30,04); write('Created by : MIF-X-K32.7');
gotoxy(18,05); write('Asep Kurnia, Bahagia Karo Sekali, Samja Dipraja');
gotoxy(06,06); write('==============================================');
gotoxy(25,10); write('PROGRAM MENGHITUNG LUAS SEGITIGA');
gotoxy(25,11); write('-----------------------------------------------------------');
gotoxy(25,12); write('Masukan nila alas segitiga : '); readln(alas);
gotoxy(25,13); write('Masukan nilai tinggi segitiga : '); readln(tinggi);
LSegiTiga:=0.5*alas*tinggi;
gotoxy(25,15); write('Luas segitiga adalah : ',LSegitiga:12:2);
gotoxy(25,17); write('Anda ingin menghitung lagi [Y/T] : ');readln(Jawab);
if upcase(Jawab)='Y' then
goto 7 else goto 6;
end;
2: Begin
8:
clrscr;
gotoxy(30,02); write('PEMOGRAMAN TERSETRUKTUR');
gotoxy(13,03); write('Manajemen Informatika-Program D-III Piksi Ganesha Bandung');
gotoxy(30,04); write('Created by : MIF-X-K32.7');
gotoxy(18,05); write('Asep Kurnia, Bahagia Karo Sekali, Samja Dipraja');
gotoxy(06,06); write('=============================================='); gotoxy(25,10); write('PROGRAM MENGHITUNG LUAS SEGIEMPAT');
gotoxy(25,11); write('---------------------------------------');
gotoxy(25,12); write('Masukan nila sisi segiempat : '); readln(sisi);
LSegiEmpat:=sisi*sisi;
gotoxy(25,14); write('Luas segiempat adalah : ',LSegiEmpat:12:2);
gotoxy(25,16); write('Anda ingin menghitung lagi [Y/T] : ');readln(Jawab);
if upcase(Jawab)='Y' then
goto 8 else goto 6;
end;
3: Begin
9:
clrscr;
gotoxy(30,02); write('PEMOGRAMAN TERSETRUKTUR');
gotoxy(13,03); write('Manajemen Informatika-Program D-III Piksi Ganesha Bandung');
gotoxy(30,04); write('Created by : MIF-X-K32.7');
gotoxy(18,05); write('Asep Kurnia, Bahagia Karo Sekali, Samja Dipraja');
gotoxy(06,06); write('==============================================');
gotoxy(25,10); write('PROGRAM MENGHITUNG LUAS PERSEGI PANJANG');
gotoxy(25,11); write('-------------------------------------------------------------------------');
gotoxy(25,12); write('Masukan nila panjang : '); readln(panjang);
gotoxy(25,13); write('Masukan nilai lebar : '); readln(lebar);
LPersegiPanjang:=panjang*lebar;
gotoxy(25,15); write('Luas Persegi Panjang adalah : ',LPersegiPanjang:12:2);
gotoxy(25,17); write('Anda ingin menghitung lagi [Y/T] : ');readln(Jawab);
if upcase(Jawab)='Y' then
goto 9 else goto 6;
end;
4: Begin
10:
clrscr;
gotoxy(30,02); write('PEMOGRAMAN TERSETRUKTUR');
gotoxy(13,03); write('Manajemen Informatika-Program D-III Piksi Ganesha Bandung');
gotoxy(30,04); write('Created by : MIF-X-K32.7');
gotoxy(18,05); write('Asep Kurnia, Bahagia Karo Sekali, Samja Dipraja');
gotoxy(06,06); write('==============================================');
gotoxy(25,10); write('PROGRAM MENGHITUNG LUAS LINGKARAN');
gotoxy(25,11); write('---------------------------------------------------------------');
gotoxy(25,12); write('Masukan jari-jari lingkaran : '); readln(jari);
L_Lingkaran(jari,LLingkaran);
gotoxy(25,14); write('Luas lingkaran adalah : ',LLingkaran:12:2);
gotoxy(25,16); write('Anda ingin menghitung lagi [Y/T] : ');readln(Jawab);
if upcase(Jawab)='Y' then
goto 10 else goto 6;
end;
5: Begin
11:
clrscr;
gotoxy(30,02); write('PEMOGRAMAN TERSETRUKTUR');
gotoxy(13,03); write('Manajemen Informatika-Program D-III Piksi Ganesha Bandung');
gotoxy(30,04); write('Created by : MIF-X-K32.7');
gotoxy(18,05); write('Asep Kurnia, Bahagia Karo Sekali, Samja Dipraja');
gotoxy(06,06); write('==============================================');
gotoxy(25,10); write('PROGRAM MENGHITUNG LUAS KUBUS');
gotoxy(25,11); write('-------------------------------------------------------');
gotoxy(25,12); write('Masukan nila sisi kubus : '); readln(sisi);
gotoxy(25,14); write('Luas kubus adalah : ',L_Kubus(sisi):12:2);
gotoxy(25,16); write('Anda ingin menghitung lagi [Y/T] : ');readln(Jawab);
if upcase(Jawab)='Y' then
goto 11 else goto 6;
end;
6: Begin
12:
clrscr;
gotoxy(30,02); write('PEMOGRAMAN TERSETRUKTUR');
gotoxy(13,03); write('Manajemen Informatika-Program D-III Piksi Ganesha Bandung');
gotoxy(30,04); write('Created by : MIF-X-K32.7');
gotoxy(18,05); write('Asep Kurnia, Bahagia Karo Sekali, Samja Dipraja');
gotoxy(06,06); write('==============================================');
gotoxy(25,10); write('PROGRAM MENGHITUNG LUAS BOLA');
gotoxy(25,11); write('------------------------------------------------------');
gotoxy(25,12); write('Masukan nila jari-jari bola : '); readln(jari);
gotoxy(25,14); write('Luas bola adalah : ',L_Bola(jari):12:2);
gotoxy(25,16); write('Anda ingin menghitung lagi [Y/T] : ');readln(Jawab);
if upcase(Jawab)='Y' then
goto 12 else goto 6;
end;
7: Begin
13:
clrscr;
gotoxy(30,02); write('PEMOGRAMAN TERSETRUKTUR');
gotoxy(13,03); write('Manajemen Informatika-Program D-III Piksi Ganesha Bandung');
gotoxy(30,04); write('Created by : MIF-X-K32.7');
gotoxy(18,05); write('Asep Kurnia, Bahagia Karo Sekali, Samja Dipraja');
gotoxy(06,06); write('==============================================');
gotoxy(25,10); write('PROGRAM MENGHITUNG VOLUME KUBUS');
gotoxy(25,11); write('-------------------------------------------------------------');
gotoxy(25,12); write('Masukan nila sisi kubus : '); readln(sisi);
V_Kubus(sisi,VKubus);
gotoxy(25,14); write('Volume kubus adalah : ',VKubus:12:2);
gotoxy(25,16); write('Anda ingin menghitung lagi [Y/T] : ');readln(Jawab);
if upcase(Jawab)='Y' then
goto 13 else goto 6;
end;
8: Begin
14:
clrscr;
gotoxy(30,02); write('PEMOGRAMAN TERSETRUKTUR');
gotoxy(13,03); write('Manajemen Informatika-Program D-III Piksi Ganesha Bandung');
gotoxy(30,04); write('Created by : MIF-X-K32.7');
gotoxy(18,05); write('Asep Kurnia, Bahagia Karo Sekali, Samja Dipraja');
gotoxy(06,06); write('==============================================');
gotoxy(25,10); write('PROGRAM MENGHITUNG VOLUME BOLA');
gotoxy(25,11); write('----------------------------------------------------------');
gotoxy(25,12); write('Masukan nila jari-jari bola : '); readln(jari);
V_Bola(jari,VBola);
gotoxy(25,14); write('Volume bola adalah : ',VBola:12:2);
gotoxy(25,16); write('Anda ingin menghitung lagi [Y/T] : ');readln(Jawab);
if upcase(Jawab)='Y' then
goto 14 else goto 6;
end;
9: Begin
15:
clrscr;
gotoxy(30,02); write('PEMOGRAMAN TERSETRUKTUR');
gotoxy(13,03); write('Manajemen Informatika-Program D-III Piksi Ganesha Bandung');
gotoxy(30,04); write('Created by : MIF-X-K32.7');
gotoxy(18,05); write('Asep Kurnia, Bahagia Karo Sekali, Samja Dipraja');
gotoxy(06,06); write('==============================================');
gotoxy(25,10); write('PROGRAM MENGHITUNG KELILING SEGIEMPAT');
gotoxy(25,11); write('--------------------------------------------------------------------');
gotoxy(25,12); write('Masukan nila sisi segiempat : '); readln(sisi);
KSegiEmpat:=4*sisi;
gotoxy(25,14); write('Keliling segiempat adalah : ',KSegiEmpat:12:2);
gotoxy(25,16); write('Anda ingin menghitung lagi [Y/T] : ');readln(Jawab);
if upcase(Jawab)='Y' then
goto 15 else goto 6;
end;
10: Begin
16:
clrscr;
gotoxy(30,02); write('PEMOGRAMAN TERSETRUKTUR');
gotoxy(13,03); write('Manajemen Informatika-Program D-III Piksi Ganesha Bandung');
gotoxy(30,04); write('Created by : MIF-X-K32.7');
gotoxy(18,05); write('Asep Kurnia, Bahagia Karo Sekali, Samja Dipraja');
gotoxy(06,06); write('==============================================');
gotoxy(25,10); write('PROGRAM MENGHITUNG KELILING PERSEGI PANJANG');
gotoxy(25,11); write('------------------------------------------------------------------------------');
gotoxy(25,12); write('Masukan nila panjang : '); readln(panjang);
gotoxy(25,13); write('Masukan nilai lebar : '); readln(lebar);
KPersegiPanjang:=2*panjang*lebar;
gotoxy(25,15); write('Luas Persegi Panjang adalah : ',KPersegiPanjang:12:2);
gotoxy(25,17); write('Anda ingin menghitung lagi [Y/T] : ');readln(Jawab);
if upcase(Jawab)='Y' then
goto 16 else goto 6;
end;
11: goto 1
else goto 6;
end;
end;
3: begin
17:
clrscr;
assign(FBrg,'Barang.Dat');
{$I-}
reset(FBrg);
{$I+}
if IOresult<>0 then rewrite(FBrg);
Lagi:='Y';
while upcase(Lagi)='Y' do
begin
clrscr;
gotoxy(30,02); write('PEMOGRAMAN TERSETRUKTUR');
gotoxy(13,03); write('Manajemen Informatika-Program D-III Piksi Ganesha Bandung');
gotoxy(30,04); write('Created by : MIF-X-K32.7');
gotoxy(18,05); write('Asep Kurnia, Bahagia Karo Sekali, Samja Dipraja');
gotoxy(06,06); write('==============================================');
gotoxy(25,10); write('INPUT DATA BARANG');
gotoxy(25,11); write('-------------------------------');
gotoxy(25,12); write('Kode Barang : ');
gotoxy(25,13); write('Nama Barang : ');
gotoxy(25,14); write('Harga Barang : ');
gotoxy(25,15); write('Jumlah Stock : ');
gotoxy(40,12); readln(vKode);
Ketemu:=False;
seek(FBrg,0);
while not EOF(FBrg) and not Ketemu do
begin
read(FBrg,RBrg);
if RBrg.Kode=vKode then
begin
clrscr;
gotoxy(30,02); write('PEMOGRAMAN TERSETRUKTUR');
gotoxy(13,03); write('Manajemen Informatika-Program D-III Piksi Ganesha Bandung');
gotoxy(30,04); write('Created by : MIF-X-K32.7');
gotoxy(18,05); write('Asep Kurnia, Bahagia Karo Sekali, Samja Dipraja');
gotoxy(06,06); write('=========================================');
gotoxy(25,17); write('Data Sudah Ada ');
readln;
clrscr;
Ketemu:=True;
end;
end;
if not Ketemu then
begin
RBrg.Kode:=vKode;
Jawab:='T';
while upcase(Jawab)='T' do
begin
gotoxy(40,13); readln(RBrg.NamaBrg);
gotoxy(40,14); readln(RBrg.Harga);
gotoxy(40,15); readln(RBrg.JmlStock);
gotoxy(25,17); write('Data Sudah Benar [Y/T] : '); readln(Jawab);
end;
write(FBrg,RBrg);
end;
gotoxy(30,02); write('PEMOGRAMAN TERSETRUKTUR');
gotoxy(13,03); write('Manajemen Informatika-Program D-III Piksi Ganesha Bandung');
gotoxy(30,04); write('Created by : MIF-X-K32.7');
gotoxy(18,05); write('Asep Kurnia, Bahagia Karo Sekali, Samja Dipraja');
gotoxy(06,06);write('=========================================');
gotoxy(25,19); write('Masukan Data Lagi [Y/T] : '); readln(Lagi);
if upcase(Lagi)='Y' then
goto 17
else
goto 1;
end;
close(FBrg);
end;
4: exit
else
clrscr;
gotoxy(30,02); write('PEMOGRAMAN TERSETRUKTUR');
gotoxy(13,03); write('Manajemen Informatika-Program D-III Piksi Ganesha Bandung');
gotoxy(30,04); write('Created by : MIF-X-K32.7');
gotoxy(18,05); write('Asep Kurnia, Bahagia Karo Sekali, Samja Dipraja');
gotoxy(06,06); write('==============================================');
gotoxy(25,16); write('Pilihan tidak termasuk kriteria');
gotoxy(36,17); writeln(''); gotoxy(44,17); readln;
goto 1;
end;
end.

1 komentar:

Unknown mengatakan...

huahhh!!!!
akhirnya putri tahu pak budi baca blogs ku yak...
(tentang koordes..)
heya..kagak nyangka pak budi baca blogs putri nemu dari mana ...??
heheheh

eh..pak..tulisan pemograman tersutruktur beneran dah,...putri kagak ngerti

hihiii

oh..23 nov ada apa...masa kagak tersirat ya dari tulisannya..(ya ulang tahun ku huahahahaha)