riswadiaris.files.wordpress.com · web viewmenghitung harga barang dan diskon harga barang = jumlah...

30
TRANSPARANSI KULIAH LA102 LOGIKA DAN ALGORITMA TANGGALREVISI TANGGAL BERLAKU KODE DOKUMEN : : : 09 September 2006 09 September 2006 DM-RHJ-005-005-008 MUCHAMAD GOZALI, S.Kom Edisi: 01 Rev: 0 Copyright © Perguruan Tinggi Raharja 08/ 1 - 30 Get The Better Future By Computer Science 1 LOGIKA & ALGORTIMA

Upload: others

Post on 26-Jan-2021

20 views

Category:

Documents


0 download

TRANSCRIPT

TRANSPARANSI KULIAH

LA102

LOGIKA DAN ALGORITMA

TANGGALREVISI

TANGGAL BERLAKU

KODE DOKUMEN

:

:

:

09 September 2006

09 September 2006

DM-RHJ-005-005-008

MUCHAMAD GOZALI, S.Kom

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.

TAHAPAN PEMBUATAN PROGRAM

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.

Contoh :

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

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)

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

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

Contoh :

Benar

Salah

• Jumlah

• X, y, z

• Rata_rata

• Jumlah1, jumlah2

• Jumlah Pajak

• 0X, +z

• Rata-rata

• $Jumlah

Misal :

C/C++:

Pascal:

Basic:

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

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

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

2147483647

Signed 4 byte

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:

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

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

salah (false). Tipe boolean memakai memori 1 byte.

Contoh pendeklarasian tipe boolean pada program:

var

ketemu : boolean;

Contoh pengisian data bertipe boolean :

ketemu := true;

SOAL LATIHAN :

1. Tentukan benar (b) atau salah (s) penamaan pengenal atau variabel dibawah ini :

• 6titik

• titik6

• PT-1

• hari!

• A 1

• nilai_ujian

• PT1

• #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 ?

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)

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

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’

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

LOGIKA & ALGORTIMA

Selesai

Tidak

Ya

Memperbaiki Program

Ada

Kesalahanan

Compile Program

Menulis Program

Mulai

PENDEKLARASIAN VARIABEL :

Cara Pendeklarasian variabel sangat tergantung dari struktur program suatu bahasa pemrograman.

Contoh:

Program Lingkaran;

{Kamus atau Deklarasi }

var Jari, Keliling, Luas : real;

const phi = 3.14;

{ Algoritma }

begin

write(‘Harga Jari : ');

readln(Jari);

keliling = 2 * phi * jari

luas = phi * jari * jari

writeln(‘Harga Keliling : ‘, Keliling);

writeln(‘Harga Luas : ‘,Luas : ');

end.

int jumlah;

float harga;

Var

Total : integer;

Kode : String[5];

DIM A As Integer

DIM X As Single

DIM Y As Long

Atau

luas# ( Double

Run Program

Ada

Kesalahanan

Ya

Memperbaiki Program

Tidak

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

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

WriteLn('Harga Barang : ', Hrg_brg);

Readln;

end.

PAGE

1

Edisi: 01 Rev: 0 Copyright © Perguruan Tinggi Raharja08/ 1 - 23

Get The Better Future By Computer Science