PengantarBerpikirKomputasidan PemrogramanProsedural

dokumen-dokumen yang mirip
PengantarBerpikirKomputasidan PemrogramanProsedural

PENGANTAR KOMPUTER & SOFTWARE II

PENGANTAR KOMPUTER & SOFTWARE II PENGENALAN PEMANFAATAN KOMPUTASI/ PEMROGRAMAN

STRUKTUR DASAR PEMROGRAMAN

DASAR PEMROGRAMAN. Institut Teknologi Sumatera

PEMROGRAMAN DASAR ( PASCAL ) PERTEMUAN I

ALGORITMA & PEMROGRAMAN

StrukturDasarProgram Prosedural (dalambahasac++)

Algoritma Pemrograman I

Struktur Dasar Program Prosedural dan Disain Bagan Sederhana

IF Algoritma & Pemrograman. Bab 1: Pengantar Algoritma. Oleh : Andri Heryandi, M.T. Universitas Komputer Indonesia

Implementasi OOP Pada Perangkat Lunak Pemrograman

MATERI KULIAH ALGORITMA DAN PEMROGRAMAN I (2 SKS)

Pengenalan Algoritma dan Pemrograman Pascal

PEMROGRAMAN TERSTRUKTUR PERTEMUAN II LANGKAH-LANGKAH PENGEMBANGAN PROGRAM 6. DOKUMENTASI DAN PEMELIHARAAN PROGRAM

Pengenalan Algoritma & Pemrograman

IT234 ALGORITMA DAN STRUKTUR DATA

MODUL 1 PENGENALAN ENVIROMENT C++

MATERI KULIAH ALGORITMA DAN PEMROGRAMAN I

ABSTRAKSI DEKOMPOSISI PENGUJIAN Dalam REKAYASA PERANGKAT LUNAK

Algoritma dan Struktur Data

Perulangan Muh. Izzuddin Mahali, M.Cs. Pertemuan 3. Algoritma dan Struktur Data. PT. Elektronika FT UNY

Algoritma,Flowchart, Konsep

Algoritma & Pemrograman 1. Fery Updi,M.Kom

MAKALAH ALGORITMA, PSEUDOCODE DAN FLOWCHART TENTANG YUFI EKO FIRMANSYAH 1 D3 IT B OLEH

MODUL I PENGENALAN IDE C++, ALGORITMA DAN PEMROGRAMAN

ilmu bahasa pemrograman ilmu c++ Copyright izie ilmu c++

Pengenalan Bahasa C++, Algoritma Pemrograman, Integrated Development Equipment (IDE) Visual C++ dan Dasar Dasar Bahasa C++

PENGANTAR LOGIKA DAN ALGORITMA DENGAN PASCAL

Pertemuan 2 Konsep Dasar Algoritma

LOGIKA & ALGORITMA PENGERTIAN & CONTOH ALGORITMA. Pertemuan ke 2. 9/24/2017 Logika Algoritma

ALGORITMA, PEMROGRAMAN DAN BAGAN ALIR. Pertemuan Ke-1

Algoritma dan Pemrograman Lanjut. Pertemuan Ke-5 Rekursif

PERULANGAN P E N G A N TA R P R O G R A M S T U D I. Institut Teknologi Sumatera

PENGANTAR KOMPUTER & SOFTWARE II

ALGORITMA, FLOWCHART dan PSEUDO-CODE

Konstruksi Dasar Algoritma

Algoritma Pemrograman 2C

Dasar Pemrograman. Nisa ul Hafidhoh

Algoritma dan Struktur Data

Pengenalan Pascal. Tujuan Pembelajaran

PENDAHULUAN PEMROGRAMAN KOMPUTER. Mengapa Belajar Pemrograman Komputer?

INPUT & OUTPUT SEQUENCE STATEMENT SELECTION STATEMENT. Pengantar Logika & Teknik Pemrograman Politeknik Negeri Jakarta TA.

Algoritma dan Pemrograman

P - 3 Bab 2 : Pengantar Pemrograman C

BAB 1 PENDAHULUAN. Pada Bab ini anda akan mempelajari

Algoritma dan Flowchart. Dasar Programming 1

Pengenalan Algoritma

PENGENALAN DASAR PEMROGRAMAN

# ONE PENGANTAR ALGORITMA PEMROGRAMAN

Mengapa Belajar Pemrograman Komputer?

Konsep Dasar Pemrograman

BAB III METODOLOGI PENELITIAN. dalam pengumpulan data atau informasi guna memecahkan permasalahan dan

LAPORAN PRAKTIKUM I. Oleh:

Materi Pelajaran : Algoritma Pemrograman. Siswa memahami tentang dasar dasar Algoritma Pemrograman

ALGORITMA PEMROGRAMAN 1C PENDAHULUAN KONSEP BAHASA PEMROGRAMAN

ALGORITMA DALAM KAITANNYA DENGAN KOMPUTER

SMA SANTO PAULUS PONTIANAK

Pengertian Dasar Konstruksi Pemrograman Prosedural. Tim PHKI Modul Dasar Pemrograman Fakultas Ilmu Komputer UDINUS Semarang

dilakukan oleh bahasa mesin dapat dilakukan oleh C dengan penyusunan program yang lebih sederhana dan mudah. Bahasa C dalam pemakainnya memerlukan

Pemrograman Dasar C. Minggu 1: Pengenalan C Programming

Subprogram (dalam Bahasa C++ + Flowchart)

PEMROGRAMAN KOMPUTER DASAR. Kuliah ke-1

Brigida Arie Minartiningtyas, M.Kom

Algoritma Pemrograman

Fungsi Bahasa pemrograman adalah sebagai media untuk menyusun dan memahami serta sebagai alat komunikasi antara pemrogram dengan computer.

BANK SOAL KELAS XI IPA&IPS

BAB III ANALISIS DAN PERANCANGAN

BAHASA PEMROGRAMAN. Merupakan prosedur/tata cara penulisan program.

A. Spesifikasi Perangkat Lunak

Kualitas bahasa pemrograman: Ekspresivitas : secara jelas menggambarkan algoritma yang dibuat oleh programmer

Konsep Pemrograman Prosedural

PENGULANGAN Bagian 1 : Notasi. Tim Pengajar KU1071 Sem

Algoritma Dan Pemrograman

IT132. Ramos Somya, S.Kom.

Review: Algoritme dan Program 12/29/2011. Algoritme dan Pemrograman. Review: Bagaimana memecahkan masalah dengan komputer?????

PENGENALAN KOMPUTER. Sistem Komputer. Dian Palupi Rini, M.Kom

PENULISAN ALGORITMA. Algoritma dan Pemrograman. Rajif Agung Yunmar, S.Kom, M.Cs.

Algoritma dan Pemrograman

KU-1072 PENGENALAN TEKNOLOGI INFORMASI B (PTI B)

Pendahuluan. program

P3 Pengantar Pemrograman C

BAB I PENDAHULUAN. Algoritma dan Pemrograman I Hal : 1

PEMROGRAMAN TERSTRUKTUR PERTEMUAN VI KOMPONEN KOMPONEN PEMROGRAMAN TERSTRUKTUR

POKOK BAHASAN - 1 ALGORITMA & PEMROGRAMAN

Algoritma dan Pemrograman. Pertemuan Ke-1 Pengantar Algoritma

Program. Instruksi-instruksi yang diberikan kepada komputer agar dapat melaksanakan tugas-tugas tertentu

Algoritma, Pseudo Code Flow Chart

Teori Algoritma. Struktur Algoritma

SUB PROGRAM : PROSEDUR & FUNGSI. Konsep Pemrograman

Contoh algoritma 1. Ada 2 buah gelas. Satu berisi teh dan satunya lagi berisi kopi. Bagaimana caranya menukar isi masing-masing gelas?

PRAKTIKUM 1 MENGENAL BAHASA PASCAL. File, Edit, Search, Run, Compile, Debug, Tools, Option, Windows dan Help.

Alat bantu (tools) dalam pembuatan parser/ analisis sintaksis. Menggunakan simbol persegi panjang untuk non terminal

FLOWCHART. Pendahuluan:

Apa Itu Algoritma? Algoritma berasal dari: ahli

PENGANTAR KOMPUTER & SOFTWARE II. Pengulangan (For) Tim Pengajar KU Institut Teknologi Sumatera

Dasar-dasar Algoritma Dan Representasi Algoritma. Pengampu : Muhammad Zidny Naf an, M.Kom

Tahap pengembangan program

UJIAN TENGAH SEMESTER KU1072/PENGENALAN TEKNOLOGI INFORMASI B SEM /2014

Transkripsi:

PengantarBerpikirKomputasidan PemrogramanProsedural Tim Pengajar KU1072 Sem. 1 2013-2014 KU1072/Pengenalan Teknologi Informasi B Tahap Tahun Pertama Bersama Institut Teknologi Bandung

TujuanKuliahPemrograman Mahasiswa mampu: Menjelaskan bagaimana komputasi/program dimanfaatkan dalam keilmuan fakultas/sekolah Menjelaskan bagaimana proses dari source code menjadi program dengan menggunakan kompilator/interpreter Menjelaskan apa yang dimaksud berpikir komputasi dengan pendekatan prosedural Memahami representasi dan pemrosesan data dan program dalam mesin komputer Membuat program kecil pertama dalam bahasa pemrograman yang dipilih dan memahami aspek eksekusinya 9/6/2013 2

Apa itu Berpikir Komputasi - Berpikir menggunakan logika - Melakukan sesuatu selangkah demi selangkah - Menentukan keputusan bila menghadapi dua kemungkinan yang berbeda - Salahsatucarauntukmemahamidan mengimplementasikan cara berpikir komputasi adalah dengan belajar pemrograman - Cara lain? - Belajar memahami penggunaan perangkat lunak pengolah kata (contoh: MS Word), pengolahlembarkerja(spreadsheet, contoh: MS Excel) 9/6/2013 3

KemampuanBerpikirKomputasi Berpikir komputasi memungkinkan kita untuk menggunakan komputasi sesuai dengan kebutuhan kita. Kemampuan ini akan menjadi salah satu kemampuan dasar yang harus dimiliki di abad 21 (http://link.cs.cmu.edu/article.php?a=600) Kemampuan Dasar yang sudah ada sebelumnya: Kemampuan Membaca Kemampuan Menulis Kemampuan Berhitung 9/6/2013 4

BerpikirKomputasi Melibatkan sekumpulan keahlian dan teknik pemecahan masalah yang biasanya digunakan oleh pengembang perangkat lunak untuk menulis program aplikasi komputer. Teknik-teknik yang digunakan Dekomposisi Pengenalan Pola (pattern recognition) Generalisasi Pola dan abstraksi(pattern generalization) Untuk mendefinisikan suatu model Rancangan Algoritma dan analisa data /visualisasi 9/6/2013 5

Dekomposisi Suatu masalah dipecah menjadi beberapa submasalah yang lebih kecil Matematika: 256 = 2 * 100 + 5 * 10 + 6 * 1 Sistem Perpustakaan Peminjaman buku Anggota Dosen Mahasiswa Program komputer:? 9/6/2013 6

Pengenalan Pola (Pattern Recognition) Kemampuan melihat adanya kesamaan yang akan memungkinkan kita untuk melakukan prediksi Pola penjualan saham to t1 t2 t3 t4 t5 t6 Untuk program komputer, kadang kita bisa menemui pola yang berulang, keadaan ini memungkin pemisahan bagian program menjadi procedure/fungsi Apakah di t6 akan turun atau naik? 9/6/2013 7

GeneralisasiPoladanAbstraksi Kemampuan memilah informasi yang kompleks menjadi lebih sederhana atau membuat informasi lebih bersifat general sehingga memudahkan kita untuk menjelaskan suatu ide Gambar grafik pie-chart untuk abstraksi prosentasi jumlah mahasiswa pria wanita Lokasi suatu posisi di bumi dapat ditentukan dari kordinat langitudeataulatitude Menghitung fibonacci Fibonacci[0] = 1 Fibonacci[1] = 1 Fibonnaci[n] = Fibonacci[n-1] + Fibonacci[n-2] 9/6/2013 8

RancanganAlgoritma Kemampuan mengembangkan strategi selangkah demi selangkah untuk pemecahan masalah. Rancangan algoritma biasanya dibuat berdasarkan dekomposisi masalah dan identifikasi pola yang akan membantu pemecahan masalah. Urutan memasak kentang Urutan memakai sepatu Implementasi program komputer dalam bahasa C, Pascal, Fortran, dll. 9/6/2013 9

KarakteristikBerpikirKomputasi Mampu memberikan pemecahan masalah menggunakan komputer atau perangkat lain Mampu mengorganisasi dan menganalisa data Mampu melakukan representasi data melalui abstraksi dengansuatumodel atau simulasi Mampu melakukan otomatisasi solusi melalui cara berpikir algoritma(sekumpulan langkah terurut) Mampu melakukan identifikasi, analisa dan implementasi solusi dengan berbagai kombinasi langkah/cara dan sumberdaya yang efisien dan efektif Mampu melakukan generalisasi solusi untuk berbagai masalah berbeda 9/6/2013 10

Pemecahan masalah dengan komputer 9/6/2013 11

Organisasi dan Analisa Data 9/6/2013 12

ContohAnalisaPersoalan: MengupasKentang Bila ingin makan kentang, tentunya kita perlu memiliki kentang terlebih dahulu Jika belum ada, maka beli kentang dulu Jika sudah ada maka kentang perlu di kupas Setelah dikupas, kita harus memilih, apakah kita mau menggoreng kentang, merebus kentang atau membuat sup. 9/6/2013 13

MengupasKentang Kentang tersedia? Ya Tidak Kupas Kentang Goreng? Rebus? Mau dimasak apa? Sup? Beli kentang? 9/6/2013 14

PengenalanFlowchart (Diagram Alir) Mulai Selesai Pilihan Proses Alur Pilihan Alur pilihan 9/6/2013 15

Flow Chart MengupasKentang Mulai Kentang Tersedia? Ya Tidak Beli Kentang Kupas Kentang Dimasak apa? goreng sup rebus Goreng Kentang Rebus Kentang Buat Sup Selesai 9/6/2013 16

ContohAnalisaPersoalan: JarumJam dindingyang tidaktepat Bila jarum tidak bergerak, ganti battery Jika bergerak berarti battery masih hidup tinggal dilakukan perbaikan letak jarum jam Buatlah flowchartnya! 9/6/2013 17

Mulai Diagram Alir (flow chart) Perbaikan Waktu di Jam dinding Jarum Bergerak? Tidak Ya Perbaiki Jarum panjang dan pendek pada lokasi yang tepat Ganti Battery Baru Selesai Apa yang salah dengan flowchart ini?? 9/6/2013 18

Mulai Diagram Alir (flow chart) Perbaikan Waktu di Jam dinding Jarum Bergerak? Tidak Ganti Battery Baru Selesai Ya Perbaiki Jarum panjang dan pendek pada lokasi yang tepat Bagaimana jika ternyata setelah dua hari jam kembali tidak tepat? 9/6/2013 19

Mulai Diagram Alir (flow chart) Perbaikan Waktu di Jam dinding Jarum Bergerak? Tidak Ya Perbaiki Jarum panjang dan pendek pada lokasi yang tepat Ganti Battery Baru Tidak Jam tepat waktu? Tunggu selama 2 hari Ya Selesai 9/6/2013 20

Abstraksi Data Suhu Air? 90 kemampuan kita untuk menginterpretasikan suatu data dengan konteks masalahnya Berat Badan? Kecepatan Kendaraan Bergerak 9/6/2013 21

PersoalanAbstraksiData Suhu Air? Berat Badan? kemampuan kita untuk mengerti konteks dan merepresentasikan menjadi bentuk lain. 75 Kecepatan Kendaraan Bergerak derajat Celcius Kilogram Km/jam 9/6/2013 22

Data Mahasiswadengan Data Penduduk Struktur NIM: Nama Kota Lahir Tanggal Lahir Nama Ayah Nama Ibu Data Nomor KTP: Nama Kota Lahir Tanggal Lahir Nama Ayah Nama Ibu 9/6/2013 23

Abstraksi data dengan Model dan Simulasi Mampu melakukan otomatisasi solusi melalui cara berpikir algoritma(sekumpulan langkah terurut) Mampu melakukan identifikasi, analisa dan implementasi solusi dengan berbagai kombinasi langkah/cara dan sumberdaya yang efisien dan efektif Mampu melakukan generalisasi solusi untuk berbagai masalah berbeda 9/6/2013 24

Kemampuanminimum yang diharapkan Kemampuan melakukan dekomposisi masalah Menganalisa resep suatu masakan Kemampuan mengenali pola Misalnya pola harga barang yang naik kalau setiap lebaran Kemampuan menggeneralisir pola dan mengabstraksi pola Abstraksikalendarkerjayang merepresentasikanapayang dikerjakan dan kapan Kemampuan perancangan program Instruksi untuk memasak dengan suatu resep Instruksi membuka paket lemari knock down 9/6/2013 25

Keuntungan berpikir komputasi Percaya diri dalam berhadapan dengan kompleksitas masalah yang lebih besar dan lebih sulit Toleransi terhadap ambiguitas Mampu berhubungan dengan masalah yang openended Mampu berkomunikasi dan bekerjasama untuk mencapai tujuan yang sama. 9/6/2013 26

Berpikir Prosedural Sejumlah aksi dijalankan secara berurutan (sekuensial) Setiap aksi akan memberikan efek eksekusi tertentu Jika diikuti terus menerus, aksi-aksi ini harus selesai Tidak bisa terus menerus 9/6/2013 27

Pemrograman Prosedural Pemrograman Prosedural (Imperative) Hasil eksekusi program berdasarkan hasil dekomposisi aksional. Setiap aksi ini akan dijalankan secara berurutan (sekuensial) Pemrograman Non Prosedural Tidak berdasarkan urutan sekuensial Contoh: Pemrograman Deklaratif, Pemrograman Fungsional 9/6/2013 28

Program = Algoritma + StrukturData 9/6/2013 29

Program Menghitung Tabungan Masalah: Tabungan di bank selalu bertambah setiap tahun Bank memiliki bunga yang setiap tahun bertambah BNI memiliki bunga tahunan 10% per tahun Untuk uang 100 ribu, maka setelah satu tahun akan menjadi 110 ribu. Buatlah program yang menghitung uang kita setelah satu tahun. Program akan menanyakan uang kita saat ini, kemudian program akan menampilkan uang kita setelah satu tahun 9/6/2013 30

Contoh Eksekusi Program Menghitung Tabungan Masukkan uang: 1000 Tahun Depan => 1100 9/6/2013 31

Bagaimana Program itu dibuat? 9/6/2013 32

Program Tabungan input ( NilaiRp) NilaiRp NilaiRp + NilaiRp * 10% output( NilaiRp) atau output ( Masukkan Uang: ) input ( NilaiRp) NilaiRp NilaiRp + NilaiRp * 10% output( Tahun Depan => ) output( NilaiRp ) 9/6/2013 33

Program = Algoritma + StrukturData Struktur Data Algoritma input ( NilaiRp ) NilaiRp NilaiRp + NilaiRp * 10% output( NilaiRp ) 9/6/2013 34

Kode Program Bahasa C++ input (NilaiRp) NilaiRp NilaiRp + NilaiRp * 10% output(nilairp) cin: Console Input (diketikkan lewat keyboard) cout: Console Output cin >> NilaiRp; NilaiRp = NilaiRp + NilaiRp * 0.1; cout << NilaiRp; 9/6/2013 35

KodeProgram BahasaPascal input (NilaiRp) NilaiRp NilaiRp + NilaiRp * 10% output(nilairp) readln akan membaca dari hasil ketik di keyboard writeln akan menulis hasil di layar komputer readln(nilairp); NilaiRp := NilaiRp + NilaiRp * 0.1; writeln(nilairp); 9/6/2013 36

KodeProgram BahasaFortran input (NilaiRp) NilaiRp NilaiRp + NilaiRp * 10% output(nilairp) Tanda * mengindikasikan keluaran/masukan standard (keyboard/layar) read akan membaca dari hasil ketik di keyboard read *, NilaiRp NilaiRp = NilaiRp + NilaiRp * 0.1; print *, NilaiRp print akan menulis hasil di layar komputer 9/6/2013 37

Kode C++ int main() { int NilaiRp; Pendefinisian Data } cin >> NilaiRp; NilaiRp = NilaiRp + NilaiRp * 0.1; cout << NilaiRp; return 0; 9/6/2013 38

Kode Pascal Pendefinisian Data Program HitungUangDiBank; var NilaiRp : integer; begin end readln(nilairp); NilaiRp := NilaiRp + NilaiRp * 0.1; writeln(nilairp); 9/6/2013 39

KodeFortran Program HitungUangDiBank Pendefinisian Data integer :: NilaiRp read *, NilaiRp NilaiRp := NilaiRp + NilaiRp * 0.1 print *, NilaiRp End program HitungUangDiBank 9/6/2013 40

Edit, Kompilasi (Compile) dan Eksekusi File Source Code.cpp COMPILE Object Code siap pakai lainnya Object code LINK Executable Code.exe 9/6/2013 41

Contoh Edit, Kompilasi (Compile) dan Eksekusi 9/6/2013 42

Program HitungLuasLingkaran(C++) int main() { /* Kamus */ float JariJari; float Luas; } /* Algoritma */ cin >> JariJari; Luas = 3.14 * JariJari * JariJari; cout << Luas; 9/6/2013 43

Program HitungLuasLingkaran(Pascal) Program HitungLuasLingkaran; (* Kamus *) var begin JariJari : real; Luas : real; (* Algoritma *) end. readln(jarijari); Luas := 3.14 * JariJari * JariJari; writeln(luas); readln; 9/6/2013 44

Program HitungLuasLingkaran (Fortran) Program HitungLuasLingkaran! Kamus real :: JariJari real :: Luas! Algoritma read *, JariJari Luas = 3.14 * JariJari * JariJari print *, Luas end program HitungLuasLingkaran 9/6/2013 45

Program HitungLuasLingkaran (Fortran) versi2 Program HitungLuasLingkaran! Kamus real :: JariJari real :: Luas! algoritma read *, JariJari Luas = 3.14 * JariJari ** 2 print *, Luas end program HitungLuasLingkaran 9/6/2013 46

TerimaKasih 9/6/2013 47