laporankkk praktikum modul ii alpro v

Upload: nenekoda

Post on 01-Mar-2018

239 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/25/2019 Laporankkk Praktikum Modul II Alpro V

    1/22

    LAPORAN AKHIR PRAKTIKUM

    ALGORITMA DAN PEMROGRAMAN II

    Nama : Bagus Kusuma Risqi

    NIM : DBC 115 068

    K!as : "

    M#$u! : % &O'(a)#( O*(!#a$i+g

    E,-')i#+ Ha+$!i+g.

    /URUAN TEKNIK IN"ORMATIKA

    "AKULTA TEKNIK

    UNI%ERITA PALANGKA RAA

    2016

  • 7/25/2019 Laporankkk Praktikum Modul II Alpro V

    2/22

    BAB I

    TU/UAN DAN LANDAAN TEORI

    I3 Tu4ua+

    Setelah menyelesaikan modul ini, mahasiswa diharapkan mampu:

    1. Mengimplementasikan Exception Handling

    2. Mengimplementasikan operator overloading

    II3 La+$asa+ T#(i

    arang sekali se!uah program di!uat dapat !er"alan dengan sukses

    pada saat pertama sekali di"alankan. #esalahan sering ter"adi pada saat

    perancangan atau pemrograman.#esalahan terse!ut dikatagorikan men"adi

    tiga !agian, yaitu:

    $ syntax errors % mengaki!atkan kesalahan kompilasi.

    $ semantic errors% program menghasilkan keluaran yang tidak sesuai

    dengan harapan.

    $ runtime errors % ke!anyakan mengaki!atkan terminasi program secara

    tidak normal atau !ahkan sistem crash

    &erikut ini merupakan contoh runtime error.

    $ 'em!agian !ilangan dengan nol.

    $ (kses elemen yang !erada di luar indeks array

    $ Menggunakan nilai negati) untuk ukuran array

    Setiap program dalam !erada dapat suatu kondisi yang tidak normal %

    Error *onditions.'rogram yang +!aik harus dapat menangani kondisi

    ini.Exception merupakan suatu keadaan yang dise!a!kan oleh runtime error

    dalam program. Memungkinkan kesalahan ditangani tanpa harus +mengotori

    program -dengan rutin yang menangani kesalahan. Memungkinkan

    pemisahan penanganan kesalahan dengan program utama -main !usiness

    logic.

    Suatu )ungsi dapat mem!eri tanda suatu kesalahan dengan melempar

    suatu exception % throws. /ungsi pemanggil dapat menyerahkan kendali ke

  • 7/25/2019 Laporankkk Praktikum Modul II Alpro V

    3/22

    exception handler dengan menangkap -catching exception 0 try, catch.

    &erikut ini merupakan !lok try0 catch.

    try

    instruksi yang !erpotensi menghasilkan exception

    catch-tipe3exception e

    instruksi untuk menangani exception

    Seperti !ahasa tingkat tinggi yang lain, *44 memiliki !e!erapa operator 4,

    0, 5, 6,77, 88, 9, ;, Manipulasi !ilangan

    kompleks le!ih mudah apa!ila dapat memperlakukannya seperti pada tipe

    dasar. Sehingga dapat dilakukan, hal0hal seperti

    $ *omplex a-2,?@

    $ *omplex !-?,A@

    $ . . .

    $ *omplex c < a 4 !@

    &ukannya

    $ *omplex a-2,?@

    $ *omplex !-?,A@

    $ . . .

    $ *omplex c < a.tam!ah-!@

    =perator yang digunakan pada kelas dalam *44 dinyatakan dalam

    pemanggilan )ungsi. enis operator ada dua yaitu operator uner dan operator

  • 7/25/2019 Laporankkk Praktikum Modul II Alpro V

    4/22

    !iner.=perator uner hanya mem!utuhkan satu argument,misalnya 44, 00, B.

    =perator !iner mem!utuhkan dua argument, misalnya 4, 0, C, 6.

    =perator dalam *44 diimplementasikan dengan pemanggilan )ungsi.

    Dser dapat merede)inisikan arti suatu operator pada suatu kelas dengan

    melakukan rede)inisi method yang !erkaitan dengan operator terse!ut. idak

    semua operator !isa di0overload. (da !atasan0!atasan yang !isa dilakukan

    dalam operator overloading.

    &erikut ini merupakan da)tar operator yang dapat di0overload dan yang

    tidak dapat di0overload.

    Operator yang dapat di-overload+ - * / % ^ & |

    ~ ! = < > += -= *=

    /= %= ^= &= |= > >>=

    [] ( ne "elete

    ne[] delete[]

    Operator yang tida# dapat di-overload

    $ $* 'ieo)

    BAB II

    LANGKAH KER/A

  • 7/25/2019 Laporankkk Praktikum Modul II Alpro V

    5/22

    La+ga K(4a

    1. &uatlah program seperti di !awah iniF

    Ginclude 7iostream8

    Ginclude 7stdli!.h8

    class complex

    dou!le real@

    dou!le imaginer@

    pu!lic:

    compelx-dou!le re

  • 7/25/2019 Laporankkk Praktikum Modul II Alpro V

    6/22

    return result@

    complex operator0-complex c

    complex result@

    result.real < real 0 c.real@

    result.imaginer < imaginer 0 c.imaginer@

    return result@

    void display-

    cout 77 I-I 77 real 77 I,I 77 imaginer 77 II 77 endl:

    @

    int main-

    complex J-1,2, w-K,?, !@

    complex a < J 4 w

    a.display-@

    a < J 0 w@

    a.display-@

    !

  • 7/25/2019 Laporankkk Praktikum Modul II Alpro V

    7/22

    BAB III

    PEMBAHAAN

    Pm7aasa+

    'rogram 1 :

    'ada kode program ini merupakan !adan utama programGinclude

    7iostream.h8!er)ungsi agar program yang meli!atkan perintah input % output,

    misal cout, cin. /ile header Ginclude 7stdli!.h8 men"a!arkan !e!erapa )ungsi

    umum dan marcotermasuk mana"emen memori dinamis, men"alin komunikasi

    dengan perangkat sekitar, mem!uat !ilangan secara random, aritmetika !ilangan

    integer, pencarian, pengurutan dan pengonversian.

  • 7/25/2019 Laporankkk Praktikum Modul II Alpro V

    8/22

    *lass *omplex adalah class utama program yang memiliki pendeklarasian

    varia!el dou!le real 9 dou!le imaginer yang nantinya akan digunakan oleh para

    methodnya. Lengan mode akses pu!lic dan konstruktor dengan nama *omplex

    !erisikan ketentuan atri!ut real 9 imaginer yang memiliki nilainya sama dengan

    atri!ut dari parameternya *omplex, yaitu real

  • 7/25/2019 Laporankkk Praktikum Modul II Alpro V

    9/22

    'rogram 2:

    Header Ginclude 7iostream.h8!er)ungsi agar program yang meli!atkan

    perintah input % output, misal cout, cin. /ile header Ginclude 7stdli!.h8

    men"a!arkan !e!erapa )ungsi umum dan marco termasuk mana"emen memori

    dinamis, men"alin komunikasi dengan perangkat sekitar, mem!uat !ilangan

    secara random, aritmetika !ilangan integer, pencarian, pengurutan dan

    pengonversian. /ile header Ginclude 7conio.h8diperlukan !ila meli!atkan

    clrscr-,yaitu perintah untuk mem!ersihkanlayar.

    *lass #alkecilulator adalah kelas yang mendeklarasikan varia!el int hasil,

    !il11, dan !il2.

  • 7/25/2019 Laporankkk Praktikum Modul II Alpro V

    10/22

    oid tam!ah yang dimiliki oleh class kalkeciltulator adalah method yang

    mengatur operator penam!ahan pada program ini -hasil

    menggunakan perintah cout untuk menampilkan output penam!ahan.

    oid kurang yang dimiliki oleh class kalkeciltulator adalah method yang

    mengatur operator pengurangan pada program ini -hasil

    menggunakan perintah cout untuk menampilkan output pengurangan.

    oid kali yang dimiliki oleh class kalkeciltulator adalah method yang

    mengatur operator kali pada program ini -hasil

    perintah cout untuk menampilkan output kali.

    oid !agi yang dimiliki oleh class kalkeciltulator adalah method yang

    mengatur operator pem!agian pada program ini -hasil

    menggunakan perintah cout untuk menampilkan output pem!agian.

  • 7/25/2019 Laporankkk Praktikum Modul II Alpro V

    11/22

    oid l!esar yang dimiliki oleh class kalkeciltulator adalah method yang

    mengatur operator le!ih !esar pada program ini -dengan menggunakan perintah

    i) else. Lan menggunakan perintah cout untuk menampilkan output le!ih !esar.

    oid lkecil yang dimiliki oleh class kalkeciltulator adalah method yang

    mengatur operator le!ih kecil pada program ini -dengan menggunakan perintah

    i) else. Lan menggunakan perintah cout untuk menampilkan output le!ih kecil.

  • 7/25/2019 Laporankkk Praktikum Modul II Alpro V

    12/22

    main - disini merupakan titik awal isi dari !adan program akan dieksekusi.

    'ada !adan utama program ter"adi enkapsulasi dari kelas kalkeciltulator dengan

    nama enkapsulasi k. menu: adalah la!el. 'erintah cout di atas !er)ungsi untuk

    menampilkan menu.

    'erintah i) else digunakan untuk men"alankan pilihan menu. adi, "ika kita

    memilih nomor 1, maka akan ter"adi penam!ahan, pilih nomor 2, maka akan ter"adi

    pengurangan, dst.

  • 7/25/2019 Laporankkk Praktikum Modul II Alpro V

    13/22

  • 7/25/2019 Laporankkk Praktikum Modul II Alpro V

    14/22

  • 7/25/2019 Laporankkk Praktikum Modul II Alpro V

    15/22

    BAB I%

    KEIMPULAN

    Ksim'u!a+

    1. =verloading operator !ertu"uan untuk memudahkan operasi !er!agai type

    data sesuai dengan ke!utuhan kita misalkan yang meli!atkan operasi yang

    meli!atkan suatu o!"ect class.2. Exception handling adalah penangan error yang ter"adi pada se!uah program.

    Exception handling akan mendeteksi error yang ter"adi secara otomatis.

    K. Lidalam melakukan statement operator overloading umumnya kita

    memerlukan enkapsulasi dari se!uah kelas itu sendiri agar pemanipulasi

    !ilangan kompleks men"adi le!ih mudah

  • 7/25/2019 Laporankkk Praktikum Modul II Alpro V

    16/22

    BAB %

    DA"TAR PUTAKA

    Losen eknik Nn)ormatika. 21O.Modul Praktikum Algoritma dan Pemrograman II.

    'alangka Paya: D'P /. E#QN#.

  • 7/25/2019 Laporankkk Praktikum Modul II Alpro V

    17/22

    BAB %I

    LAMPIRAN

    P(#g(am 1 :

  • 7/25/2019 Laporankkk Praktikum Modul II Alpro V

    18/22

    Ou)'u):

  • 7/25/2019 Laporankkk Praktikum Modul II Alpro V

    19/22

    P(#g(am 2 :

  • 7/25/2019 Laporankkk Praktikum Modul II Alpro V

    20/22

  • 7/25/2019 Laporankkk Praktikum Modul II Alpro V

    21/22

  • 7/25/2019 Laporankkk Praktikum Modul II Alpro V

    22/22

    Ou)'u):