laporan praktikum struktur data dan algoritma

10
L STRUKT A H FAKULTAS MATEMA UN LAPORAN PRAKTIKUM TUR DATA DAN ALGORITMA Disusun Oleh : Antonio Grafiko (F1A007002) Hengki Muradi (F1A007070) Mashurdi (F1A007074 ) Hardion Siregar MATEMATIKA ATIKA DAN ILMU PENGETAHU NIVERSITAS BENGKULU 2009 UAN ALAM

Upload: antonio-grafiko

Post on 15-Jun-2015

922 views

Category:

Documents


8 download

DESCRIPTION

LAPORAN PRAKTIKUM Struktur Data Dan Algoritma

TRANSCRIPT

Page 1: LAPORAN PRAKTIKUM Struktur Data Dan Algoritma

LAPORAN PRAKTIKUM

STRUKTUR DATA DAN ALGORITMA

Antonio Grafiko (F1A007002)

Hengki Muradi (F1A007070)

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS BENGKULU

LAPORAN PRAKTIKUM

STRUKTUR DATA DAN ALGORITMA

Disusun Oleh :

Antonio Grafiko (F1A007002)

Hengki Muradi (F1A007070)

Mashurdi (F1A007074 )

Hardion Siregar

MATEMATIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS BENGKULU

2009

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

Page 2: LAPORAN PRAKTIKUM Struktur Data Dan Algoritma

A. LANDASAN TEORI

Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun

secara sistematis dan logis”.Kata Logis merupakan kata kunci dalam Algoritma. Langkah-

langkah dalam Algoritma harus logis dan harus dapat ditentukan bernilai salah atau benar.

Pada pembuatan suatu program diperlukan perencaaan tentang urutan proses yang secara

logis harus benar. Prencanaan dalam suatu program pada umumnya meliputi hubungan antara

input, proses dan output. Gambaran yang menyatakan hal tersebut dinamakan flow chart

(diagram alir). Untuk membuat suatu flow chart biasanya dipergunakan simbol-simbol yang

sesuai kondisi yang terjadi. Simbol-simbol atau tanda yang dipakai dalam suatu flow chart untuk

pembuatan program komputer telah ditetapkan sebagai berikut :

Page 3: LAPORAN PRAKTIKUM Struktur Data Dan Algoritma

Dengan adanya simbol atau tanda ini dimaksudkan untuk memudahkan dalam memahami

alur atau jalannya proses yang ada pada suatu program.

Setiap bahasa pemrograman tentu memiliki cirri khas tersendiri, baik itu dari symbol-

simbol yang digunakan maupun aturan-aturan yang berkenaan dengan perintah kepada program.

Oleh karena itu programmer harus memahami aturan yang ada pada setiap bahasa pemrograman.

Adapun contoh flowchart dari sebuah program pada bahasa pascal adalah sebagai berikut

:

Page 4: LAPORAN PRAKTIKUM Struktur Data Dan Algoritma

B. CONTOH PROGRAM DAN ALGORITMA

1. Program deret

Dalam menentukan deret dari suatu barisan dapat digunakan berbagai macam

bahasa pemrograman, salah satunya adalah program pascal. Adapun listing programnya

dapat dilihat seperti berikut :

Program Fibonacci;

Uses

wincrt; Var

i,n,f,f1,f2 : integer;

begin

clrscr;

writeln('Ingin mencetak bilangan Fibonacci');

write('sampai suku ke-'); readln(n);

writeln;

writeln('',1);

writeln('',1);

f1 :=1; f2:=1;

for i:=3 to n do

begin

f:=f1+f2;

writeln('',F:3);

f2:=f1; f1:=f;

end;

readln;

end.

Adapun hasil dari program dapat dilihat sebagai berikut :

Page 5: LAPORAN PRAKTIKUM Struktur Data Dan Algoritma

2. Program konversi

Untuk mengkonversi beberapa besaran dapat menggunakan bahasa pascal. Listing

programmya dapat dilihat sebagai berikut :

Program konversi;

uses wincrt;

var

menit, jam, kaki, meter, fahrenheit, celcius : real;

pilihan :char;

begin

clrscr;

writeln('Pilihan konversi:');

writeln('1) Menit ke jam');

writeln('2) Kaki ke meter');

Page 6: LAPORAN PRAKTIKUM Struktur Data Dan Algoritma

writeln('3) Derajat Fahrenheit ke Celcius');

write('pilihan ? '); readln(pilihan);

case pilihan of

'1' : begin

write('menit= ');readln(menit);

jam:=menit/60;

writeln('nilai ini sama dengan ',jam:4:1,'jam'); readln;

end;

'2' : begin

write('kaki= '); readln(kaki);

meter:=0.3048*kaki;

writeln('nilai ini sama dengan ',meter:4:1,'meter');

readln;

end;

'3' : begin

write('Derajat Fahrenheit = ');

readln(fahrenheit);

celcius:=5/9*(fahrenheit-32);

writeln('nilai ini sama dengan ',Celcius:4:1,' Celcius');

readln;

end;

else writeln('Tidak melakukan konversi');

end;

end.

Adapun hasil program adalah sebagai berikut :

Page 7: LAPORAN PRAKTIKUM Struktur Data Dan Algoritma

3. Program mengurutkan data.

Berikut adalah contoh listing program untuk mengurutkan data dari terkecil ke

besar:

Program MengurutkanDataString;

Uses

wincrt;

Type MaksString = string[30];

Var

i,j,n : integer;

temp : MaksString;

data : array[1..20] of MaksString;

begin

clrscr;

Page 8: LAPORAN PRAKTIKUM Struktur Data Dan Algoritma

write('Jumlah Data : '); readln(n);

writeln; writeln('Data Semula : ');

writeln;

for i:=1 to n do

begin

write(i:2,'. ');

readln(data[i]);

end;

for i:=1 to n do

for j:=1 to n do

if data[i] < data[j] then

begin

temp:=data[i];

data[i]:=data[j];

data[j]:=temp;

end;

writeln; writeln('Data setelah diurutkan : ');

writeln;

for i:=1 to n do

writeln(i:2,'. ',data[i]);

readln;

end.

Adapun hasil yang dimaksud adalah sebagai berikut :

Page 9: LAPORAN PRAKTIKUM Struktur Data Dan Algoritma

4. Program jumlah deret

Program Jumlah_Deret;

Uses

wincrt;

Var

n, jumlah, pencacah : integer;

begin

clrscr;

Writeln('Menghitung jumlah 1 + 2 + 3 + ... + n');

write('n = ? '); readln(n);

pencacah:=1;

jumlah:=0;

while pencacah <= n do

begin

jumlah:=jumlah+pencacah;

pencacah:=pencacah + 1;

write;

Page 10: LAPORAN PRAKTIKUM Struktur Data Dan Algoritma

write(' ',jumlah:5);

end;

end.

Adapun hasil dari program diatas adalah :

C. ANALISA

Dari beberapa contoh program diatas yang menggunakan bahasa pascal dapat dilihat

bahwa perlu sekali pemahaman tentang bagian-bagian dari sebuah program. Umumnya program

terdiri dari 3 bagian yakni : kepala program, bagian deklarasi, dan bagian pernyataan. Untuk

kepala program umumnya sama untuk semua bahasa pemrograman, sedangkan bagian deklarasi

dan bagian pernyataan perlu sekali dicermati. Dari contoh-contoh diatas bagian pernyataan itu

ditandai dengan notasi “ Begin”. Dari tanda “begin” sampai selanjutnya merupakan bagian dari

algoritma. Oleh karena itu, jika listing program diatas mau dimanfaatkan untuk bahasa

pemrograman lain maka tugasnya adalah tinggal mengkonversi notasi-notasi yang mungkin

berbeda.