Anda di halaman 1dari 23

TRANSPARANSI KULIAH TANGGALREVISI : 09 September 2006

LA102 TANGGAL BERLAKU : 09 September 2006


LOGIKA DAN ALGORITMA KODE DOKUMEN : DM-RHJ-005-005-
008

LOGIKA &
ALGORTIMA

MUCHAMAD GOZALI, S.Kom

Edisi: 01 Rev: 0 Copyright Perguruan Tinggi Raharja 08/ 1 - 23 1


Get The Better Future By Computer Science
TRANSPARANSI KULIAH TANGGALREVISI : 09 September 2006
LA102 TANGGAL BERLAKU : 09 September 2006
LOGIKA DAN ALGORITMA KODE DOKUMEN : DM-RHJ-005-005-
008

PENGENALAN
BAHASA PEMROGRAMAN

KONSEP DASAR :
Dasar pemahaman suatu pemrograman
adalah analisa Logika Algoritma.

Setiap algortima yang kita susun tidak


tergantung pada bahasa pemrograman
tertentu.

Setiap bahasa pemrograman mempunyai


karakteristik yang berbeda baik struktur,
syntax dan penulisan kode program.

Edisi: 01 Rev: 0 Copyright Perguruan Tinggi Raharja 08/ 2 - 23 2


Get The Better Future By Computer Science
TRANSPARANSI KULIAH TANGGALREVISI : 09 September 2006
LA102 TANGGAL BERLAKU : 09 September 2006
LOGIKA DAN ALGORITMA KODE DOKUMEN : DM-RHJ-005-005-
008

TAHAPAN PEMBUATAN PROGRAM

Mulai

Menulis
Program
Compile
Program
Ada Ya
Kesalahanan Memperbaiki
Program
Tida

Run Program

Ya
Ada
Kesalahanan Memperbaiki
Program
Edisi: 01 Rev: 0 Copyright Perguruan Tinggi Raharja 08/ 3 - 23 3
Get The Better Future By Computer Science
TRANSPARANSI KULIAH TANGGALREVISI : 09 September 2006
LA102 TANGGAL BERLAKU : 09 September 2006
LOGIKA DAN ALGORITMA KODE DOKUMEN : DM-RHJ-005-005-
008

Tida
Selesai

STRUKTUR
BAHASA PEMROGRAMAN

Bagian Pendeklarasian
Bagian deklarasi merupakan bagian
program untuk mendefinisikan tipe data
suatu variable, konstanta, fungsi dan
prosedur yang akan digunakan pada
program.

Bagian Statement

Edisi: 01 Rev: 0 Copyright Perguruan Tinggi Raharja 08/ 4 - 23 4


Get The Better Future By Computer Science
TRANSPARANSI KULIAH TANGGALREVISI : 09 September 2006
LA102 TANGGAL BERLAKU : 09 September 2006
LOGIKA DAN ALGORITMA KODE DOKUMEN : DM-RHJ-005-005-
008

Bagian statement merupakan bagian program


yang berisi perintah yang akan dieksekusi/
dijalankan.

Program Harga_Brg;
{
Menghitung Harga Barang dan diskon
Harga Barang = Jumlah Barang x Harga Satuan
Diskon = 10% dari Harga Barang
}
uses Crt;

{ Deklarasi }
var Hrg_satuan, Jum_brg, Hrg_brg, Diskon : real;

{ Algoritma / bagian statement}


begin
Clrscr;
Write(Jumlah Barang : ');
Contoh :
Readln(Jum_brg);

Write(Harga Satuan : ');


Readln(Hrg_satuan);

Hrg_brg := Jum_brg * Hrg_satuan;


Diskon := 0.1 * Hrg_brg;
Hrg_brg := Hrg_brg Diskon;

WriteLn('Diskon : ', Diskon);


Edisi: 01 WriteLn('Harga Barang : ', Hrg_brg);
Rev: 0 Copyright Perguruan Tinggi Raharja 08/ 5 - 23 5
Readln;
Get The Better Future By Computer Science

end.
TRANSPARANSI KULIAH TANGGALREVISI : 09 September 2006
LA102 TANGGAL BERLAKU : 09 September 2006
LOGIKA DAN ALGORITMA KODE DOKUMEN : DM-RHJ-005-005-
008

Beberapa hal yang harus diperhatikan di


dalam menulis program adalah :
Struktur Program

Edisi: 01 Rev: 0 Copyright Perguruan Tinggi Raharja 08/ 6 - 23 6


Get The Better Future By Computer Science
TRANSPARANSI KULIAH TANGGALREVISI : 09 September 2006
LA102 TANGGAL BERLAKU : 09 September 2006
LOGIKA DAN ALGORITMA KODE DOKUMEN : DM-RHJ-005-005-
008

Untuk program besar, harus dipecah


kedalam sub program
Sintak Penulisannya
Penulisan instruksi harus sesuai dengan
aturan bahasa yang dipakai
Algoritma dari program
Harus dibuat algoritmanya lebih
dahulu, lalu diuji.

Contoh sintak :
Write(teks'); Write(Harga Celsius : '); (BENAR)
Write(Harga Celsius : ); (SALAH)

Edisi: 01 Rev: 0 Copyright Perguruan Tinggi Raharja 08/ 7 - 23 7


Get The Better Future By Computer Science
TRANSPARANSI KULIAH TANGGALREVISI : 09 September 2006
LA102 TANGGAL BERLAKU : 09 September 2006
LOGIKA DAN ALGORITMA KODE DOKUMEN : DM-RHJ-005-005-
008

ELEMEN DASAR PEMROGRAMAN

Pengenal (variabel) dan Tipe Data


Konstanta
Operator
Statement Input dan Output (I/O)

Contoh :

Program Konversi_Suhu;
{ Menghitung Fahrenheit dan Reamur }
uses Crt;
{ Deklarasi }
var Celsius, Fahrenheit, Reamur : real;
{ Algoritma }
begin
Clrscr;
Write(Harga Celsius : ');
Readln(Celsius);
Fahrenheit = 5/9 * (Celsius +32);
Reamur = 4/5 * (Celsius +32);
WriteLn('Harga Celsius : ', Celsius);
WriteLn('Harga Fahrenheit : ', Fahrenheit);
WriteLn('Harga Reamur : ', Reamur);
Readln;
end.
Edisi: 01 Rev: 0 Copyright Perguruan Tinggi Raharja 08/ 8 - 23 8
Get The Better Future By Computer Science
TRANSPARANSI KULIAH TANGGALREVISI : 09 September 2006
LA102 TANGGAL BERLAKU : 09 September 2006
LOGIKA DAN ALGORITMA KODE DOKUMEN : DM-RHJ-005-005-
008

Keterangan :
Celsius, Fahrenheit, Reamur : pengenal/variable
* , + dan / : operator
write, writeln dan readln : statement I/O
PENGENAL dan TIPE DATA

Pengenal (identifier) merupakan nama yang biasa


digunakan untuk :
- nama program,
- variable,
- konstanta,
- fungsi, atau
- obyek lain yang didefinisikan oleh
pemrogram.

Aturan yang berlaku bagi suatu pengenal secara


umum adalah:
1. Pengenal harus diawali dengan huruf (A .. Z, a .. z)

2. Dapat berupa huruf, angka (0 .. 9) dan karakter


garis bawah ( _ )

3. Tidak boleh menggunakan Spasi

4. Panjang pengenal boleh terdiri lebih dari 32


karakter, akan tetapi hanya 32 karakter pertama
yang dianggap berarti.
Edisi: 01 Rev: 0 Copyright Perguruan Tinggi Raharja 08/ 9 - 23 9
Get The Better Future By Computer Science
TRANSPARANSI KULIAH TANGGALREVISI : 09 September 2006
LA102 TANGGAL BERLAKU : 09 September 2006
LOGIKA DAN ALGORITMA KODE DOKUMEN : DM-RHJ-005-005-
008

5. Case sensitive atau non Case sensitive


tergantung bhs pemrogramannya. Misal C dan C+
+ adalah case sentitive

Contoh :
Benar Salah
Jumlah Jumlah Pajak
X, y, z 0X, +z
Rata_rata Rata-rata
Jumlah1, jumlah2 $Jumlah

PENDEKLARASIAN VARIABEL :

Cara Pendeklarasian variabel sangat tergantung


dari struktur program suatu bahasa
pemrograman.

Misal :
C/C++: Pascal: Basic:
Edisi: 01 Rev: 0 Copyright Perguruan Tinggi Raharja 08/ 10 - 23 10
Get The Better Future By Computer Science
TRANSPARANSI KULIAH TANGGALREVISI : 09 September 2006
LA102 TANGGAL BERLAKU : 09 September 2006
LOGIKA DAN ALGORITMA KODE DOKUMEN : DM-RHJ-005-005-
008

Var
Total : integer;
Kode : DIM A As
String[5]; Integer
int
DIM X As Single
jumlah;
DIM Y As Long
float
Atau
luas#

Konstanta:
Konstanta seperti halnya variabel, perbedaan-nya adalah
Contoh:
variabel nilainya bisa berubah-rubah saat program
dijalankan sesuai dengan instruksi program.
Program Lingkaran;
Sedangkan konstanta nilainya tetap saat program
dijalankan.
{Kamus atau Deklarasi }
var Jari, Keliling, Luas : real;
Misalnya :
constphi=3.14;
Const phi = 3.14;
Const nama=STMIK/AMIK RAHARJA;
{ Algoritma }
begin
write(Harga Jari : ');
readln(Jari);
keliling = 2 * phi * jari
Edisi: 01 luas = phi *Copyright
Rev: 0 jari * jari
Perguruan Tinggi Raharja 08/ 11 - 23 11
writeln(Harga
Get The Better Keliling
Future By Computer Science : , Keliling);
writeln(Harga Luas : ,Luas : ');
end.
TRANSPARANSI KULIAH TANGGALREVISI : 09 September 2006
LA102 TANGGAL BERLAKU : 09 September 2006
LOGIKA DAN ALGORITMA KODE DOKUMEN : DM-RHJ-005-005-
008

TIPE DATA
Pengertian Tipe data menyiratkan suatu nilai
yang dapat dinyatakan dalam bentuk konstanta
atau variabel.

Data berdasarkan jenisnya dapat dibagi menjadi


beberapa kelompok :
1. Tipe data dasar
2. Tipe data Bentukan
3. Tipe data Terstruktur
Edisi: 01 Rev: 0 Copyright Perguruan Tinggi Raharja 08/ 12 - 23 12
Get The Better Future By Computer Science
TRANSPARANSI KULIAH TANGGALREVISI : 09 September 2006
LA102 TANGGAL BERLAKU : 09 September 2006
LOGIKA DAN ALGORITMA KODE DOKUMEN : DM-RHJ-005-005-
008

1. Tipe data dasar :


- Bilangan bulat (integer)
- Bilangan pecahan (real)
- Karakter (character), dan
- Boolean

Bilangan bulat (integer)


Bilangan yang tidak mengandung pecahan desimal,
misalnya : 0, 1, 2, 3, 4, 21, 36, 875, 1250

Pada compiler Pascal, tipe integer dapat


direpresentasikan ke dalam 5 macam tipe, yaitu:

Edisi: 01 Rev: 0 Copyright Perguruan Tinggi Raharja 08/ 13 - 23 13


Get The Better Future By Computer Science
TRANSPARANSI KULIAH TANGGALREVISI : 09 September 2006
LA102 TANGGAL BERLAKU : 09 September 2006
LOGIKA DAN ALGORITMA KODE DOKUMEN : DM-RHJ-005-005-
008

Tipe Rentang nilai Format


byte 0 .. 255 Unsigned 1 byte
shortint -128 .. 127 Signed 1 byte
word 0 .. 65535 Unsigned 2 byte
integer -32768 .. 32767 Signed 2 byte
longint -2147483648 .. Signed 4 byte
2147483647

Contoh pendeklarasian tipe integer pada program :


var
X : byte;
Y : shortint;
Z : word;
A : integer;
B : longint;

Sebagai konsekuensi variable X tidak dapat


dioperasikan untuk nilai-nilai di atas 255 atau
dibawah 0.

Bilangan pecahan (real)


Bilangan yang mengandung pecahan desimal,
misalnya : 0.53 1.8 23.926 875.3916
Edisi: 01 Rev: 0 Copyright Perguruan Tinggi Raharja 08/ 14 - 23 14
Get The Better Future By Computer Science
TRANSPARANSI KULIAH TANGGALREVISI : 09 September 2006
LA102 TANGGAL BERLAKU : 09 September 2006
LOGIKA DAN ALGORITMA KODE DOKUMEN : DM-RHJ-005-005-
008

2.60240E-6

Tanda pecahan desimal adalah . (titik)


Bilangan pecahan juga dapat ditulis dengan
notasi E seperti 2.60240E-6 yang artinya
2.60240 x 10-6

Pada compiler Pascal, tipe real dapat


direpresentasikan ke dalam 4 macam tipe, yaitu:

Tipe Rentang nilai Format


real 2.9 x 10-39 .. 1.7 x 1038 6 byte
single 1.5 x 10-45 .. 3.4 x 1038 4 byte
double 5.0 x 10-334 .. 1.7 x 10308 8 byte
extende 3.4 x 10-4932 .. 1.1 x 104932 10 byte
d

Keterangan :
Single : presisi-tunggal
double : presisi-ganda

Contoh pendeklarasian tipe real pada program :


var
X : real; Jumlah : single;
Z : double; Y : extended;

Edisi: 01 Rev: 0 Copyright Perguruan Tinggi Raharja 08/ 15 - 23 15


Get The Better Future By Computer Science
TRANSPARANSI KULIAH TANGGALREVISI : 09 September 2006
LA102 TANGGAL BERLAKU : 09 September 2006
LOGIKA DAN ALGORITMA KODE DOKUMEN : DM-RHJ-005-005-
008

Karakter (character)
Yang termasuk ke dalam karakter adalah huruf-
huruf alfabet, tanda baca, angka 0, 1, 9 dan
karakter-karakter khusus seperti &, %, dsb.
Tipe karakter membutuhkan memori 1 byte.

Contoh pendeklarasian tipe karakter pada program:


var
grade : char; golongan : char;

Data bertipe karakter, harus diapit oleh tanda


petik satu.

Contoh pengisian data bertipe karakter :


grade := A;
golongan := 1;

Edisi: 01 Rev: 0 Copyright Perguruan Tinggi Raharja 08/ 16 - 23 16


Get The Better Future By Computer Science
TRANSPARANSI KULIAH TANGGALREVISI : 09 September 2006
LA102 TANGGAL BERLAKU : 09 September 2006
LOGIKA DAN ALGORITMA KODE DOKUMEN : DM-RHJ-005-005-
008

Boolean
Boolean adalah tipe bilangan logik, hanya
mengenal dua buah nilai : benar (true), atau
salah (false). Tipe boolean memakai memori 1
byte.

Contoh pendeklarasian tipe boolean pada


program:
var
ketemu : boolean;

Contoh pengisian data bertipe boolean :


ketemu := true;

Edisi: 01 Rev: 0 Copyright Perguruan Tinggi Raharja 08/ 17 - 23 17


Get The Better Future By Computer Science
TRANSPARANSI KULIAH TANGGALREVISI : 09 September 2006
LA102 TANGGAL BERLAKU : 09 September 2006
LOGIKA DAN ALGORITMA KODE DOKUMEN : DM-RHJ-005-005-
008

SOAL LATIHAN :
1. Tentukan benar (b) atau salah (s) penamaan
pengenal atau variabel dibawah ini :
6titik A1
titik6 nilai_ujian
PT-1 PT1
hari! #Jumlah

2. Untuk menghasilkan daftar nilai


mahasiswa yang berisi data-data :
- Nim
- Nilai
- Grade nilai
- Indeks Prestasi
a. Tipe data apa yang cocok untuk data diatas.
Edisi: 01 Rev: 0 Copyright Perguruan Tinggi Raharja 08/ 18 - 23 18
Get The Better Future By Computer Science
TRANSPARANSI KULIAH TANGGALREVISI : 09 September 2006
LA102 TANGGAL BERLAKU : 09 September 2006
LOGIKA DAN ALGORITMA KODE DOKUMEN : DM-RHJ-005-005-
008

b. Bagaimana penulisan deklarasinya ?

2. Tipe bentukan :
Tipe bentukan adalah tipe yang didefinisikan
sendiri oleh pemrogram.

Tipe bentukan disusun oleh satu atau lebih tipe


dasar.

Ada 3 macam Tipe bentukan :


1.String
2.Tipe dasar yang diberi nama dengan nama
tipe baru
3.Rekaman (record)

Edisi: 01 Rev: 0 Copyright Perguruan Tinggi Raharja 08/ 19 - 23 19


Get The Better Future By Computer Science
TRANSPARANSI KULIAH TANGGALREVISI : 09 September 2006
LA102 TANGGAL BERLAKU : 09 September 2006
LOGIKA DAN ALGORITMA KODE DOKUMEN : DM-RHJ-005-005-
008

String
String adalah deretan karakter dengan panjang
tertentu.

Contoh :
Halo-halo Bandung
Jurusan Manajemen Informatika
07680322

Operasi String
Edisi: 01 Rev: 0 Copyright Perguruan Tinggi Raharja 08/ 20 - 23 20
Get The Better Future By Computer Science
TRANSPARANSI KULIAH TANGGALREVISI : 09 September 2006
LA102 TANGGAL BERLAKU : 09 September 2006
LOGIKA DAN ALGORITMA KODE DOKUMEN : DM-RHJ-005-005-
008

Operasi terhadap string ada 2 macam :


1.Operasi penyambungan (concatenation)
2.Operasi perbandingan

a. Operasi penyambungan (concatenation)


Operator : +

Operator : + disini bukanlah operator


penjumlahan seperti tipe numerik (integer atau
real). Operator + berarti penyambungan.

Contoh :
Teknik + Informatika = Teknik Informatika
1 + 2 = 12 (namun 1 + 2 = 3, mengapa ?)

b. Operasi perbandingan
Operasi perbandingan dengan string, memakai
operator perbandingan seperti : = < > <>

Contoh :
abcd = abc (hasil : False)
Edisi: 01 Rev: 0 Copyright Perguruan Tinggi Raharja 08/ 21 - 23 21
Get The Better Future By Computer Science
TRANSPARANSI KULIAH TANGGALREVISI : 09 September 2006
LA102 TANGGAL BERLAKU : 09 September 2006
LOGIKA DAN ALGORITMA KODE DOKUMEN : DM-RHJ-005-005-
008

aku < AKU (hasil : True)

String yang disusun oleh gabungan numeric dan


karakter sering dinamakan Alfanumerik.

Misalnya :
K079298
A051374

SOAL LATIHAN :
Dibaca nama karyawan dan Gaji pokok. Gaji bersih
yang diterima pegawai adalah :
Edisi: 01 Rev: 0 Copyright Perguruan Tinggi Raharja 08/ 22 - 23 22
Get The Better Future By Computer Science
TRANSPARANSI KULIAH TANGGALREVISI : 09 September 2006
LA102 TANGGAL BERLAKU : 09 September 2006
LOGIKA DAN ALGORITMA KODE DOKUMEN : DM-RHJ-005-005-
008

Gaji bersih = Gaji pokok + Tunjangan Pajak

Tunjangan karyawan dihitung 20 % dari Gaji pokok,


sedangkan pajak adalah 15% dari Gaji pokok
ditambah Tunjangan.

Buatlah algoritma flowchart dan programnya.

Edisi: 01 Rev: 0 Copyright Perguruan Tinggi Raharja 08/ 23 - 23 23


Get The Better Future By Computer Science

Anda mungkin juga menyukai