2- teknik penyajian algoritma

Upload: minoru-iobi

Post on 06-Jul-2018

257 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/17/2019 2- Teknik Penyajian Algoritma

    1/18

     Teknik Penyajian Algoritma

     Teknik Tulisan Structure English

    PseudocodePseudocode

     Teknik Gambar Structure Chart

    HIPO

    FlowchartFlowchartNassi Schneiderman Chart

  • 8/17/2019 2- Teknik Penyajian Algoritma

    2/18

    Pseudocode

    Pseudocode ode miri! dengan kode !emrograman yang

    sebenarnya"

    Arti !seudo# imitasi atau miri! atau menyeru!ai

    Arti code# kode !rogram" $asis# bahasa !emrograman

    %ebih rinci dari structure English& 'a!at menyatakan ti!e data yang digunakan

    struktur !enulisan# se(uence structure

    selection structure

    loo!ing structure"

  • 8/17/2019 2- Teknik Penyajian Algoritma

    3/18

    Aturan PenulisanAlgoritma Setia! Algoritma akan selalu terdiri dari

    tiga bagian yaitu # )udul *Header+ amus *'eklarasi+ Algoritma *'eskri!si+

    omentar mengenai setia! bagian

    dituliskan diantara tanda kurung kura,acontoh#

    - omentar .

  • 8/17/2019 2- Teknik Penyajian Algoritma

    4/18

     Judul (header)

    adalah bagian teks algoritma yangdigunakan sebagai tem!atmende/nisikan nama dengan

    menentukan a!akah teks tersebutadalah !rogram& !rosedur& 0ungsi"

    Contoh#

    Program Luas_Kubus- 1enghitung luas kubus untuk ukuran sisi yang dibaca dari !iranti ma  lalu mencetak hasilnya ke!iranti keluaran.

    Judul Algoritma

    Spesifikasi Algoritma

  • 8/17/2019 2- Teknik Penyajian Algoritma

    5/18

    Kamus (Deklarasi)

    adalah bagian teks algoritma sebagaitem!at untuk mende/nisikan #Nama ty!e

    Nama konstantaNama 2ariabel

    Nama 0ungsi

    Nama !rosedur

  • 8/17/2019 2- Teknik Penyajian Algoritma

    6/18

    Kamus (Deklarasi)ContohKamus

    -Nama ty!e& hanya untuk ty!e yang bukan ty!e dasar.

    type jam # 3hh&mm&ss integer4 -yaitu 5hh6 jam" 5mm6 sebagai menit dan 5ss6 sebagai

    detik.

    -Nama konstanta& harus menyebutkan ty!e dan nilai .

    constant !hi # real 7 8&9:9;<

    constant nama # string 7 =Ale>?

    constant benar # boolean 7 true

    -Nama In0ormasi& menyebutkan ty!e.

    >&y # integer -suatu nilai yang berty!e bilangan bulat.

    N1a> # real -nilai maksimum yang berty!e bilangan real.

    Nama # string -suatu nilai yang meru!akan kum!ulan character.

    Cari # !oolean -suatu nilai logika.

    -Nama 0ungsi& menyebutkan domain dan range.

    "unction @ealToInt *>#real+ integer

    -mengubah harga > yang berty!e real menjadi harga eki2alen yang berty!e

    integer.

    -Nama !rosedur& menyebutkan 5IS6 initial state& 5BS6 /nal state dan !roses.

    procedure tukar *in!utout!ut >&y # real+- IS > dan y terde/nisi& > 7 a dan y 7 b

  • 8/17/2019 2- Teknik Penyajian Algoritma

    7/18

    Algoritma *'eskri!si+

    adalah bagian inti dari suatu algoritmayang berisi instruksi atau !emanggilanaksi yang telah dide/nisikan

    om!onen algoritma *deskri!si+beru!a # Instruksi dasar se!erti in!utout!ut&

    assignment Se(uence *runtutan+

    O!erasi kondisional

    Perulangan

  • 8/17/2019 2- Teknik Penyajian Algoritma

    8/18

    Algoritma *'eskri!si+

    Contoh

    Contoh lengka!#

    Algoritmainput *c&d+ -menerima masukan D bilangan c dan d.

    i" c 3 d then -o!erasi kondisional.

    e a F b -e di assignment oleh nilai a dan b.

    else

    e a b

    output *e+ -hasil keluaran beru!a bilangan e.

    Program Cetakstring

    -mencetak string 5Selamat $elajar Algoritma dan Pemrograman6 kekeluaran.

    Kamus

    -tidak ada.

    Algoritma

    #utput *=Selamat $elajar Algoritma dan Pemrograman?+

  • 8/17/2019 2- Teknik Penyajian Algoritma

    9/18

    Contoh Penulisan Algoritma%engka!

    Program Nilai1aksimal

    -1enentukan nilai tertinggi yang dibaca dari !iranti masukan dan hasilnya

    dicetak

    ke !iranti keluaran.Kamus

    hasil&>&y # integer -hasil meru!akan 2ariabel untuk menam!ung nilai

    keluaran.

    ->&y adalah 2ariabel untuk menam!ung nilai masukan.

    Algoritma

    input *>&y+ -membaca nilai > dan y dari !iranti masukan.i" > 3 y then -o!erasi kondisional.

    hasil > -hasil di assignment oleh nila terbesar.

    else

    hasil y

    output *hasil+ -nilai didalam 2ariabel hasil dicetak ke !iranti keluaran.

  • 8/17/2019 2- Teknik Penyajian Algoritma

    10/18

    Blo,chart

    Simbol simbol standard o,chart

    Awal/Akhir Proses Input/Output proses terdefinisi

    Program

    Pengujian Variable/Nilai AwalPenghubung Penghubung

    Satu Halaman Berbeda Halaman

    Input/Output aris Alir 

  • 8/17/2019 2- Teknik Penyajian Algoritma

    11/18

    $eknik Penya%ian Algoritmadengan Flow &hart

    'euence 'tructure (struktur urut)

    A

    B

    C

    Instruksi A 

    Instruksi B

    Instruksi C

  • 8/17/2019 2- Teknik Penyajian Algoritma

    12/18

    $eknik Penya%ian Algoritmadengan Flow &hart

    'election 'tructure ('truktur 'eleksi) IB Selection

    Contoh C++ syntax:

    if (A==5) {

    instruksi C;

    }

    !A"#

    $

     %a

    &idak

  • 8/17/2019 2- Teknik Penyajian Algoritma

    13/18

    $eknik Penya%ian Algoritmadengan Flow &hart

    'election 'tructure ('truktur 'eleksi) IB E%SE Selection

    B

    !A"#

    $

     %a&idak

    Contoh C++ syntax:

    if (A==5) {

    instruksi C;

    }

    else {

    instruksi B;

    }

  • 8/17/2019 2- Teknik Penyajian Algoritma

    14/18

    $eknik Penya%ian Algoritmadengan Flow &hart

    'election 'tructure ('truktur 'eleksi) CASE Selection

    Contoh C++ Syntax:

    switch (ar) {

    case !w":instruksi A;

    break;

    case !x":

    instruksi B;

    break;

    case !y":instruksi C;

    break;

    #efault:

    instruksi D;

    }

    wVar 

    ' (

    default

    A B $ )

  • 8/17/2019 2- Teknik Penyajian Algoritma

    15/18

    $eknik Penya%ian Algoritmadengan Flow &hart

    %oo!ing@e!etition Structure *StrukturPengulangan+ Bront Check @e!etition

    !

    *ondisi

    A

    B

    Contoh C++ syntax:

     while (kon#isi) {

    instruksi A;

    }

    instruksi B;

    Contoh C++ syntax:

     while (kon#isi) {

    instruksi A;

    }

    instruksi B;

    CatatanCatatan::-Kondisi berisi nilai true atau falseKondisi berisi nilai true atau false-Kondisi dapat berupa persamaan relasiKondisi dapat berupa persamaan relasi

    spt:spt: z < 5z < 5

    z >= 10z >= 10

    …… dsbdsb

  • 8/17/2019 2- Teknik Penyajian Algoritma

    16/18

    $eknik Penya%ian Algoritmadengan Flow &hart

    %oo!ing@e!etition Structure *StrukturPengulangan+

    @ear Check @e!etition

    !*ondisi

    A

    B

    Contoh C++ syntax:

    #o {

    instruksi A;

    } while (kon#isi)

    instruksi B;

    Contoh C++ syntax:

    #o {

    instruksi A;

    } while (kon#isi)

    instruksi B;

    CatatanCatatan::-Kondisi berisi nilai true atau falseKondisi berisi nilai true atau false-Kondisi dapat berupa persamaan relasiKondisi dapat berupa persamaan relasi

    spt:spt: z < 5z < 5

    z >= 10z >= 10

    …… dsbdsb

  • 8/17/2019 2- Teknik Penyajian Algoritma

    17/18

    $eknik Penya%ian Algoritmadengan Flow &hart

    %oo!ing@e!etition Structure *StrukturPengulangan+ Bi>ed @e!etition

    Contoh C++ syntax:

    for (x=$%x&=5%x++) {

    instruksi A;

    }

    instruksi B;

    Contoh C++ syntax:

    for (x=$%x&=5%x++) {

    instruksi A;

    }

    instruksi B;

    +or ' " , to #

    A

    B

    x

  • 8/17/2019 2- Teknik Penyajian Algoritma

    18/18

     Thank?s

    See Ja Ne>t Keek