pemrogramanterstruktur-02.ppt

Upload: richardon-shynaga

Post on 08-Jul-2018

217 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    1/37

    1

    Pertemuan 2

    Pemrograman Terstruktur 

    Gambaran Umum Komputer dan

    Pemrograman

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    2/37

    2

    Komputer Elektronik

    • Komputer pertama dibuat pada akhir tahun 1930oleh Dr !ohn "tanaso## dan $li##ord %err& di'o(a )tate Uni*ersit&

    • Komputer +general,purpose- pertama diberi

    nama E.'"$ selesai dibangun pada tahun 19/di Uni*ersit& o# Penns&l*ania denganpendanaan dari U) "rm&

    • Teknologi )emikonduktor 

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    3/37

    3

    • Elemen sistem komputer dikelompokkan

    menadi dua  4ard(aretermasuk $entral Pro5essing Unit 6$PU78monitor8 ke&board8 printer8 dan lain,lain

      )o#t(are• Tahap "(al8 pen&usunan program 6programming7

    dilakukan dengan men&usun instruksi berupa deretanbilangan biner 60 dan 17

    • )ekarang8 programming dilakukan dengan 5ara lebihmudah dengan menggunakan bahasa pemrogramantingkat tinggi8 seperti Pas5al8 $8 %asi58 dan lain,lain

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    4/37

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    5/37

    :emori

    • :emori terdiri atas ban&ak sel:asing,masing sel memiliki alamatdan isi 

     "lamat mengidenti#ikasi lokasisetiap sel di dalam memori 'si merepresentasikan data &ang

    tersimpan dalam sel memori

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    6/37

    • :emori utama men&impan baikprogram maupun data "da dua tipe

    memori utama ;andom "55ess :emori 6;":7

     ;ead,

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    7/37

    =

    $entral Pro5essing Unit 6$PU7

    • $PU memiliki dua peran  :engkoordinasi semua operasi komputer 

    • Untuk memproses program &ang tersimpan di memoriutama8 $PU melakukan langkah,langkah berikut

      menemput rangkaian instruksi sesuai dengan urutann&a

     :enginterpretasikan instruksi dan menentukan apa saa &angseharusn&a dilakukan

      :enemput data ika dibutuhkan

      :elakukan manipulasi terhadap data dengan operasi &angsesuai

      :elakukan operasi aritmetika dan logika•

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    8/37

    >

    Peralatan 'nput?

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    9/37

    9

    !aringan Komputer 

    • )eringkali beberapa komputer dihubungkan dalam suatu aringan komputer8sehingga user,user komputer bisa mengakses se5ara bersama hard disk8printer8 maupun resour5e &ang lain

    • Komputer &ang mengontrol akses terhadap resour5e &ang digunakanse5ara bersama disebut ser*er

    • !ika komputer,komputer &ang terhubung han&a men5akup area lokal8

    misaln&a dalam satu gedung8 maka aringan tersebut disebut aringankomputer lokal 6lo5al area net(ork?A".7

    • Komputer,komputer &ang terhubung bisa uga men5akup area di seluruhdunia8 misaln&a utaan komputer di seluruh dunia dapat mengakses se5arabersama sistem mail elektronik !aringan mendunia seperti ini disebutinternet

    • Komputer di rumah pun bisa terhubung ke internet melalui modem dansaluran telepon :odem 6modulator?demodulator7 adalah alat &ang dapatmengkon*ersi data komputer biner ke dalam tone audio8 &ang selanutn&abisa ditransmisikan ke komputer lain melalui saluran telepon Di komputerpenerima8 data dikon*ersi oleh modem ke dalam bentuk data biner supa&abisa diproses lebih lanut

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    10/37

    10

    Gambaran Umum %ahasa

    Pemrograman• %ahasa pemrograman &ang digunakan untuk menulis program

    komputer dapat dikelompokkan menadi dua8 &aitu  %ahasa mesin  %ahasa tingkat tinggi

    • %ahasa pemrograman &ang dimengerti oleh komputer adalah

    bahasa mesin )etiap instruksi bahasa mesin terdiri dari rangkaianbilangan biner 0 dan 1 )ebagai 5ontoh8 untuk merepresentasikanrumus berikut

    TotalBhargaBbarang C harga barang paak

    Program bahasa mesin &ang harus ditulis adalah0010 0000 0000 0100

    0100 0000 0000 0101

    0011 0000 0000 0110

    Pada 5ontoh instruksi di atas8 baik enis operasi &ang dilakukan maupunalamat dari data,data &ang digunakan8 semua din&atakan dalam bilanganbiner %ahasa seperti ini8 meskipun sangat mudah dipahami oleh komputer8tetapi sangat sulit dipahami oleh manusia

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    11/37

    11

    • Dalam bahasa tingkat tinggi8 instruksi,instruksi &angdigunakan mirip dengan bahasa &ang digunakanmanusia sehari,hari $ontoh instruksi dalam bahasatingkat tinggi

    TotalBhargaBbarang C harga barang paak

    'nstruksi tersebut berarti +:enambah nilai hargaBbarangdengan paak8 serta men&impan hasiln&a di dalamtotalBhargaBbarang-

    Pada 5ontoh di atas8 enis operasi &ang dilakukan ditulisdengan simbol F8 dan alamat dari data &ang digunakandin&atakan dengan nama deskripti# 6hargaBbarang8paak8 totalBhargaBbarang7

    • )uatu bahasa tingkat tinggi memiliki standard bahasa&ang mendeskripsikan aturan 6s&ntaH7 dari bahasatersebut )etiap instruksi &ang ditulis menggunakanbahasa tingkat tinggi harus mematuhi s&ntaH &ang telahditetapkan

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    12/37

    12

    BahasaTingkat

    Tinggi

    Tujuan Awal

    $ Untuk menulis so#t(are sistem

    $ Perluasan dari $ &ang uga mendukung pemrogramanberorientasi ob&ek

     "da %ahasa &ang digunakan di Departemen Pertahanan "merikauntuk mengembangkan sistem terdistribusi real time

    Aisp Untuk menulis aplikasi ke5erdasan buatan

    Pas5al Untuk melatih pelaar menulis program se5ara hati,hati danterstruktur 

    Iortran Untuk menulis aplikasi teknik dan sains

    %asi5 %ahasa sederhana untuk dipelaari di sekolah,sekolah

    $obol Untuk menulis aplikasi pengolahan data bisnis

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    13/37

    13

    • Keban&akan bahasa pemrograman digunakan untuk

    menulis so#t(are aplikasi8 &aitu so#t(are &angmelakukan tugas,tugas user )ebagai 5ontoh aplikasiperhitungan gai8 aplikasi pemesanan tiket pesa(at8 dll

    • %ahasa $ dan $8 selain digunakan untuk menulisso#t(are aplikasi8 uga bisa digunakan untuk menulis

    so#t(are sistem8 &aitu so#t(are &ang melakukan tugas,tugas &ang diperlukan agar operasi dari sistem komputerbisa beralan dengan baik

    • Karena komputer han&a bisa mengerti bahasa mesin8

    maka program &ang ditulis dalam bahasa tingkat tinggi6sour5e program?program sumber7harus ditranslasi kedalam bahasa mesin 6obe5t program?program obek7sebelum dieksekusi

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    14/37

    T 'n#ormatika8 PTB1 1/

    Langkah-Langkah Penyiapan Program

    dalam BTT

    Menulis program dan menyimpannya

    sebagai source fle (fle sumber)

    Compiler mentranslasi program

    Linker menggabungkan fle obek yang baru dengan fle!fle obek yang lain

    Loader menempatkan flee"ecutable ke dalam memori

    #ile Sumber

    #ile Obek baru

    #ile $"ecutable

    #ile Obek lain

    %e&isi #ileSumber

    Program e"e!cutable adadi memori

    Pembetulan synta" erro

    'atar kesalaan

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    15/37

    T 'n#ormatika8 PTB1 1

    Langkah-Langkah Penyiapan Program

    dalam BTT

    Menulis program dan menyimpannya

    sebagai source fle (fle sumber)

    Compiler mentranslasi program

    Linker menggabungkan fle obek yang baru dengan fle!fle obek yang lain

    Loader menempatkan flee"ecutable ke dalam memori

    #ile Sumber

    #ile Obek baru

    #ile $"ecutable

    #ile Obek lain

    %e&isi #ileSumber

    Program e"e!cutable adadi memori

    Pembetulan synta" erro

    'atar kesalaan

    Menggunakan programeditor*pengola kata

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    16/37

    T 'n#ormatika8 PTB1 1

    Langkah-Langkah Penyiapan Program

    dalam BTT

    Menulis program dan menyimpannya

    sebagai source fle (fle sumber)

    Compiler mentranslasi program

    Linker menggabungkan fle obek yang baru dengan fle!fle obek yang lain

    Loader menempatkan flee"ecutable ke dalam memori

    #ile Sumber

    #ile Obek baru

    #ile $"ecutable

    #ile Obek lain

    %e&isi #ileSumber

    Program e"e!cutable adadi memori

    Pembetulan synta" erro

    'atar kesalaan

    Menggunakanprogramcompiler

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    17/37

    T 'n#ormatika8 PTB1 1=

    Langkah-Langkah Penyiapan Program dalam

    BTT

    Menulis program dan menyimpannya

    sebagai source fle (fle sumber)

    Compiler mentranslasi program

    Linker menggabungkan fle obek yang baru dengan fle!fle obek yang lain

    Loader menempatkan flee"ecutable ke dalam memori

    #ile Sumber

    #ile Obek baru

    #ile $"ecutable

    #ile Obek lain

    %e&isi #ileSumber

    Program e"e!cutable adadi memori

    Pembetulan synta" erro

    'atar kesalaan

    Menggunakan prograeditor*pengola kata

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    18/37

    1>

    Langkah-Langkah Penyiapan Program dalam BTT

    Menulis program dan menyimpannya

    sebagai source fle (fle sumber)

    Compiler mentranslasi program

    Linker menggabungkan fle obek yang baru dengan fle!fle obek yang lain

    Loader menempatkan flee"ecutable ke dalam memori

    #ile Sumber

    #ile Obek baru

    #ile $"ecutable

    #ile Obek lain

    %e&isi #ileSumber

    Program e"e!cutable adadi memori

    Pembetulan synta" erro

    'atar kesalaan

    Menggunakanprogramcompiler

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    19/37

    19

    Langkah-Langkah Penyiapan Program dalam BTT

    Menulis program dan menyimpannya

    sebagai source fle (fle sumber)

    Compiler mentranslasi program

    Linker menggabungkan fle obek yang baru dengan fle!fle obek yang lain

    Loader menempatkan flee"ecutable ke dalam memori

    #ile Sumber

    #ile Obek baru

    #ile $"ecutable

    #ile Obek lain

    %e&isi #ileSumber

    Program e"e!cutable adadi memori

    Pembetulan synta" erro

    'atar kesalaanMenggunakanprogram

    linker

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    20/37

    T 'n#ormatika8 PTB1 20

    Langkah-Langkah Penyiapan Program dalam BTT

    Menulis program dan menyimpannya

    sebagai source fle (fle sumber)

    Compiler mentranslasi program

    Linker menggabungkan fle obek yang baru dengan fle!fle obek yang lain

    Loader menempatkan flee"ecutable ke dalam memori

    #ile Sumber

    #ile Obek baru

    #ile $"ecutable

    #ile Obek lain

    %e&isi #ileSumber

    Program e"e!cutable adadi memori

    Pembetulan synta" erro

    'atar kesalaan

    Menggunakanprogramloader

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    21/37

    21

    • Dalam %orland $8 semua program &ang

    dibutuhkan untuk men&usun #ile

    eHe5utable dengan menggunakan %TT

    sudah tersedia dalam suatu lingkunganpengembangan program &ang terpadu

    6integrated de*elopment en*ironment7

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    22/37

    22

     "liran 'n#ormasi )elama Eksekusi

    Program

    Program baasa mesinuntuk mengitungtagian air

    'ata dimasukkan padasaat eksekusi program

    +asil peritungan

    CPU'ata input,+asil pembacaanmeteran

    'ata output,-iaya .agianair

    Memori

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    23/37

    23

    :etode Pengembangan

    )o#t(are

    • Pemrograman adalah suatu akti#itas peme5ahanmasalah

    • :etode peme5ahan masalah dibahas pada berbagaibidang

    • Aangkah,langkah dalam metode pengembanganso#t(are1 :enspesi#ikan kebutuhan masalah

    2 :enganalisis masalah

    3 :eran5ang?mendesign algoritma untuk

    men&elesaikan masalah/ :engimplementasikan algoritma

    :entest dan mem*eri#ikasi program

    :emelihara dan meng,update program

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    24/37

    2/

    1 )pesi#ikasi :asalah

    • Kita harus dapat menspesi#ikasikan masalahdengan elas dan tidak umbiguous dan memilikipemahaman &ang elas mengenai apa &angdiperlukan untuk men&elesaikan masalahtersebut

    • Kita harus dapat mengeliminasi aspek,aspek&ang tidak penting dari masalah

    • Dalam langkah ini8 kita mungkin membutuhkanin#ormasi dari orang,orang &ang terlibat dalammasalah tersebut

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    25/37

    2

    2 "nalisis

    • Kita harus dapat mengidenti#ikasi masalah berkaitandengan  'nput 

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    26/37

    2

    • $ontoh

    Problem 4itung dan tampilkan total harga apel ika umlah kg

    apel &ang dibeli dan harga perkg apel diketahuiAnalisis

    J

    Input

    J

    OutputJ

    Solusi 

    • Proses pemodelan suatu masalah dengan 5ara mengekstrak*ariabel,*ariabel penting dan hubungan di antara *ariabel,*ariabel disebut

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    27/37

    2=

    3 Design

    • Dalam tahap design8 kita men&usun algoritma danmem*eri#ikasi apakah algoritme &ang kita susundapat men&elesaikan masalah sesuai dengan &angkita inginkan

    • !angan berusaha se5ara langsung untuk

    men&elesaikan masalah se5ara detail pada saatmeran5ang algoritme Gunakan pendekatan topdo(n design 6disebut uga di*ide and 5onuer78&aitu pendekatan &ang dimulai dengan menda#tarlangkah,langkah utama atau submasalah &ang

    diperlukan untuk men&elesaikan masalah utama8selanutn&a diikuti dengan men&usun pen&elesaianuntuk setiap submasalah

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    28/37

    T 'n#ormatika8 PTB1 2>

    • 4ampir setiap algoritme komputer terdiri dari

    submasalah berikut  :emasukkan data  :elakukan perhitungan  :enampilkan hasil

    • Proses pen&usunan langkah,langkah pen&elesaianuntuk setiap submasalah &ang berhasil diidenti#ikasidisebut penghalusan algoritme 6algorithmre#inement7

    • Untuk mem*eri#ikasi algoritme dilakukan desk5he5king8 &aitu pemeriksaan setiap langkah dalamalgoritme dengan 5ara mensimulasikan hasileksekusi algoritme dengan perhitungan manual

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    29/37

    T 'n#ormatika8 PTB1 29

    / 'mplementasi

    • Pada tahap ini dilakukan penulisan

    program8 &aitu mengkon*ersi algoritme

    &ang disusun pada tahap sebelumn&a ke

    dalam bahasa pemrograman &ang dipilih

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    30/37

    T 'n#ormatika8 PTB1 30

    Testing

    • )etelah program sudah bisa dieksekusi8

    dilakukan pengetesan program dengan

    berbagai ma5am data8 sehingga bisa

    di*eri#ikasi bah(a program sudah bekerasesuai dengan kebutuhan pada berbagai

    situasi &ang mungkin dihadapi oleh

    program

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    31/37

    T 'n#ormatika8 PTB1 31

    Pemeliharaan 6maintenan5e7

    • Pemeliharaan dan peng,update,an program men5akupmodi#ikasi program untuk menghilangkan error &angsebelumn&a tidak terdeteksi dan untuk menaga agarprogram tetap up,to,date 6sesuai7 dengan kebiakanpemerintah ataupun dengan perubahan kebiakan

    oganisasi

    • %eberapa organisasi melakukan pemeliharaan programsetiap tahun sekali atau lebih8 dan seringkalipemeliharaan program dilakukan oleh orang &angsebelumn&a tidak terlibat dalam pengembanganprogram tersebut

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    32/37

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    33/37

    33

    • Design

     "lgoritme a(al 1 :asukkan arak dalam mil

    2 Kon*ersi arak dari mil ke kilometer 

    3 Tampilkan hasil dalam kilometer 

    Penghalusan algoritme

    1 :asukkan arak dalam mil

    2 Kon*ersi arak dari mil ke kilometer 

    21 !arak dalam kilometer adalah 109 kali arak dalam mil

    3 Tampilkan hasil dalam kilometer 

    $ontoh desk 5he5k terhadap algoritma Pada langkah 18 dimasukkan arak 10 mil8 langkah 21akan mengkon*ersin&a menadi 109 H 10 menadi109 kilometer 4asil ini akan ditampilkan di langkah 3

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    34/37

    T 'n#ormatika8 PTB1 3/

    • 'mplementasi ?N Kon*ersi arak dari mil ke kilometer N?

    Oin5lude stdiohM ?N de#inisi print#8 s5an# N?

    Oin5lude K:BPE;B:'A 109 ?Nkonstanta kon*ersi N?

    int main6*oid7 Qdouble mil8 ?Ninput arak dalam milN?

      km ?Noutput arak dalam kmN?

    ?N memasukkan arak dalam mil N?

    print#6+:asukkan arak dalam mil +7s5an#6+Rl#-8 Smil7

    ?N kon*ersi arak ke kilometer N?

    km C K:BPE;B:'A N mil

    ?N tampilkan arak dalam kilometer N?

    print#6+4asil kon*ersi adalah Rl# kilometern-8 km7

    return607

    $ontoh hasil runing program :asukkan arak dalam mil 1000

    4asil kon*ersi adalah 1090000 kilometer 

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    35/37

    T 'n#ormatika8 PTB1 3

    • PengetesanUntuk mem*eri#ikasi bah(a program

    sudah beralan sesuai dengan kebutuhan8

    5obalah mentest program denganmemasukkan beberapa arak dalam mil

    &ang lain

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    36/37

    T 'n#ormatika8 PTB1 3

    )tudi Kasus

    • Problem

    )uatu dealer min&ak menampung min&ak ualann&a didalam drum,drum )ementara semua pembeli selalumembeli min&ak dengan memba(a (adah &ang samaberupa erigen Pemilik dealer agak kesulitan untukmenghitung harga min&ak &ang dibeli oleh pembeli8karena pembeli selalu membeli min&ak dengan satuan

     erigen 6misaln&a 3 erigen8 atau 3 erigen78 sementaraharga ual &ang diketahui adalah rupiah per drum8 &aitu100000 rupiah per drum Diketahui bah(a 1 erigen

    isin&a sama dengan 1?20 drum %isakah andamembantu pemilik dealer untuk memudahkanperhitungan harga total min&ak &ang diual ke setiappembeliJ

  • 8/19/2019 PemrogramanTerstruktur-02.ppt

    37/37

    T 'n#ormatika PT 1 3=

    ;e#erensi

    • %ab 18 +