pertemuan3 - DOC
Description
materi dari nak BSI semester awal algoritma.
Document Sample


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
Ya
Ada Memperbaiki Program
Kesalahanan
Tidak
Run Program
Ya
Ada Memperbaiki Program
Kesalahanan
Tidak
Edisi: 01 Selesai
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
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
Bagian statement merupakan bagian program
yang berisi perintah yang akan dieksekusi/
dijalankan.
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
Contoh :
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
Edisi: 01 Rev: 0 Copyright © Perguruan Tinggi Raharja 08/ 5 - 23 5
Clrscr;
Get The Better Future By Computer Science
Write(„Jumlah Barang : ');
Readln(Jum_brg);
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
Untuk program besar, harus dipecah
kedalam sub program
Sintak Penulisannya
Penulisan instruksi harus sesuai dengan
aturan bahasa yang dipakai
Algoritma dari 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
Harus dibuat algoritmanya lebih dahulu,
lalu diuji.
Contoh sintak :
Write(„teks'); Write(„Harga Celsius : '); (BENAR)
Write(“Harga Celsius : “); (SALAH)
ELEMEN DASAR PEMROGRAMAN
Pengenal (variabel) dan Tipe Data
Konstanta
Operator
Statement Input dan Output (I/O)
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
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.
Keterangan :
Celsius, Fahrenheit, Reamur : pengenal/variable
* , + dan / : operator
write, writeln dan readln : statement I/O
PENGENAL dan TIPE DATA
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
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.
5. Case sensitive atau non Case sensitive
tergantung bhs pemrogramannya. Misal C dan
C++ adalah case sentitive
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
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:
Var
Total : integer;
Kode : String[5]; DIM A As Integer
DIM X As Single
int jumlah; DIM Y As Long
float harga;
Edisi: 01 Rev: 0 Copyright © Perguruan Tinggi Raharja Atau 10
08/ 10 - 23
Get The Better Future By Computer Science luas# Double
TRANSPARANSI KULIAH TANGGALREVISI : 09 September 2006
LA102 TANGGAL BERLAKU : 09 September 2006
LOGIKA DAN ALGORITMA KODE DOKUMEN : DM-RHJ-005-005-008
Konstanta:
Konstanta seperti halnya variabel, perbedaan-nya adalah
variabel nilainya bisa berubah-rubah saat program
dijalankan sesuai dengan instruksi program.
Sedangkan konstanta nilainya tetap saat program
dijalankan.
Misalnya :
Const phi=3.14;
Const nama=“STMIK/AMIK RAHARJA”;
Contoh:
Program Lingkaran;
{Kamus atau Deklarasi }
var Jari, Keliling, Luas : real;
const phi = 3.14;
{ Algoritma }
begin
write(‘Harga Jari : ');
readln(Jari);
Rev: * phi * jari
Edisi: 01 keliling = 2 0 Copyright © Perguruan Tinggi Raharja 08/ 11 - 23 11
luas = phi * jari *
Get The Better Future By Computer Sciencejari
writeln(‘Harga Keliling : ‘, Keliling);
writeln(‘Harga Luas : ‘,Luas : ');
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
1. Tipe data dasar :
- Bilangan bulat (integer)
- Bilangan pecahan (real)
- Karakter (character), dan
- Boolean
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
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:
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
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
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
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:
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
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
extended 3.4 x 10-4932 .. 1.1 x 104932 10 byte
Keterangan :
Single : presisi-tunggal
double : presisi-ganda
Contoh pendeklarasian tipe real pada program :
var
X : real; Jumlah : single;
Z : double; Y : extended;
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
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
grade : char; golongan : char;
Data bertipe karakter, harus diapit oleh tanda
petik satu.
Contoh pengisian data bertipe karakter :
grade := ‟A‟;
golongan := ‟1‟;
Boolean
Boolean adalah tipe bilangan logik, hanya
mengenal dua buah nilai : benar (true), atau
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
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.
b. Bagaimana penulisan deklarasinya ?
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
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
Operasi terhadap string ada 2 macam :
1. Operasi penyambungan (concatenation)
2. Operasi perbandingan
a. Operasi penyambungan (concatenation)
Operator : +
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
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)
‟aku‟ < ‟AKU‟ (hasil : True)
String yang disusun oleh gabungan numeric dan
karakter sering dinamakan Alfanumerik.
Misalnya :
‟K079298‟
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
‟A051374‟
SOAL LATIHAN :
Dibaca nama karyawan dan Gaji pokok. Gaji bersih
yang diterima pegawai adalah :
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/ 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
Edisi: 01 Rev: 0 Copyright © Perguruan Tinggi Raharja 08/ 23 - 23 23
Get The Better Future By Computer Science
Get documents about "