2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

download 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

of 93

Transcript of 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    1/93

     ALGORITMA, FLOWCHART, TIPE

    DATA, OPERATORMuhammad Ridwan Arif Cahyono

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    2/93

     ALGORITMA

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    3/93

    Public static void main String argmeans? The Main method is the method in which execution to any java program begins.

    A main method declaration looks as follows:

    public static void main!tring args"#$%&

     The method is public because it be accessible to the '(M to begin execution of the

    program.

    )t is !tatic because it be available for execution without an object instance. you mayknow that you need an object instance to invoke any method. !o you cannot beginexecution of a class without its object if the main method was not static.

    )t returns only a void because* once the main method execution is over* the

    program terminates. !o there can be no data that can be returned by the Mainmethod

     The last parameter is !tring args"#. This is used to signify that the user may opt toenter parameters to the java program at command line. +e can use both !tring"#args or !tring args"#. The 'ava compiler would accept both forms.

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    4/93

     Algoritma

    Adalah inti dari ilmukomputer. Algoritma adalah

    urutan langkah,langkah logispenyelesaianmasalah yangdisusun secarasistematis dan logis.

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    5/93

     Algoritma

    -ata logis merupakan kata kunci dalamalgoritma.

    Algoritma adalah urutan,urutan dari instruksi

    atau langkah,langkah untuk menyelesaikansuatu masalah.

    rutan langkah logis* yang berarti algoritmaharus mengikuti suatu urutan tertentu* tidakboleh melompat,lompat.

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    6/93

     Algoritma

    Alur pemikiran dalam menyelesaikan suatupekerjaan yang dituangkan secara tertulis.

     Alur pikiran* sehingga algoritma

    seseorang dapat juga berbeda dari

    algoritma orang lain.

     Tertulis* yang artinya dapat berupa

    kalimat* gambar* atau tabel tertentu.

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    7/93

     Algoritma

    /angkah,langkah dalam

    algoritma harus dapatditentukan bernilaibenar atau salah.

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    8/93

     Algoritma

    Algoritma adalah blueprint dariprogram.!ebaiknya disusun sebelum membuat

    program.-riteria suatu algoritma:

    0 Ada input dan output

    0 1fektif dan e2sien

    0 Terstruktur

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    9/93

     Algoritma Dalam Kehidupan

    Algoritma adalah jantung ilmu komputeratau informatika. 3anyak cabang ilmukomputer yang diacu dalam terminologialgoritma.

    Algoritma juga digunakan dalam kehidupansehari,hari* contohnya resep makanan. 4idalam resep makanan terdapat langkah,langkah yang merupakan algoritma.

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    10/93

     Algoritma dalam Kehidupan

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    11/93

     Algoritma dalam Kehidupan

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    12/93

    Kriteria Algoritma

    )nput: algoritma dapat memiliki nolatau lebih inputan dari luar.

    5utput: algoritma harus memiliki

    minimal satu buah output keluaran.Defniteness(pasti): algoritma

    memiliki instruksi-instruksi yang jelasdan tidak ambigu.

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    13/93

    Kriteria Algoritma

    Finiteness (ada batas): algoritmaharus memiliki titik berhenti(stopping role).

    Eectieness(tepat dan efsien):algoritma sebisa mungkin harusdapat dilaksanakan dan e!ekti!."ontoh instruksi yang tidak e!ekti!adalah: # $ # % & atau # $ # '

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    14/93

     Jenis Proses Algoritma

    !e6uence 7rocess: instruksi dikerjakansecara sekuensial* berurutan.

    !election 7rocess: instruksi dikerjakan jikamemenuhi kriteria tertentu

    )teration 7rocess: instruksi dikerjakanselama memenuhi suatu kondisi tertentu.

    8oncurrent 7rocess: beberapa instruksi

    dikerjakan secara bersama.

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    15/93

    Sifat Algoritma (Umum)

     Tidak menggunakan simbol atau sintaks darisuatu bahasa pemrograman

     Tidak tergantung pada suatu bahasapemrograman

    9otasi,notasinya dapat digunakan untukseluruh bahasa manapun

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    16/93

    Contoh Algoritma 1

    Mengirim surat kepada teman:. Tulis surat pada secarik kertas surat.

    ;. Ambil sampul surat.

    . 'ika kita ingat alamat teman tersebut* maka

    tulis alamat pada sampul surat.

    ?. 'ika tidak ingat* lihat buku alamat* kemudian

    tulis alamat pada sampul surat.

    @. Tempel perangko pada surat.. 3awa surat ke kantor pos untuk diposkan.

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    17/93

    Contoh Algoritma 2

    Mengupas -entang untuk Makan Malam )bu Tati mengambil kantong kentang dari rak

     )bu Tati mengambil panci dari almari

     )bu Tati mengupas kentang

     )bu Tati mengembalikan kantong kentangdari rak

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    18/93

    Contoh Algoritma 2 (lanjt)

    Ada hal yang BtergantungCpada sesuatu: )bu Tati mengambil kantong kentang dari

    rak

    )bu Tati mengambil panci dari almari

    /akukan persiapan* gunakan celemek*pakaian tergantung hari

    D)bu Tati mengupas kentang

    D)bu Tati mengembalikan kantong kentangdari rak

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    19/93

    Kondisi – dari Alg. 2

    Eari !abtu :DB)bu Tati melihat bahwa bajunya tidak

    berwarna muda karena itu ia tidakmemakai celemekCberarti tidak ada aksi

    memakai celemek$ Eari Minggu:

    DB)bu Tati melihat bahwa bajunya berwarna

    muda karena itu ia memakai celemekC

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    20/93

    Kondisi – dari Alg. 2

     'adi:

     Ambil kantong kentang dari rak

     Ambil panci dari almari

     4epend on warna baju

     berwarna muda : 7akai celemek tidak berwarna muda : Tidak pakai celemek

     -upas kentang

     -embalikan kantong kentang ke rak

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    21/93

    Kondisi – dari Alg. 2

    -arena dapat pesanan* maka kentang ygharus dikupas >FF buah

    Dtergantung pada jumlah kentang yang sudahdikupas

    Dbelum cukup : -upas kentang

    Dcukup : selesai

    Atau:

    Dwhile jumlah kentang terkupas belum cukup do  -upas kentang

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    22/93

    Kondisi – dari Alg. 2

    3isa jadi pada saat mengupas kentang tergantungpada kentangnya* jika rusak G busuk* buang*tidak dikupas

     'adi:

    D 'ika jumlah kentang terkupas belum cukup do

    DTergantung pada kondisi kentang

    D3usuk: buang dan cari kentang berikutnya* tidak

    dihitungDTidak 3usuk: kupas kentang

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    23/93

    Menentukan apakah suatu bilangan merupakan

    bilangan ganjil atau bilangan genap.

    Masukkan sebuah bilangan sembarang

    3agi bilangan tersebut dengan bilangan ;

    Eitung sisa hasil bagi pada langkah ;. 3ila sisa hasil bagi sama dengan F maka

    bilangan itu adalah bilangan genap tetapi bilasisa hasil bagi sama dengan maka bilangan

    itu adalah bilangan ganjil.

    Contoh Algoritma 3

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    24/93

    Contoh 4

    Algoritma menghitung luas persegi panjang: Masukkan panjang 7$

    Masukkan lebar /$

    /uas H7 I /

     Tulis /uas

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    25/93

    Pseudo Code

    -ode atau tanda yang menyerupai pseudo$program atau merupakan pejelasan caramenyelesaikan suatu masalah.

    7seudo,code sering digunakan oleh manusia

    untuk menuliskan algoritma

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    26/93

    Contoh

    7roblem:mencari bilangan terbesar dari duabilangan yang diinputkan

    8ontoh Algoritma:

    Masukkan bilangan pertama

    Masukkan bilangan kedua 'ika bilangan pertama J bilangan kedua maka

    kerjakan langkah =* jika tidak* kerjakan langkah>.

     Tampilkan bilangan pertama Tampilkan bilangan kedua

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    27/93

    Contoh

    8ontoh 7seudo,code: )nput a )nput b

    )f a J b then kerjakan langkah =print aprint b

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    28/93

    Perbandingan

    Algoritma Pseudo-code9ilai A ditambah dengan > A HA K >

    8etak nilai A bila lebih besar dari F )L A J F TE19 7)9T A

    4ari dua bilangan A dan 3* caribilangan yang terbesar

    )L A J 3 TE19 7)9T A 1/!1 7)9T3

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    29/93

    Bagian Program

    !uatu program pada dasarnya terdiri dari

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    30/93

    Langkah Pembuatan Program

    Mendefnisikan masalah )ni merupakan langkah pertama yang sering

    dilupakan orang.

    Menurut hukum Murphy oleh Eenry /edgard$:

    B!emakin cepat menulis program* akan semakinlama kita dapat menyelesaikannyaC.

    Eal tersebut berlaku untuk permasalahan yangkompleks. Tentukan masalahnya* apa saja yang

    harus dipecahkan dengan menggunakankomputer* dan apa inputan serta outputnya.

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    31/93

    Langkah Pembuatan Program

    Menemukan solusi !etelah masalah dide2nisikan* maka langkah berikutnya

    adalah menentukan solusi. 'ika masalah terlalu kompleks*maka ada baiknya masalah tersebut dipecah menjadimodul,modul kecil agar lebih mudah diselesaikan.

    8ontohnya masalah invers matriks* maka kita dapatmembagi menjadi beberapa modul:

    meminta masukkan berupa matriks bujur sangkar

    mencari invers matriks

    menampilkan hasil kepada pengguna

    4engan penggunaan modul tersebut program utama akanmenjadi lebih singkat dan mudah dilihat.

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    32/93

    Langkah Pembuatan Program

    Memilih algoritma 7ilihlah algoritma yang benar,benar sesuai

    dan e2sien untuk permasalahan tersebut

    Menulis program

    7ilihlah bahasa yang mudah dipelajari*mudah digunakan* dan lebih baik lagi jikasudah dikuasai* memiliki tingkat

    kompatibilitas tinggi dengan perangkatkeras dan platform lainnya.

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    33/93

    Langkah Pembuatan Program

    Menguji program

    !etelah program jadi* silahkan uji program tersebutdengan segala macam kemungkinan yang ada* termasukerror,handlingnya sehingga program tersebut akan benar,benar handal dan layak digunakan.

    Menulis dokumentasi

    Menulis dokumentasi sangat penting agar pada suatusaat jika kita akan melakukan perubahan atau membaca

    source code yang sudah kita tulis dapat kita ingat,ingatlagi dan kita akan mudah membacanya. 8aranya adalahdengan menuliskan komentar,komentar kecil tentang apamaksud kode tersebut* untuk apa* variabel apa saja yangdigunakan* untuk apa* dan parameter,parameter yangada pada suatu prosedur dan fungsi.

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    34/93

    Langkah Pembuatan Program

    Merawat program

    7rogram yang sudah jadi perlu dirawat untukmencegah munculnya bug yang sebelumnyatidak terdeteksi. Atau mungkin juga pengguna

    membutuhkan fasilitas baru yang dulu tidakada

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    35/93

    FLOWCHART

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    36/93

    Flowchart 3agan,bagan yang mempunyai arus yang

    menggambarkan langkah,langkah penyelesaian suatumasalah.

    Merupakan cara penyajian dari suatu algoritma. Ada ; macam Llowchart :

    0 !ystem Llowchart   urutan proses dalam system

      dengan menunjukkan alat media input* output serta  jenis media penyimpanan dalam proses  pengolahan data.0 7rogram Llowchart  urutan instruksi yang

      digambarkan dengan symbol tertentu untuk  memecahkan masalah dalam suatu program.

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    37/93

    Flowchart

    4e2nisi:

    3entuk gambarGdiagram yang mempunyaialiran satu atau dua arah secara sekuensial

    -egunaan:

    ntuk mendesain program ntuk merepresentasikan program

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    38/93

    Flowchart

    Maka* o*chart harus dapatmerepresentasikan komponen-komponendalam bahasa pemrograman

    !ebelum pembuatan program

    Mempermudah programmerdalammenentukan alur logika program

    !esudah pembuatan program

    Menjelaskan alur program kepada oranglain

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    39/93

    Simbol-simbol Flowchart

    Flo* Direction +ymbols !imbolpenghubung alur$

    ,rocessing +ymbols !imbol proses$.

    nput-output +ymbols !imbol input,output$

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    40/93

    Flowchart

    !ecara garis besar* unsur,unsurpemrograman adalah Input  Proses Output. Semua bahasapemrograman, pasti mempunaikomponen-komponen sebagaiberikut !

    )nput scanf$ 7ercabangan if* switch$

    7erulangan while* for* for each* loop$

    5utput printf$

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    41/93

    Simbol-simbol Flowchart

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    42/93

    Simbol-simbol Flowchart –Cont.

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    43/93

    Simbol-simbol Flowchart –Cont.

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    44/93

    Simbol-simbol Flowchart –Cont.

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    45/93

    Simbol-simbol Flowchart –Cont.

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    46/93

    Pembuatan Flowchart

     Tidak ada kaidah yang baku. Llowchart N gambaran hasil analisa suatu

    masalah Llowchart dapat bervariasi antara satu

    pemrogram dengan pemrogram lainnya.

    Eindari pengulangan proses yang tidakperlu dan logika yang berbelit sehingga

     jalannya proses menjadi singkat. 'alannya proses digambarkan dari atas

    ke bawah dan diberikan tanda panahuntuk memperjelas.

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    47/93

    Pembuatan Flowchart –cont.

    Selalu dimulai dengan BEGIN:

    3egin

    Jangan lupa

    menggambar garis

    1nd

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    48/93

    Pembuatan Flowchart –cont.

    3egin

    )nputGoutput

    Jangan lupa garis

    Mungkin anda ingin

    berkomunikasi

    dengan pemakai

    Input / Output

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    49/93

    Pembuatan Flowchart –cont.

    3egin

    )nput

    7roses

    Proses

     Anda dpt melakukan

    perhitungan di dlm proses

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    50/93

    Pembuatan Flowchart –cont.

    3egin

    )nput

    7roses

    5utput 1nd

     Anda dapat menampilkan

    hasil di output

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    51/93

    Contoh Flowchart

    7roblem:

    Menghitung

    luaspersegi panjang

    Algoritma

    Masukkanpanjang(p)./asukkanlebar(l)0.1itungluas(2)3

     yaitupanjangkali

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    52/93

    Flowchart bilangan ganjil 1 -100

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    53/93

    Contoh Flowchart

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    54/93

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    55/93

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    56/93

    Exercise

    3agaimana algoritma untuk menukar isi daridua gelasO

    Menghitung usia berdasarkan tahun saja$lahir dan tahun saja$ sekarang

    D)nput: Tahun lahir tl$* Tahun sekarang ts$D7roses : mur N ts 0tl

    D5utput : 8etak mur

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    57/93

    Exercise

    3uatlah Powchart untuk menampilkanderet bilangan berikut :

    * * ;* * * <

    3uatlah Powchart untuk menghitung

    konversi suhu dari fahrenheit ke celciusdan reamur dengan nilai fahrenheitdiinput.

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    58/93

    Primitif Tipe data dan Operator

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    59/93

    Penamaan dalam Java

      'ava classes* methods* dan "ariables  semuanyamempunyai nama.

      7enamaan didalam java boleh memiliki kombinasi dariletters* numbers* dan Underscore  character Q$* tetapikarakter pertama dari penulisan nama haruslah dimulai

    dengan huruf.  7enulisan nama didalam java minimal terdiri dari satukarakter* dan tidak memiliki batasan maksimum.

    #ontoh penulisan nama yang dibolehkan didalam java.

    Eello This)sTest A38 A3; aQ;

    #ontoh penulisan nama yang tidak dibolehkan didalam java.

    4ay Qtoupper dan lain lain

    ditambah dengan reserved keywords

    P dl J

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    60/93

    $asil dari sebuah kon%rensi ! 9ama class java* selalu dimulai dengan huruf besar.

    9ama Methods dan (ariables* dengan huruf kecil.

    9ama 8lass* Methods dan (ariabel jika terdiri dari duaatau lebih suku kata* awal kata ke dua dan seterusnya

    awali dengan huruf besar.

    #ontoh untuk class.

    Eello+orld This)sTest

    #ontoh untuk methods dan variables.get!tring topper8ase status7erkawinan

    Penamaan dalam Java

    P dl J

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    61/93

    Reserved Keywords

    abstract continue float long short try

    boolean default for native static void

    break do goto now super volatile

    byte double if null synchronized while

    case else implements package this

    catch extends import private throw

    char false instanceof protected throws

    class final iInt public transient

    const finally interface return true

    Penamaan dalam Java

    Ti D t

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    62/93

    3ahasa pemrograman java memiliki ; katagoritipe data: primiti&e dan re%erence. !ebuahvariabel dengan tipe primitive memuat sebuahnilai tunggal dengan format dan ukuran yang

    sesuai tipenya. !edangkan eference tipe datamerupakan sebuah tipe data berjenis class* yangdapat memiliki fungsi atau metode.

     Tipe Data

    Ti D t

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    63/93

     Tipe Data PrimitiveKata Kunci Keterangan Size/Format

    (integers)

    byte Byte-length integer 8-bit two's complement

    short Short integer 16-bit two's complement

    int Integer 32-bit two's complement

    long Long integer 64-bit two's complement

    (real numbers)

    float Single-precision floating point 32-bit I !"4

    double #o$ble-precision floating point 64-bit I !"4

    (other types)

    char % single character 16-bit &nicoe character  

    boolean % boolean (al$e )true or false* tr$e or false

     Tipe Data

    TipeData

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    64/93

    Contoh Tipe Data

    1!8   Int

    8864L   long

    37.266 double

    3!+266#   double

    87.363F float

    26+!!e3   double

    '  c '    charTrue boolean

    False boolean

    Secara umum, sederet digit dengan tanpa titik decimal dalam notasi Internasional!

    atau koma decimal notasi Indonesia! ditipekan sebagai sebuah integer" #ita $uga

    dapat menspesifikasi sebuah integer %ong dengan menempatkan &%& atau &l& setelah

    angkanya" &%& ditun$ukkan agar tidak membingungkan dengan digit &'&" Sebuah deretandigit dengan ada sebuah titik desimalnya adalah bertipe double" #ita $uga dapat

    menspesifikasi sebuah float dengan menempatkan &f& atau &(& setelah angka" Sebuah

    karakter harfiah adalah sebuah karakter )nicode tunggal diantara tanda petik" *ua

    karakter +oolean adalah true dan false benar dan salah!

     Contoh Tipe Data Primitive

     Tipe Data

    TipeData

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    65/93

    Arrays* class* dan interface adalah tipe,tipe referensi. 9ilaidari variable tipe referensi* berbeda dengan tipe primitive*adalah sebuah referensi untuk sebuah alamat dari$ nilai ataukumpulan nilai dari nilai,nilai yang ditunjukkan oleh variable.

     Tipe Data Reference

     Tipe Data

    VariabelTipeData

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    66/93

    "ariabel Primiti% adalah variabel dengantipe data primitif. Mereka menyimpan datadalam lokasi memori yang sebenarnya dimana variabel tersebut berada. contoh: int num N FR

    "ariabel re%erence adalah variabel yangmenyimpan alamat dalam lokasi memori yang

    menunjuk ke lokasi memori di mana datasebenarnya berada. contoh: String nama N BadiC

     Variabel Tipe Data

    'onstanta dan "ariabel

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    67/93

    'onstanta  adalah sebuah tempat penyimpanan data didalam memorykomputer yang mana nilai yang ada didalamnya sudah tidak dapat

    berubah selama program dijalankan. !edangkan"ariabel sebaliknya* dimana nilai,nya dapat berubah selama program berjalan.

     Tipe data didalam java* yang tergolong kedalam tipe data primitif :

    Tipe  Bit  Range / ang!auan  Su"#Tipe 

    boolean ' rue or false

    char '- ./u00001 to ./u((((1 2

    byte 3 2'43 5 '46

    Integer 

    short '- 274,6-3 5 74,6-6

    int 74 24,'86,837,-83 5 4,'86,837,-86

    long -8   ‑9,447,764,07-,3:8,66:,303"""9,447,764,07-,3:8,66:,306

    float 74 27"8e;7357"8e;73 (loating

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    68/93

    Integer 'onstanta dan "ariabel  adalah bilangan bulat

    posistif atau negatif dengan range yang sudah disebutkanpada tabel sebelumnya.

    #ontoh yang dibolehkan:

    ;

    F,;?

    SSSSSSSSSS/ GG tipe long

    #ontoh yang tidak diperbolehkan :

    *F;= GG memiliki tanda berkoma

    SSSSSSSSSS GG terlalu besar untuk tipe int(eklarasi &ariabel integer sbb:

    int var* var;R

    short var

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    69/93

    )eal 'onstanta dan "ariabel  adalah bilangan pecahan

    posistif atau negatif dengan range yang sudah disebutkanpada tabel sebelumnya.

    #ontoh yang dibolehkan:

    ;. GG tipe double

    ;1; GG tipe double

    ;.Fe; GG tipe doubleSL GG tipe Poat

    #ontoh yang tidak diperbolehkan :

    *F;=.F GG memiliki tanda berkoma

    .;eFL GG terlalu besar untuk tipe Poat(eklarasi &ariabel real sbb:

    double xR

    Poat pi N SL R

    'onstanta dan "ariabel

    'onstanta dan "ariabel

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    70/93

    boolean 'onstanta dan "ariabel adalah data yang berisinilai dua kemungkinan* yaitu nilai benar atau salah.

    #ontoh yang dibolehkan:

    true

    false

    (eklarasi &ariabel boolean sbb:boolean test N falseR

    character 'onstanta dan "ariabel  adalah character danstring didalam java menggunakan unicode character

    set. 4imana disimpan didalam bentuk ? bit memori*yang memungkinkan menyimpan sebanyak ?>*>

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    71/93

    #ontoh yang dibolehkan:

    aU U BabcC B8C

    (eklarasi &ariabel char sbb:

    char test N AUR

    string test N Cniversitas espati VogyakartaCR

    'onstanta dan "ariabel

    'onstanta dan "ariabel

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    72/93

    'eeping #onstants #onsisten in a Program  adalah bagaimanamembentuk nilai konstanta menjadi tetap dan tidak dapat berubahsepanjang program berjalan. ntuk itu dapat dilakukan denganmenggunakan keyword B2nalC didepan tipe data dari sebuahkonstanta. 4an nama constanta menggunakan huruf besar semua

    #ontoh program sbb:. public class 8onstant %

    ;. public static void main!tring"# args$ %

    . &

    ?. &

    Easilnya sbb:

    ;Ipi N ?.;

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    73/93

    *atihan !

    7ertanyaan 0 jawablah dengan pernyataan valid atautidak valid dan berikan alasannya kalau tidak valid.

    . F.F >. ,FF*FFF

    ;. ; ?. TU

    F.R =.?>1K<

    F. ,;.@R ,.;@1

    . F.FFFR .Fe=7ertanyaan ; 0 >* apakah valid atau tidak penulisannama berikut* jika tidak berikan alasannyaO

    ;. is(ector =. ;nd8hance

    . M)9Q4)!TA981

    'onstanta dan "ariabel

    'onstanta dan "ariabel

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    74/93

    *atihan !

    7ertanyaan berikut* jawablah dengan pernyataan validatau tidak valid dan berikan alasannya kalau tidak valid*untuk penulisan deklarasi variabel dan konstanta berikut.

    ?. int 2rst)ndex N ;FR@. Linal short MAXQ859T N FFFFFR

    . 8har test N BVCR

    7ertanyaan terakhir* apakah legal atau tidak programdibawah ini* jika legal apa hasil dari program tersebut* jikatidak dimana letak kesalahannyaO

    int )* jR

    2nal int k N =R

    ) N k I kR

     j N ) G kR

    k N ) K jR

    'onstanta dan "ariabel

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    75/93

    Operator

    5perator merupakan simbol yang biasadigunakan dalam menulis suatu penyataanstatement $ dalam bahasa pemrogramanapapun. 5perator akan melakukan suatu

    operasi terhadap operand sesuai denganfungsinya. 8ontoh operasi antara lainpenjumlahan* pengurangan* pembagian dansebagainya.

    < K I =

    < = adalah operand

    K I adalah 5perator

    Operator

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    76/93

    5perator ini adalah operator yang paling sederhana dan hanyadilambangkan dengan karakter UNU. 5perator ini digunakan untukmenugaskan suatu nilai ke suatu variabel. 8ontoh :

     int hitung N =R

    yang unik dari operator ini dalam 'ava adalah kita dapatmenggunakan operator ini secara berantai dalam suatu ekspresi*contoh:

    int a* b* cR

    a N b N c N SSR

    3entuk mumnya sebagai berikut:variableQname N expressionR

    aitu : menyimpan nilai dari expression ke dalam variableQname

    =perator

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    77/93

    5perator ini digunakan dalam ekspresi matematika. 3erikut ini daftar operatormatematika yang dikenal dalam 'ava:

    9ilai dari ekspresi dapat berupa proses kalkulasi matematik dimana kita sebut denganassignmnet operator. 8ontoh

    a = a + 10

    =perator Matematika

    Type Sym"ol $lge"rai% E&pression ava E&pression

     Additon ; a ; b a ; bSubtraction 2 a > b a > b

    Multiplication ? ab a?b

    *ivision @ a @ b or a b a @ b

    Modulus Bemainder! C a mod b a C b

    Operator

    Operator

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    78/93

    !uperioritas 5perator.. 5perator dapat dikombinasikan ke dalam ekspresi yang kompleks

    result = total + count / max - offset;

    ;. 5perator memiliki superioritas yang terde2nisi secara baik* yangmenentukan urutan mereka dievaluasi

    . -urung dapat digunakan untuk memaksa urutan evaluasi

    8ontoh :a + b + c + d + e

    1 432

    a + b * c - d / e

    3 241

    a / (b + c) - d % e

    2 341

    a / (b * (c + (d - e)))

    4 123

    Operator

    Operator

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    79/93

    9umeric 7romotion of 5perands

    Adalah sebuah aturan dari hasil sebuah perhitunganmatematik dimana atruran tersebut adalah:

    .  'ika dalam operand tersebut terdapat nilai double maka operand lainakan di konvert ke nilai double

    ;. !elain itu* jika dalam operand tersebut terdapat nilai Poat maka operandlain akan di konvert ke nilai Poat.

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    80/93

    )lustrasi 7rogram. public class Test7romotion %;. public static void main!tring"# args$ %

    . !ystem.out.println K .FG=$R

    ?. &

    @. &

     +ika dikompile dan dijalankan akan menghasilkan sbb!

    8:YJjavac Test7romotion.java

    8:YJjava Test7romotion

    .F

    .;>

    Operator

    Operator

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    81/93

    Assignment 8onversion , 8asting8onversion

     Terkadang kita perlu melakukan Assignment 8onversion konversiterhadap data dari satu tipe data ketipe data yang lain$* konversiharus dilakukan secara hati,hati* untuk menhindari terjadinyakehilangan data. Adapun jenis assignment conversion ini adalah

    . idening #on&ersion : perubahan dilakukan dari tipe data yang

    kecil ketipe data yang lebih besar. 8ontoh :int x N =R

    double yR

    y N xR GG legal y N =.F

    . /arrowing #on&ersion : perubahan dilakukan dari tipe data yang

    besar ketipe data yang lebih kecil. 8ontoh :

    int xR

    double yN.;>R

    x N yR GG illegal* karena y bilangan pecahan.

    Operator

    Operator

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    82/93

    ntuk mengatasi masalah tersebut* maka perlu dilakukan

    pemaksaan tipe data dengan menggunakan teknik B8astingC* yaitudengan memberikan tipe data lain pada data yang ingin dirubahtipenya.

    8ontoh :

    x N int$ yR

    #ontoh Program sbb:. public class Test8ast %

    ;. public static void main!tring"# args$ %

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    83/93

    *atihan !

    7erhatikan potongan program dibawah ini* legal atau tidak*hasil dari potongan program tersebut. 'ika legal hasilnyaseperti apa* jika tidak baris mana yang salah* dan berikansolusinya.

    . int x N ?* y N

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    84/93

     'ava juga memiliki spesial assingment operators dengan

    mengkombinasikan assignment dengan binary operator menjadi sebuahekpresi tunggal.

    . Assignment Statement

    a N a K >R

    dapat digantikan dengan menggunakan Addition assignmentoperator KN. !ehingga dituliskan sbb:

    a KN >R

    . Arithmatic Assignment Operators

    $ssignment Operators Sample E&pression E&panded E&pression Result

     AssumeD int a E 7, b E ''F

    ;E a ;E 7 a E a ; 7 -

    2E a 2E 4 a E a > 4 '

    ?E a ?E 8 a E a ? 8 '4

    @E a @E 4 a E a @ 4 '

    CE b CE 7 b E b C 7 4

    Assignment !tatement W Assignment5perator

    Operator

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    85/93

    5perator )ncrement dan 4ecrement 'ava memiliki unary )ncrement 5perator KK$ dan unary

    4ecrement 5perator ,,$. 3iasanya data disimpan dalam bentukpenambahan nilai integer dengan satu.

    3ila anda perhatikan maka pernyataan ini akan sama maknanya*walaupun menggunakan cara yang berbeda,beda.

    c N c K Rc KN R

    cKKR

     Tabel : )ncrement and 4ecrement 5perator

    Operator Sample E&pression E&panded E&pression Result

    preincrement ;;a Gasil cetak setelah a ditambah '

    postincrement a;; Gasil cetak sebelum a ditambah '

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    86/93

    8ontoh 7rogram :

    . public class Test)ncrement %

    ;. public static void main!tring"# args$ %

    . !ystem.out.println Bi N B K i $R?. !ystem.out.println BkN B K k $R

    @.

    . k N ,,i K ; I i I iKKR

    S. !ystem.out.println Bi N B K i $R

    F. !ystem.out.println BkN B K k $R

    . &

    ;. &

    Easilnya :=;=

    ;

    5perator )ncrement dan 4ecrementOperator

    Operator

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    87/93

    Apabila ; operand bernilai boolean 8ontoh A dan 3$ dan keduanya digunakandalam operasi A94* 5* X5* dan 95T maka nilai yang dihasilkan antara lain: 5perasi A94 hanya akan menghasilkan nilai true apabila kedua operand A dan 3$

    bernilai trueR 5perasi 5 hanya akan menghasilkan nilai false apabila kedua nilai operand falseR

    5perasi X5 hanya akan menghasilkan nilai true apabila salah satu operand,nya bukankedua,duanya$ bernilai trueR sedangkan

    5perasi 95T akan menghasilkan negasi atau kebalikan dari nilai sebelumnya.

    /ogika

    Operator

    Operator

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    88/93

    )elational and *ogical Operator adalah dua buah type operator yangmenghasilkan nilai boolean true atau false. 3iasanya digunakan untukmengontrol banyak pengulangan dan struktur percabangan didalam

     java.

     Tabel elational 5perators:

    Operator Sample E&pression 'eaningBelatinal operatorsD

    H

    HE

    E

    x H y

    x y

    x HE y

    x E y

    rue if x H y

    rue if x H y

    rue if x y

    rue if x K y

    Luality operatorsD

    EE

    NE

    x EE y

    x NE y

    rue if x E y

    rue if x O y

    elasi

    Ope a o

    C thP g

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    89/93

    Contoh Program:

    . public class TestAnd %

    ;. public static void main!tring"# args$ %. test N i J F WW jKK J FR

    ?. !ystem.out.printlni$R

    @. !ystem.out.printlnj$R. !ystem.out.printlntest$R

    S.

    F. test N i J F W jKK J FR

    . !ystem.out.printlni$R

    ;. !ystem.out.printlnj$R

    . &

    Operator

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    90/93

    O: merupakan operator ternary. !intaksR exp O 1xp; : exp<

    5perator kondisi O:$

    p

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    91/93

    Standard Input and Output

    7ada bahasa pemrograman selalu digunakan sesuatu untuk

    membaca data untuk diproses* dan menulis kembali dalambentuk cetakan setelah memperoleh sebuah hasil. )ni lahyang kita sebut standart input dan output.

    7emrograman java memiliki tiga standar input dan outputobjek. Vaitu:

    . !ystem.in : merepresentasikan standard input stream*biasanya melalui keyboard.

    ;. !ystem.out  : merepresentasikan standard output stream*biasanya melalui layar monitor.

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    92/93

    Standard Input and Output

    sing the standard input stream:

    4igunakan untuk membaca data dari keyboard* atau darimedia input lainnya. Membaca data menggunakan metodestandar java sangatlah komplek. 7ada kesempatan ini kitaakan mencoba menggunakan class 3uZeredeader  dengan)nput!treameader  untuk membaca data pada program,

    program berikut.ntuk menggunakan class ini dan metode yang terdapatdidalamnya haruslah mengimport paket  java.io  kedalamprogram yang kana dibuat.

    Metoda ang digunakan sbb!  read/ine$

    #ontoh penggunaan sbb!  3uZeredeader stdin  N new 3uZeredeadernew

    )nput!treameader!ystem.in$$R[[[

    stdin.read/ine$R

    StandardInputandOutput

  • 8/15/2019 2- ALGORITMA_ FLOWCHART_ TIPE DATA_ OPERATOR.pptx

    93/93

    Standard Input and Output'" import $ava"io"?F

    4" public class BeadStdIn P

    7" public static void mainStringQR args! throws I=Lxception P

    8" double v'F int i'F float b'F:" +ufferedBeader stdin E new +ufferedBeadernew

    InputStreamBeaderSystem"in!!F

    -" try P

    6" System"out"printlnLnter a double valueD !F

    3" v' E *ouble"parse*oublestdin"read%ine!!F

    9" System"out"printlnTalue E ; v'!F'0" System"out"printlnLnter a int valueD !F

    ''" i' E Integer"parseIntstdin"read%ine!!F

    '4" System"out"printlnTalue E ; i'!F

    '7" System"out"printlnLnter a float valueD !F

    '8" b' E (loat"parse(loatstdin"read%ine!!F

    ':" System"out"printlnTalue E ; b'!F

    '-" U'6" catchLxception e! P

    '3" System"out"printlnLrror D ; e!F

    '9" U

    40" U