480 likes | 717 Views
KONSEP DASAR PEMROGRAMAN KOMPUTER DAN Algoritma. Pertemuan 01. Dasar Pemrograman Komputer [T KL-4002 ] 20 10. Learning Outcomes. Pada akhir pertemuan ini , diharapkan mahasiswa akan mampu :
E N D
KONSEP DASAR PEMROGRAMAN KOMPUTER DAN Algoritma Pertemuan 01 Dasar Pemrograman Komputer [TKL-4002 ] 2010
Learning Outcomes Padaakhirpertemuanini, diharapkanmahasiswa akanmampu : • Memahamikonsep dasar pemrograman komputer, algoritmadantahapanpembuatanalgoritmapemrogramankomputerterstruktur.
Outline Materi • Konsep Dasar Pemrograman • DefinisiAlgoritma • TahapPengembanganAlgoritma • Penyajianalgoritma • Pseudocode • Flow Chart • PemrogramanTerstruktur
Rujukan Brian W. Kernighan, Dennis M. Ritchie (1988). The C Programming Language,Second Edition,Prentice Hall Deitel, H.M. and Deitel, P.J. (2001). C HOW TO PROGRAM. 3rd edition. Prentice Hall, NJ. Gottfried, B.S. (1996). Schaum’s Outline Series. Theory and Problems of Programming with C. McGraw Hill, NY. Ngoen. Th. S. (2004). PengantarAlgoritmadenganBahasa C.PenerbitSalembaTeknika. Sedgewick, R. (1992). Algorithms in C++.Addison Wesley.
Konsep Dasar Pemrograman Komputer COMPUTER TO – COMPUTE + ER (Menghitung/Mengolahbilangan) (Mengolah Data) Nilai Data Nilai Data PUSAT PENGOLAH DATA Data ygDiolah Data hasilpengolahan (berbasisArithmatikadanLogika) (Masukan/Input) (Keluaran/Output) Penyimpanan Data
DefinisiAlgoritma Algoritmaadalahsekumpulanlangkah-langkahterbatasuntukmencarisolusisuatumasalah. Berasaldarikataalgorisdanritmis. AwalnyadiungkapkanolehAl Khowarizmi. Di pemrograman, algoritmadidefinisikansebagaimetode yang terdiridarilangkah-langkahterstukturuntukmencarisolusisuatumasalahdenganbantuankomputer.
TAHAP PENGEMBANGAN ALGORITMA MASALAH / IDEA PEMECAHAN SOLUSI / HASIL Source Code Executable Code Algoritma
TAHAP PENGEMBANGAN ALGORITMA DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGORITMA TULIS PROGRAM COMPILE Y Sintak Err T Executable code: => Run Y Output Err T DOKUMEN TASI
TAHAP PENGEMBANGAN ALGORITMA RANCANG ALGORITMA DEFINISI MASALAH MEMBUAT MODEL TULIS PROGRAM COMPILE Masalah: Tentukanakar-akardarisuatupersamaankwadrat. Definisi: Persamaankwadrat : ax^2 + bx + c = 0 Data ygdiperlukan : Nilaidaria, b dan c : tipe real Sintak Err Executable code: => Run Output Err DOKUMEN TASI
TAHAP PENGEMBANGAN ALGORITMA RANCANG ALGORITMA DEFINISI MASALAH MEMBUAT MODEL TULIS PROGRAM COMPILE Sintak Err Model Matematika : Rumus ABC x1 = (-b + sqrt(b^2 - 4ac))/2a x2 = (-b – sqrt(b^2 - 4ac))/2a Executable code: => Run Output Err DOKUMEN TASI
TAHAP PENGEMBANGAN ALGORITMA RANCANG ALGORITMA DEFINISI MASALAH MEMBUAT MODEL TULIS PROGRAM Start COMPILE Masukkana,b,c Sintak Err d = b^2 – 4ac d < 0 Executable code: => Run Y T Cetak: “Akarmajiner” x1=(-b+sqrt(d))/2a x2 =(-b-sqrt(d))/2a Output Err Cetak: x1, x2 DOKUMEN TASI Stop
TAHAP PENGEMBANGAN ALGORITMA RANCANG ALGORITMA DEFINISI MASALAH MEMBUAT MODEL TULIS PROGRAM COMPILE Sintak Err Executable code: => Run Output Err DOKUMEN TASI
TAHAP PENGEMBANGAN ALGORITMA RANCANG ALGORITMA DEFINISI MASALAH MEMBUAT MODEL TULIS PROGRAM COMPILE Sintak Err Executable code: => Run Output Err DOKUMEN TASI
TAHAP PENGEMBANGAN ALGORITMA RANCANG ALGORITMA DEFINISI MASALAH MEMBUAT MODEL TULIS PROGRAM COMPILE Sintak Err Executable code: => Run Output Err DOKUMEN TASI
TAHAP PENGEMBANGAN ALGORITMA RANCANG ALGORITMA DEFINISI MASALAH MEMBUAT MODEL TULIS PROGRAM COMPILE Sintak Err Executable code: => Run Output Err DOKUMEN TASI
TAHAP PENGEMBANGAN ALGORITMA RANCANG ALGORITMA DEFINISI MASALAH MEMBUAT MODEL TULIS PROGRAM COMPILE Sintak Err Executable code: => Run Output Err DOKUMEN TASI
TAHAP PENGEMBANGAN ALGORITMA RANCANG ALGORITMA DEFINISI MASALAH MEMBUAT MODEL TULIS PROGRAM COMPILE Sintak Err Executable code: => Run Output Err DOKUMEN TASI
PenyajianAlgoritma • Algoritmabisadibuatdengan: • Tekniktulisanseperti : Structure englishdanPseudocode. • Teknikvisual seperti: Flow chart.
Pseudocode Outlinedarisebuah program komputer DitulisdalambahasaInggrisatau Indonesia sederhana Katakunci (keyword) digunakanuntukmenjelaskanstrukturkendali (misalnya: “jika”, “ulangi”, “sampai”,”if”,”repeat”, “until”)
Pseudocode Tujuhoperasidasarkomputer: • Membaca data (Input) • Menampilkandata (Output) • Melakukanperhitunganaritmetika (Compute) • Memberikannilaikesuatu identifier (Store) • MembandingkandanMemilih (Compare) • Melakukanpengulangan (Loop) • Procedure danatau Function
1. MEMBACA DATA • Sewaktukomputermenerimainformasiatauinput, makastatement yang biasadigunakanadalah “Read”, “Get”, “Baca” ,”Input” atau “KeyIn” • Contoh: Read Bilangan Get kode_pajak Baca nama_mahasiswa
2. MenampilkanData • Sewaktukomputermenampilkaninformasiataupunoutput, makastatement yang biasadigunakanadalah “Print”, “Write”, “Put”, “Output”, “Display” ataupun “Cetak” • Contoh: Print “UniversitasBrawijaya” Cetak“DasarPemrogramanKomputer” Output Total
3. perhitunganAritmetika • Untukmelakukanoperasiaritmetikadigunakanpseudocodeberikut: + untukpenjumlahan (add) - Untukpengurangan (subtract) * Untukperkalian (multiply) / Untukpembagian (divide) () Untukkurung • Statement “Compute”, “Calculate” ataupun “Hitung” jugadapatdigunakan. • Contoh: Add number to total Total = Total + number
4. Memberikannilaike Identifier • Adatigacarauntukmemberikannilaikedalamvariabel : • Memberikannilaiawal, menggunakanstatement “Initialize” atau “Set” • Memberikannilaisebagaihasildarisuatuproses, makatanda “=“ digunakan • Untukmenyimpansuatunilaimakastatement “Save” atau “Store” digunakan • Contoh: Set Counter to 0 Total = Harga * Jumlah
5. Membandingkandanmemilih • Salahsatuoperasiterpenting yang dapatdilakukankomputeradalahmembandingkandanmemilihsalahsatualternatifsolusi. • Keyword yang digunakan : “IF”, “THEN” dan “ELSE” • Contoh IF Pilih=‘1’ THEN Discount = 0.1 * harga ELSE Discount = 0.2 * harga ENDIF
6. Pengulangan • Jikaadabeberapaperintah yang harusdiulang, makadapatdigunakankeyword “DOWHILE” dan “ENDDO”. • Contoh Bil = 0 DOWHILE bil < 10 cetakbil bil = bil +1 ENDDO
ContohAlgoritmadgnPseudocode AlgoritmaMenggunakanKalkulator Mulai Nyalakankalkulator KosongkanKalkulator Ulangi Input harga Tekantombol Plus (+) Sampaisemuahargadiinput Tampilkan total harga Matikankalkulator Selesai
ContohAlgoritmadgnPseudocode AlgoritmaBerangkatKuliah Mulai Bangundaritempattidur MandiPagi SarapanPagi PergiKeKampus CariRuangKuliah MasukkelasuntukKuliah Selesai
ContohAlgoritmadgnPseudocode AlgoritmaSarapanPagi Mulai Ambilpiring Masukkannasidanlaukdalampiring Ambilsendokdangarpu Ulangi Angkatsendokdangarpu Ambilnasidanlauk Suapkankedalammulut Taruhsendokdangarpu Kunyah Sampai (nasidanlaukhabis) ATAU kekenyangan Bereskanpiring, sendokdangarpu Selesai
FLOW CHART Arah Terminator Proses Konektor Input/Output Konektorantarhalaman Dokumen PemanggilanProcedure Pemilihan Pengulangan
ContohFLOW CHART Start Masukkana,b,c d = b^2 – 4ac Y d < 0 T CetakPesan “Akarimajiner” x1=(-b+sqrt(d))/2a x2 =(-b-sqrt(d))/2a Cetak x1,x2 Stop
KriteriaAlgoritma Yang Baik Mempunyailogika yang tepatuntukmemecahkanmasalah. Menghasilkan output yang benardalamwaktu yang singkat. Ditulisdenganbahasabakuterstruktursehinggatidakmenimbulkanartiganda. Ditulisdengan format bakusehinggamudahdiimplementasikankedalambahasapemrograman. Semuaoperasididefinisikandenganjelasdanberakhirsesudahsejumlahlangkah.
PemrogramanTerstruktur • Pemrogramanterstrukturmerupakanpolapenyusunan program komputerhanyadenganmenggunakantigastrukturkontrolyaitu: • Sequence • Selection • Repetition
1. Sequence Sequence merupakanurutanpengerjaandariperintah/statementpertamasampaidenganperintah/statementterakhir. Umumnyabahasapemrogramanmempunyai sequence (urutanpengerjaandariperintah / statement ) mulaidariataskebawahdandarikirikekanan. Top-down
Contoh Sequence • Contoh: Cetak “JumlahMahasiswa” Set Jumlah to 49 Cetak “Tambahanmahasiswabaru” Baca mhs_baru Jumlah = Jumlah + mhs_baru Cetak “JumlahMahasiswa” Cetakjumlah • Penjelasan • Urutanpengerjaanadalahmulaidariurutanpertamasampaidenganurutanterakhir, jikamhs_barudiisidengan 2, makajumlah yang tercetakadalah 51
2. Selection StrukturKontrol Selection adalahpenggambaransebuahkondisidanpilihandiantaraduaaksi. Statement Pertamaakandikerjakanjikakondisibernilaibenar, jikatidakmakaakanmengerjakanperintahsetelah keyword “else” (jikaada).
Contoh Selection • Contoh : IF Hari=1 THEN Cetak “Senin” ELSE Cetak “BukanhariSenin” ENDIF • Penjelasan • Tulisan “Senin” akanditampilkanjikaHaribernilai 1, jikatidakmakatulisan “BukanhariSenin” yang akanditampilkan
3. Repetition Beberapastatement / perintahdapatdiulangdenganmenggunakanstrukturkontrolrepetition. Statement / perintahakantetapdiulangselamakondisiperulanganmemenuhi (jikamenggunakan DOWHILE – ENDDO)
Contoh Repetition • Contoh: Bintang = 0 DOWHILE bintang < 5 Cetakbintang bintang = bintang + 1 ENDDO • Penjelasan: • Pertama kali bintangakandiisidengan 0, setelahituisidaribintangakandicetaksebanyak lima kali, sehinggatampilannyaakansebagaiberikut: 0 1 2 3 4
Latihan 1. Buatlahalgoritmamenggunakanpseudocodeuntukmenghitungluaspersegipanjang 2. Buatlahalgoritmamenggunakanpseudocodeuntukmengubah jam danmenit yang diinputkedalamsatuandetik. 3. Buatlahalgoritmamenggunakanpseudocodeuntukmenentukanapakahbilangan yang diinputadalahbilanganganjilataubilangangenap.
Latihan 4. Buatlahalgoritmamenggunakanpseudocodeuntukmenghitungluaslingkaran. 5. Buatlahalgoritmamenggunakanpseudocodeuntukmenginput 3 buahbilangan, kemudiantentukanbilanganterbesar, terkecildan rata-ratanya.
Latihan Ulangilatihan no. 1 s/d no. 5 diatasdenganmenggunakanFlow Chart.