Anda di halaman 1dari 10

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
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 :
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
:
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 :
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');
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 :


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;
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 :


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;
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.

Anda mungkin juga menyukai