laporan pemrograman komputer 5

30
Laporan Pemrograman Komputer “Looping” Disusun Oleh : Antonio Grafiko F1A 007 002 Dosen Pembimbing Bashori Matematika Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Bengkulu 2009

Upload: antonio-grafiko

Post on 11-Jun-2015

1.492 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Laporan Pemrograman Komputer 5

Laporan Pemrograman Komputer

“Looping”

Disusun Oleh :

Antonio Grafiko

F1A 007 002

Dosen Pembimbing

Bashori

Matematika

Fakultas Matematika dan Ilmu Pengetahuan Alam

Universitas Bengkulu

2009

Page 2: Laporan Pemrograman Komputer 5

BAB I

Pendahuluan

A. Tujuan

1) Untuk mengetahui penerapan Repeat(looping) dalam Pascal.

2) Untuk mengetahui fungsi for dalam membuat segitiga Pascal dan

Piramida Pascal.

B. Landasan Teori

Perulangan dalam Pascal berguna untuk mengerjakan suatu statementatau blok

statement secara berulang-ulang sebanyak yang Anda inginkan.Perulangan banyak

sekali dipakai dalam pembuatan program dengan Pascal. Pascal menyediakan tiga

buah struktur kontrol perulangan : while .. do, repeat ..until, dan for.

Pernyataan perulangan yang paling sering digunakan adalah for. Pernyataan

FOR biasa digunakan untuk mengulang statemen atau satu blok statemen berulang

kali yang jumlahnya telah diketahui sebelumnya. Sebagai contoh, FOR dapat

digunakan untuk menampilkan tulisan ‘Turbo Pascal’ 10 kali atau pun dalam jumlah

yang lebih banyak lagi. Perulangan dapat dalam bentuk positif, perulangan negatif

dan perulangan tersarang

For

1. For To Do

Bentuk umum :

FOR perubahan := awal TO akhir DO [ Blok statemen ]

Keterangan :

Perubahan : adalah nama perubah kendali

Awal : adalah awal perubah kendali

Akhir : adalah akhir perubah kendali

Blok Statemen adalah statemen yang diproses berulang yangsering disebut juga

kalang (loop)

Variabel, nilai_awal dan nilai_akhir harus bertipe sama atau kompatibel Tipe

yang digunakan pada ketiga komponen tersebut harus berupa ordinal nilai_awal harus

Page 3: Laporan Pemrograman Komputer 5

lebih kecil atau sama dengan nilai_akhir. Kalau nilai_akhir lebih kecil daripada

nilai_awal, bagian pernyataan tidak dijalankan sama sekali.

2. For Downto Do

Kalau FOR-TO digunakan untuk mencacah naik, FOR-DOWNTO adalah

kebalikannya. Pada FOR-DOWNTO, nilai awal justru harus lebih besar (atau sama

dengan) nilai akhir. Format selengkapnya:

FOR perubahan := awal DOWNTO akhir DO [ Blok statemen ]

3. For Bersarang

Anda bisa juga menuliskan pernyataan FOR di daam pernyataan For.

Konstruksi semacam ini sering disebut dengan pernyataan FOR bersarang.

While . . . Do

Statemen WHILE …. DO digunakan untuk melakukan proses perulangan suatu

statemen atau blok statemen terus menerus selama kondisi ungkapanlogika pada

WHILE masih bernilai logika benar. Bentuk umum

WHILE kondisi DO [ Blok statemen ]

1. Pencacahan Meningkat

Contoh program berikut menunjukan pemakaian WHILE untuk menggantikan

perintah:

FOR Pencacah := 1 TO 10 DO

WriteLn(Pencacah);

2. Pencacahan Menurun

WHILE juga dapat dipakai untuk menggantikan FOR-DOWNTO, yaitu sebagai

Pencacah := 10;

WHILE Pencacah > 0 DO

BEGIN

WriteLn (Pencacah);

Pencacah := Pencacah -1;

END;

FOR Pencacah := 10 DOWNTO 1 DO

WriteLn(Pencacah);

Page 4: Laporan Pemrograman Komputer 5

Repeat . . . Until

Struktur REPEAT … UNTIL digunakan untuk mengulang (REPEAT)

statemen-statemen atau blok statemen sampai (UNTIL) kondisi yang diseleksi

diUNTIL tidak dipenuhi. Bentuk Umum :

REPEAT [Blok statemen] UNTIL kondisi

Keterangan :

Statmen : adalah yang diproses berulang

Kondisi : adalah supaya proses berulang dihentikan

Tampak bahwa pengulangan justru dilakukan selama kondisi bernilai salah

(False). Jadi merupakan kebalikan dari WHILE. Perbedaan yang lain terhadap

WHILE, pemeriksaan terhadap kondisi pada REPEAT dilakukan belakangan, setelah

bagian pernyataan yang terletak antara REPEAT dan UNTIL dieksekusi. Hal ini yang

menyebabkan perulangan ini biasanya dipakai jika sekurang-kurangnya baris perintah

di dalam blok statement dikerjakan sebanyak satu kali.

Perulangan REPEAT .... UNTIL diawali dengan kata baku REPEAT dan

diakhiri dengan kata baku until serta pengecekan kondisi. Perulangan REPEAT

dengan banyak statement tidak perlu menggunakan kata baku Begin dan End pada

akhir blok karena secara default perulangan REPEAT ... UNTIL adalah untuk banyak

statement yang diawali dengan Repeat dan diakhiri dengan until.

Page 5: Laporan Pemrograman Komputer 5

BAB II

ISI

A. Listing Program

Penggunaan Looping

program Pengunaan_Looping;

uses wincrt;

const Pi=22/7;

var

x,g : char;

a,b,c,r,t : real;

L1,L2,L3,V: real;

begin

clrscr;

repeat

writeln('*** M E N U P I L I H A N ***');

writeln(' 1. Tabung');

writeln(' 2. Limas ');

writeln(' 3. Balok');

writeln(' 4. Prisma');

writeln(' 5. Bola');

writeln(' 6. Kerucut');

write('Masukkan Pilihan Anda : ');

readln(x);

clrscr;

if x='1' then

Begin

writeln('***TaBunG***');

writeln;

write('Masukkan diameter tabung: ');

Page 6: Laporan Pemrograman Komputer 5

readln(a);

write('Masukkan tinggi tabung : ');

readln(b);

writeln;

writeln('Maka :');

L1:=Pi*a*b;

writeln('Luas selimut tabung adalah: ',L1:0:2);

L2:=Pi*sqr(a/2);

writeln('Luas alas tabung adalah : ',L2:0:2);

V:=L2*b;

writeln('Volume tabung adalah : ',V:0:2);

L3:=L1+(2*L2);

writeln('Luas tabung adalah : ',L3:0:2);

writeln;

write('Anda Ingin Melanjutkan Perhitungan (Y/T): ');

readln(g);

if (g='Y') or (g='y') then

clrscr;

writeln(^G);

end

else if x='2' then

Begin

writeln('***LiMaS***');

writeln;

write('Masukkan panjang alas : ');

readln(a);

write('Masukkan lebar alas : ');

readln(b);

write('Masukkan tinggi Limas : ');

readln(c);

Page 7: Laporan Pemrograman Komputer 5

Writeln('Maka : ');

L1:=a*b;

Writeln('Luas Alas Limas adalah : ',L1:0:2);

V:=(a*b*c)/3;

Writeln('Volume Limas adalah : ',V:0:2);

writeln;

write('Anda Ingin Melanjutkan Perhitungan (Y/T): ');

readln(g);

if (g='Y') or (g='y') then

clrscr;

writeln(^G);

end

else if x='3' then

Begin

writeln('***Balok***');

writeln;

write('Masukkan panjang balok: ');

readln(a);

write('Masukkan tinggi balok : ');

readln(b);

write('Masukkan lebar balok : ');

readln(c);

writeln;

writeln('Maka :');

L1:=(2*a*b)+(2*b*c)+(2*a*c);

writeln('Luas balok adalah : ',L1:0:2);

V:=a*b*c;

writeln('Volume balok adalah: ',V:0:2);

L2:=4*a+4*b+4*c;

writeln('Panjang semua rusuk adalah:',L2:0:2);

Page 8: Laporan Pemrograman Komputer 5

writeln;

write('Anda Ingin Melanjutkan Perhitungan (Y/T): ');

readln(g);

if (g='Y') or (g='y') then

clrscr;

writeln(^G);

end

else if x='4' then

Begin

writeln('***Prisma***');

writeln;

write('Masukkan alas segitiga : ');

readln(a);

write('Masukkan tinggi segitiga : ');

readln(b);

write('Masukkan tinggi prisma : ');

readln(c);

writeln;

Writeln('Maka : ');

L1:=1/2*a*b;

Writeln('Luas Alas Prisma adalah : ',L1:0:2);

V:=(((a*b)/2)*c)/2;

Writeln('Volume Prisma adalah : ',V:0:2);

writeln;

write('Anda Ingin Melanjutkan Perhitungan (Y/T): ');

readln(g);

if (g='Y') or (g='y') then

clrscr;

writeln(^G);

end

Page 9: Laporan Pemrograman Komputer 5

else if x='5' then

Begin

writeln('***Bola***');

writeln;

write('Masukkan diameter bola : ');

readln(a);

Writeln('Maka : ');

b:=(1/2)*a;

V:=(4/3)*pi*(b*b*b);

Writeln('Volume Bola adalah : ',V:0:2);

L1:=4*pi*(a*a);

writeln('Luas Permukaan Bola adalah : ',L1:0:2);

writeln;

write('Anda Ingin Melanjutkan Perhitungan (Y/T): ');

readln(g);

if (g='Y') or (g='y') then

clrscr;

writeln(^G);

end

else if x='6' then

begin

writeln('***Kerucut***');

write('Masukkan nilai jari-jari : ');

readln(r);

write('tentukan tinggi tabung : ');

readln(t);

L1:=(Pi*sqr(r))+(Pi*r*t);

writeln('luas kerucut : ',L1:0:2);

v:=Pi*0.33*sqr(r)*t;

writeln('maka volume kerucut : ',V:0:2);

Page 10: Laporan Pemrograman Komputer 5

write('Anda Ingin Melanjutkan Perhitungan (Y/T): ');

readln(g);

if (g='Y') or (g='y') then

clrscr;

writeln(^G);

end

else

Begin

writeln('Pilihan Anda berikan salah');

writeln;

write('Anda Ingin Melanjutkan Perhitungan (Y/T): ');

readln(g);

if (g='Y') or (g='y') then

clrscr;

writeln(^G);

end;

until (g='T') or (g='t');

CLRSCR;

WRITELN;

writeln('***Perhitungan bangun Ruang Selesai***');

writeln;

write('Terimakasih');

end.

Segitiga Pascal

program segitiga_pascal;

uses wincrt;

var

n,i,j:word; isi:array[0..20,0..21] of word;

begin

Page 11: Laporan Pemrograman Komputer 5

write('Masukkan berapa tingkat segitiga pascal:');

readln(n);

isi[0,1]:=1;

writeln('1');

for i:=1 to n do

begin

for j:=1 to i+1 do

begin

isi[i,j]:=isi[i-1,j]+isi[i-1,j-1];

write(isi[i,j],' ');

end;

writeln;

end;

end.

Piramida Pascal

program piramida;

uses

wincrt;

var

n, i, j, k : integer;

begin

clrscr;

writeln('PROGRAM MENCETAK PIRAMIDA BILANGAN');

writeln('----------------------------------');

writeln;

write('Masukkan Jumlah Baris: '); readln(n);

for i:=1 to n do

begin

for j:=1 to n-i do

write(' ');

Page 12: Laporan Pemrograman Komputer 5

for k:=i downto 1 do

write(k);

for k:=2 to i do

write(k);

writeln;

end;

readln;

end.

Page 13: Laporan Pemrograman Komputer 5

B. Output

Penggunaan Looping

Menu

Pilihan Tabung

Pilihan Limas

Page 14: Laporan Pemrograman Komputer 5

Pilihan Balok

Pilihan Prisma

Page 15: Laporan Pemrograman Komputer 5

Pilihan Bola

Pilihan Kerucut

Page 16: Laporan Pemrograman Komputer 5

Pilihan Ketika memasukkan pilihan salah

Perhitungan selesai dengan memilih T

Page 17: Laporan Pemrograman Komputer 5

Segitiga Pascal

Piramida Pascal

Page 18: Laporan Pemrograman Komputer 5

C. Flowchart

Mulai

Page 19: Laporan Pemrograman Komputer 5

Penggunaan Looping

T

Y

Tidak

Ya

Y

Ya T

Tidak Y

Ya T

Y

Tidak

Ya T Y

Tidak

Ya T

Tidak Y

Ya T

Y

Tidak

Ya

T Y

Segitiga Pascal

x,g,a,b,c,r,t,Pi,L1,L2,L3,V

1 Selesai

3

Selesai

Selesai

5

Selesai

Selesai

6

Balok

Tabung

Prisma

Limas

Kerucut

Selesai

Bola

Case x Of dari 1-6,Setelah dipilih maka akan berjalan sesuai rumus yang telah dibuat

Selesai

2

4

Salah input

1-7

Y/T

Y/T

Y/T

Y/T

Y/T

Y/T

Y/T

Page 20: Laporan Pemrograman Komputer 5

Piramida Pascal

Mulai

n,I,j,isi

for i:=1 to n do

for j:=1 to i+1 do

isi[i,j]:=isi[i-1,j]+isi[i-1,j-1]

Nilai segitiga Pascal

Selesai

Page 21: Laporan Pemrograman Komputer 5

D. Pembahasan

n,I,j,isi

for i:=1 to n do

j:=1 to n-i do

k:=i downto 1 do

k:=2 to i do

Nilai Piramida

Selesai

Mulai

Page 22: Laporan Pemrograman Komputer 5

Di dalam penggunaan looping dalam hal ini kita gunakan looping berupa repeat

di dalam pengulangan terdapat beberapa macam di antaranya for dan juga while.

Penggunaan looping pada algoritma di atas bertujuan agar terdapat suatu proses

pengulangan dalam hal melakukan atau menjalani sintax yang telah dibuat,proses ini

tak selamanya berjalan terus menerus karena adanya berupa until yaitu pasangan yang

digunakan pada looping repeat.

Sedangkan dalam membuat suatu sistem penglogikaan terhadap pembuatan

segitiga pascal dan piramida diperlukan suatu proses looping kembali,akan tetapi yang

digunakan adalah looping tipenya yang berbeda yaitu menggunakan for.

For ini digunakan untuk menyusun data dari suatu data baik berupa angka atau

karakter lainnya seperti *,di dalam pascal dan piramida kita bias gunakan suatu

pasangan dalam menggunakan for yaitu down to atau to.

Di dalam membuat algoritma pascal baik segitiga pascal atau piramida pascal

kita masih menggunakan suatu hal lain berupa penggunaan if dimana if ini berfungsi

sebagai pemisalan sebagai contoh dalam segitiga pascal terdapat spasi maka if ini

digunakan agar terciptanya spasi tersebut.

BAB III

Page 23: Laporan Pemrograman Komputer 5

Penutup

A. Kesimpulan

Dalam looping terdapat tiga macam yang bias digunakan antara lain for,repeat .

. . until dan juga while . . . do.

Semua pengulangan atau looping memiliki kesamaan yaitu melakukan proses

berulang-ulang akan tetapi bila di lihat pemakaiannya penggunaan repeat . . . until dan

while . . . do baik digunakan pada algoritma yang menggunakan case . . . of dan if . . .

then.

Proses pengulangan yang dilakukan oleh repeat . . . until dan while . . . do sama

keduanya yaitu mengembalikan proses atau melakukan pengulangan terhadap

algoritma yang dibuat.

B. Saran

Laporan ini masih belum sempurna bila ada saran dan kritik akan laporan ini

saya akan menerimanya dengan lapang dada.

Daftar Pustaka

Page 24: Laporan Pemrograman Komputer 5

Kadir,abdul,1987,Pemrograman Dasar Turbo Pascal,Andi Offset,Yogyakarta.