• 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

Populasi dalam penelitian ini adalah anak usia sekolah yang sedang bermain ga me online di warung internet penyedia game online Jatinangor dengan jumlah yaitu

udara desain dan dengan program metode FAA memperhitungkan kerusakan akibat. lalulintas keberangkatan langsung dari

Program yang dapat diterapkan yaitu “Mitigasi Bencana Alam Banjir Melalui Program TAJIR (Tanjakan Bebas Banjir) dan TABURI (Pembuatan Lubang Biopori) sebagai Landasan

2.2.10 Perceived Usefulness, Perceived Ease of Use dan Faktor Sosial Terhadap Minat Pemanfaatan Sistem Informasi dan Penggunaan Teknologi Sistem Informasi

Meningkatkan Kemampuan Berpikir Kreatif Dan Komunikasi Matematis Siswa Smp Melalui Pembelajaran Dengan Pendekatan Open-Ended.. Universitas Pendidikan Indonesia | repository.upi.edu

adalah berkaitan dengan upaya penciptaan iklim penanaman modal yang sehat seperti berikut; (1) Kondisi sosial ekonomi masyarakat Kabupaten Natuna yang belum bisa

Namun, jika Majelis Umum menentukan bahwa masalah adalah sebuah &#34;pertanyaan penting&#34; dengan suara mayoritas sederhana, maka dua pertiga

Strategi keteladanan ini dapat dibedakan menjadi keteladanan internal (internal modelling) dan keteladanan eksternal(external modelling). 9 Keteladanan