• Tidak ada hasil yang ditemukan

LOGIKA DAN ALOGARITMA III ppt

N/A
N/A
Protected

Academic year: 2018

Membagikan "LOGIKA DAN ALOGARITMA III ppt"

Copied!
36
0
0

Teks penuh

(1)

PENULISAN TEKS

PENULISAN TEKS

ALGORITMA

(2)

Teks Algoritma

Teks Algoritma

Teks algoritma berisi deskripsi

langkah-langkah penyelesaian

masalah.

Deskripsi tersebut dapat ditulis dalam

(3)

Penulisan

Penulisan

Teks

Teks

Algoritma

Algoritma

Menggunakan bahasa natural

(Bahasa manusia: Indonesia, Inggris)

Kelemahannya masih sering membingungkan (ambigu) / sulit dipahami.

Menggunakan Flowchart

Baik karena alur algoritma dapat dilihat secara visual, tetapi repot pembuatannya jika algoritma panjang

Menggunakan Pseudocode

(4)

Flowchart

Flowchart

Flowchart adalah representasi grafik

dari langkah-langkah yang harus diikuti

dalam menyelesaikan suatu permasalahan

yang terdiri atas sekumpulan simbol,

dimana masing-masing simbol

merepresentasikan suatu kegiatan

tertentu.

Flowchart diawali dengan penerimaan

input, pemrosesan input, dan diakhiri

dengan penampilan output.

bagan yang menggambarkan urutan logika

dari suatu prosedur pemecahan masalah.

suatu diagram yang menggambarkan

(5)

Simbol-simbol Flowchart

Simbol-simbol Flowchart

Terminal

Permulaan (start) / akhir

(stop) program

Flowline

Arah aliran program

Preparation,

Proses

inisialisasi/pemberian

nilai/harga awal.

Proses/prosessing

(6)

Simbol-simbol Flowchart

Simbol-simbol Flowchart

Input/Output Data

Proses input/output data, parameter, informasi.

Decision (kotak keputusan)

Perbandingan pernyataan, penyeleksian data yang memberikan pilihan untuk langkah selanjutnya.

On Page Connector

Penghubung bagian-bagian flowchart yang berada pada satu halaman.

Off Page Connector

(7)

Pembuatan Flowchart

Pembuatan Flowchart

Tidak ada kaidah yang baku.

Flowchart = gambaran hasil analisa suatu

masalah

Flowchart dapat bervariasi antara

satu pemrogram dengan pemrogram lainnya.

Secara garis besar ada 3 bagian utama:

◦ Input

◦ Proses

◦ Output

Hindari pengulangan proses yang tidak perlu

dan logika yang berbelit sehingga jalannya

proses menjadi singkat.

Jalannya proses digambarkan dari atas ke

bawah dan diberikan tanda panah untuk

memperjelas.

(8)

Contoh Flowcart

Contoh Flowcart

start

read/input

condition?

process

write/print

stop Ya

(9)

Start

Phi = 3.14

Input (diameter)

Radius = diameter/2 Luas = phi * radius * radius

Output Luas

Stop

Contoh Flowcart

(10)

3 Struktur Flowcart

3 Struktur Flowcart

Sequence/

Sederhana Branching/Percabangan Looping/Perulangan

(11)

Psudocode

Suatu cara penulisan teks algoritma

dengan menggunakan notasi

algoritma

notasi algoritma sebaiknya

berkoresponden notasi bahasa

(12)

Kita menuliskan perintah

Tulis Nilai X dan Y

Dalam notasi algoritma manjadi :

Write (X, Y)

(13)

Notasi write berkoresponden dengan :

Write atau writeln (bahasa pascal)

Printf (bahasa C)

WRITE (bahasa C++)

Write (bahasa FORTRAN)

Writeln(X,Y);

(bahasa pascal)

Printf (“%d %d”, X,Y);

(bahasa C)

cout << x << y ;

(bahasa C++)

WRITE ( *, *) X, Y

(bahasa FORTRAN)

Translasi dalam bahasa pemrograman

(14)

Kita menuliskan perintah

Isikan nilai X ke dalam min

Dalam notasi algoritma manjadi :

min

X

(15)

Notasi

write

berkoresponden dengan :

:=

(bahasa pascal)

=

(bahasa C)

=

(bahasa C++)

=

(bahasa FORTRAN)

Translasi dalam bahasa pemrograman

min := X;

(bahasa pascal)

min = X;

(bahasa C)

min = X

(bahasa C++)

(16)

Teks Algoritma

Teks Algoritma

Teks algoritma tersusun atas 3

bagian(blok)

Bagian Kepala (header)

Bagian deklarasi

Bagian deskripsi

Setiap bagian dapat disertai komentar

untuk memperjelas maksud teks yang

ditulis.

(17)

Algoritma Nama_Algoritma

{ Penjelasan tentang algoritma yang berisi

uraian singkat mengenai apa yang

dilakukan oleh algoritma}

DEKLARASI

{ semua nama yang dipakai, meliputi nama

tipe, nama tetapan, nama peubah, nama

prosedur, dan nama fungsi didefinisikan

disini}

DESKRIPSI

(18)

Kepala Algoritma

Kepala Algoritma

Kepala Algoritma adalah bagian yang

terdiri atas nama algoritma dan

penjelasan(spesifikasi) tentang algoritma

tersebut.

Nama algoritma sebaiknya singkat namun

cukup menggambarkan apa yang dilakukan

oleh algoritma tersebut

Spesifikasi algoritma berisi penjelasan

(19)

Algoritma LUAS_LINGKARAN

{ Menghitung luas lingkaran untuk ukuran jari-jari tertentu. Algoritma menerima masukan jari-jari lingkaran, menghitung luasnya, lalu

(20)

DEKLARASI

DEKLARASI

Bagian Deklarasi adalah bagian untuk

mendeklarasikan / mendefinisikan semua

nama yang dipakai dalam algoritma.

Nama dapat berupa nama tetapan, nama

peubah, nama Tipe, nama prosedur dan

nama fungsi.

Dalam resep makanan bagian deklarasi

dianalogikan dengan bagian yang

(21)

DEKLARASI

{nama tetapan}

Cont phi = 3.14

{Nama tipe}

Type titik : record

< x :integer,

y : integer

>

{nama peubah }

r : integer { variabel dengan tipe data bilangan bulat)

(22)

Bagian deskripsi

Bagian deskripsi

Bagian ini adalah bagian inti dari

suatu algoritma

Bagian ini berisi uraian

(23)

DESKRIPSI

Read (r)

L ← phi * r * r

(24)

Format Syntax Algoritma

Format Syntax Algoritma

JUDUL ALGORITMA DEKLARASI/

KAMUS

{Lokal / Umum} ALGORITMA

TUBUH

ALGORITMA/ DESKRIPSI

Nama Algoritma

Type namatipe : tipe [subrange]

Type namatipe : array [min..maks] of tipe Namavar : tipe

Namavar : array [ min..maks] of tipe Const nama = nilai

Procedure namaproc

(Input/Output[daftar_nama_parameter:tipe])

Notasi Assigment

Notasi Kondisional/Pemilihan Notasi Pengulangan

(25)

Algoritma untuk menulis Hello

Algoritma untuk menulis Hello

world:

world:

Algoritma

Hello_world

{ program untuk mencetak “Hello world”}

DEKLARASI

{tidak ada}

DESKRIPSI

Write(“Hello world”)

(26)

Algoritma untuk menghitung

Algoritma untuk menghitung

luas segiempat :

luas segiempat :

PROGRAM

LuasSegi4

{program untuk menghitung luas segiempat

dengan

diketahui panjang dan lebarnya}

DEKLARASI

Luas,panjang,lebar :integer

ALGORITMA

panjang

10

lebar

5

(27)

Translasi Teks Algoritma ke

dalam Teks Program Bahasa

C++

Translasi Notasi Kamus

Algoritma C++

1 #include <nama_unit> 2 CONST namaconst =

nilai #define namaconst nilai 3 TYPE namatipe :

tipedata Typedef namatipe; tipedata

4 namavar : tipedata

namavar : namatipe tipedata namavarnamatipe namavar;;

1 #include <iostream.h> 2 CONST phi = 3.14 #define phi 3.14

3 TYPE jumlah : integer Typedef int jumlah;

4 n : integer

n : jumlah int njumlah n; ;

(28)

Translasi Notasi Pengendalian

Translasi Notasi Pengendalian

Algoritma C++

1 namavaribel  harga namavar = harga;

3 OUTPUT(daftar_item)

(29)

Lanjutan Translasi Notasi

Lanjutan Translasi Notasi

Pengendalian

Pengendalian

Algoritma C++

(30)

Lanjutan Translasi Notasi

Lanjutan Translasi Notasi

Pengendalian

Pengendalian

Algoritma C++

6 DEPEND ON <ekspresi> <ekspresi 1> : aksi_1 <ekspresi 2> : aksi_2 :

<ekspresi n> : aksi_n

atau

CASE namavarcase OF expkonstan 1 : aksi_1

(31)

Lanjutan Translasi Notasi

Lanjutan Translasi Notasi

Pengendalian

Pengendalian

Algoritma C++

7 [inisialisasi]

WHILE <kondisi_ulang> DO

while (kondisi_ulang) {

UNTIL <kondisi_stop>

[inisialisasi]

(32)

Lanjutan Translasi Notasi

Lanjutan Translasi Notasi

Pengendalian

Pengendalian

Algoritma

9 namavar TRAVERSAL [awal..akhir] daftar_aksi;

atau

FOR var  awal TO/DOWNTO akhir STEP counter DO

(33)

Contoh Algoritma

Contoh Algoritma

Algoritma Luas_Lingkaran

{menghitung luas lingkaran diketahui

jari-jarinya}

DEKLARASI

CONST phi = 3.14

r : integer

Luas : real

DESKRIPSI

r

5

Luas

phi * r * r

output(”Jari –jari = ”,r);

(34)

Contoh program C++

Contoh program C++

#include <iostream.h>

#define phi 3.14

main ()

{

int r;

float Luas;

r = 5;

Luas = phi * r * r;

cout << ”Jari-jari : ” << r;

(35)

LATIHAN

1.

Tulislah flowchart dan program

untuk menghitung dan mencetak

keliling (k) dan luas (l) dari sebuah

bujur sangkar. Nilai real single

precision untuk sisi (s) diisikan

melalui keyboard.

2.

Tulislah flowchart dan program

untuk mengisikan nilai jari-jari

sebuah lingkaran, dan kemudian

mencetak keliling dan luas

(36)

3.

Tulislah flowchart dan program

Referensi

Dokumen terkait

Data yang akan dikumpulkan terdiri atas data primer. Data primer meliputi peubah-peubah yang diteliti, yaitu: 1) data sosial ekonomi contoh (nama, jenis

• Tidak boleh diawali oleh angka ( 12345 dst, + - % dsb ) • Bentuk umum: Tipe data nama

Pada prosedur, nama prosedur tidak dapat digunakan lagsung, yang dapat langsung digunakan adalah parameternya yang mengandung nilai balik.... Memecahkan program yang rumit dan

 Identifier (pengenalan) adalah suatu nama yang biasa dipakai dalam pemrograman untuk menyatakan variabel, konstanta bernama, tipe data, fungsi, label,

Dalam prosedur ini fungsi gudang (gudang bahan baku) menyiapkan bahan baku yang dibutuhkan oleh departemen produksi, gudang bahan jadi mencatat semua barang jadi untuk

Rancangan ini berisi data Jersey yang akan dijual, dimana didalamnya terdiri dari kode Jersey, nama Jersey, harga jual, harga beli, gambar dan deskripsi disini dapat

hampir sama dengan prosedur, hanya fungsi harus dideklaras dengan tipenya. Tipe Deklarasi ini menunjukan tipe hasil dari fungsi. Tipe tersebut ditulis pada akhir

Tipe enumerasi adalah tipe data yang nilainya terbatas pada nilai-nilai yang telah didefinisikan saja. Tipe enumerasi digunakan untuk membentuk tipe data yang