Pemrograman Dasar
description
Transcript of Pemrograman Dasar
![Page 1: Pemrograman Dasar](https://reader033.fdocuments.net/reader033/viewer/2022061616/55cf8ebe550346703b952c4b/html5/thumbnails/1.jpg)
PEMROGRAMAN DASAR
KELAS X
SEMESTER 1
![Page 2: Pemrograman Dasar](https://reader033.fdocuments.net/reader033/viewer/2022061616/55cf8ebe550346703b952c4b/html5/thumbnails/2.jpg)
DEFINISI
• Pemrograman adalah proses menulis, menguji, memperbaiki (debug), dan memelihara kode yang membangun sebuah program komputer.
![Page 3: Pemrograman Dasar](https://reader033.fdocuments.net/reader033/viewer/2022061616/55cf8ebe550346703b952c4b/html5/thumbnails/3.jpg)
KONSEP ALGORITMA
• Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis.
• Ciri Algoritma :• Algoritma harus berhenti setelah mengerjakan sejumlah langkah
terbatas.• Setiap langkah harus didefinisikan secara tepat dan tidak berarti dua.• Algoritma memiliki nol atau lebih masukan (input).• Algoritma mempunyai nol atau lebih keluaran (output).• Algoritma harus efektif
![Page 4: Pemrograman Dasar](https://reader033.fdocuments.net/reader033/viewer/2022061616/55cf8ebe550346703b952c4b/html5/thumbnails/4.jpg)
CONTOH ALGORITMA
Menukarkan isi dua buah bejana, A dan B.
Bejana A berisi larutan yang berwarna merah, sedangkan bejana B berisi air berwarna biru.
Kita ingin menukarkan isi kedua bejana itu sedemikian sehingga bejana A berisi larutan berwarna biru dan bejana B berisi larutan berwarna merah.
![Page 5: Pemrograman Dasar](https://reader033.fdocuments.net/reader033/viewer/2022061616/55cf8ebe550346703b952c4b/html5/thumbnails/5.jpg)
PENYELESAIAN
• To : Keadaan sebelum aksi dikerjakan
Aksi
• T1 : Keadaan setelah aksi dikerjakan
To : bejana A berisi larutan berwarna merah, bejana B berisi larutan berwarna biru (bejana C masih kosong).
(1) Tuangkan larutan dari bejana A ke dalam bejana C
T1 : bejana A kosong, bejana C berisi larutan berwarna
Merah
To : bejana A kosong, bejana B berisi larutan berwarna biru.
(2) Tuangkan larutan dari bejana B ke dalam bejana A
T1 : bejana A berisi larutan berwarna biru, bejana B kosong
To : bejana B kosong, bejana C berisi larutan berwarna merah.
(3) Tuangkan larutan dari bejana C ke dalam bejana B
T1 : Bejana B berisi larutan berwarna merah, bejana A sudah berisi larutan berwarna biru (bejana C kosong).
![Page 6: Pemrograman Dasar](https://reader033.fdocuments.net/reader033/viewer/2022061616/55cf8ebe550346703b952c4b/html5/thumbnails/6.jpg)
STRUKTUR ALGORITMA
Sebuah algoritma dapat dibangun dari 3 buah struktur dasar, yaitu :
• Runtunan (sequence)• Pemilihan (selection)• Pengulangan (repetition)
![Page 7: Pemrograman Dasar](https://reader033.fdocuments.net/reader033/viewer/2022061616/55cf8ebe550346703b952c4b/html5/thumbnails/7.jpg)
RUNTUTAN
Sebuah runtunan terdiri dari satu atau lebih instruksi. Tiap instruksi dikerjakan secara berurutan sesuai dengan urutan penulisannya.
Urutan instruksi menentukan keadaan akhir dari suatu algoritma. Bila urutannya diubah, maka hasil akhirnya mungkin juga akan berubah.
![Page 8: Pemrograman Dasar](https://reader033.fdocuments.net/reader033/viewer/2022061616/55cf8ebe550346703b952c4b/html5/thumbnails/8.jpg)
PEMILIHAN (1)
Ada kalanya sebuah instruksi dikerjakan jika kondisi tertentu dipenuhi. Penulisan pemilihan secara umum :
If kondisi then
Aksi
Struktur pemilihan if-then hanya memberikan satu pilihan aksi jika kondisi dipenuhi (bernilai benar), dan tidak memberi pilihan aksi lain jika bernilai salah.
![Page 9: Pemrograman Dasar](https://reader033.fdocuments.net/reader033/viewer/2022061616/55cf8ebe550346703b952c4b/html5/thumbnails/9.jpg)
PEMILIHAN (2)
Bentuk pemilihan yang lebih umum ialah memilih satu dari dua buah aksi bergantung pada nilai kondisinya :
If kondisi then
Aksi 1
Else
Aksi 2
![Page 10: Pemrograman Dasar](https://reader033.fdocuments.net/reader033/viewer/2022061616/55cf8ebe550346703b952c4b/html5/thumbnails/10.jpg)
PENGULANGAN
Salah satu kelebihan komputer adalah kemampuannya untuk melakukan melakukan pekerjaan yang sama berulang kali tanpa mengenal lelah.
Struktur pengulangan disebut kalang (loop), dan bagian algoritma yang diulang (aksi) dinamakan badan kalang (loop body).
![Page 11: Pemrograman Dasar](https://reader033.fdocuments.net/reader033/viewer/2022061616/55cf8ebe550346703b952c4b/html5/thumbnails/11.jpg)
VARIABEL (1)
Variabel (perubah) merupakan suatu nama yang menyiratkan lokasi memori komputer yang dapat digunakan untuk menyimpan nilai, dimana isinya dapat diubah-ubah.
Contoh :• A• B• Jumlah
![Page 12: Pemrograman Dasar](https://reader033.fdocuments.net/reader033/viewer/2022061616/55cf8ebe550346703b952c4b/html5/thumbnails/12.jpg)
VARIABEL (2)
Aturan penamaan suatu variabel • Pada bahasa pascal penulisan dengan huruf besar dan kecil tidak dibedakan,
sedangkan pada bahasa C dibedakan (Case Sensitif).• Boleh terdiri dari angka dengan syarat penulisannya setelah huruf, misal :
Umur31Sepeda3
• Tidak boleh mengandung spasi, terdiri dari underscore (karakter _), misal :Suhu_ruang (boleh)Suhu ruang (tidak boleh)SuhuRuang (boleh)
• Tidak boleh ada 2 atau lebih nama yang sama• Tidak boleh menggunakan reserved word (kata kunci), misal :
• Dalam pascal : program, end, begin, var, dll• Dalam C : #include, void, dll
![Page 13: Pemrograman Dasar](https://reader033.fdocuments.net/reader033/viewer/2022061616/55cf8ebe550346703b952c4b/html5/thumbnails/13.jpg)
TIPE DATA (1)
Tipe dari suatu variabel menyatakan :• Jenis nilai yang dapat disimpan dalam lokasi memori untuk variabel
tersebut, (membatasi himpunan nilai-nilai yang dapat dipunyai variabel tersebut).
• Jenis operasi yang dapat dilakukan terhadap variabel bersangkutan.
![Page 14: Pemrograman Dasar](https://reader033.fdocuments.net/reader033/viewer/2022061616/55cf8ebe550346703b952c4b/html5/thumbnails/14.jpg)
TIPE DATA (2)
Tipe data pada Pascal :
• Tipe data sederhana• Integer• Real• Char• Boolean
• Data tipe user defined• Terbilang, contoh : TYPE barang = (Sepatu, tas);• Subjangkauan, Contoh : TYPE jumlah= 1..100;
• Data tipe terstruktur• Array, contoh : nama = array• Record
![Page 15: Pemrograman Dasar](https://reader033.fdocuments.net/reader033/viewer/2022061616/55cf8ebe550346703b952c4b/html5/thumbnails/15.jpg)
OPERATOR (1)
• ARITMATIKA
Suatu ekspresi matematika yang memberikan hasil bertipe angka jika dievaluasi.
Operator yang digunakan : +, -, *, /
Contoh : • 6 * 5 + 7 37• 4 * 6 / 3 8
![Page 16: Pemrograman Dasar](https://reader033.fdocuments.net/reader033/viewer/2022061616/55cf8ebe550346703b952c4b/html5/thumbnails/16.jpg)
OPERATOR (2)
• LOGIKA
Suatu ekspresi matematika yang memberikan hasil berupa nilai kebenaran (benar/salah, true/false).
Operator yang digunakan : • Perbandingan : =, <, >, <=, >=, <>• Logika : and, or
Contoh :• True and true true• True and false false• (4<=5) and (5>=1)
![Page 17: Pemrograman Dasar](https://reader033.fdocuments.net/reader033/viewer/2022061616/55cf8ebe550346703b952c4b/html5/thumbnails/17.jpg)
SOAL
1. Jelaskan pengertian pemrograman
2. Jelaskan pengertian algoritma
3. Sebutkan dan jelaskan struktur algoritma
4. Buatlah contoh struktur algoritma
5. Sebutkan tipe data pada pascal
![Page 18: Pemrograman Dasar](https://reader033.fdocuments.net/reader033/viewer/2022061616/55cf8ebe550346703b952c4b/html5/thumbnails/18.jpg)
PENYAJIAN ALGORITMA
• Natural Language (Bahasa Natural)
• Pseudocode
• Flowchart (Diagram Alir)
![Page 19: Pemrograman Dasar](https://reader033.fdocuments.net/reader033/viewer/2022061616/55cf8ebe550346703b952c4b/html5/thumbnails/19.jpg)
NATURAL LANGUAGE
• Natural language atau bahasa natural adalah bahasa yang biasa kita gunakan sehari-hari.
• Bahasa natural merupakan cara yang paling sederhana dan mudah dimengerti
• Penulisan algoritma biasanya diawali dengan kata “Mulai”, diikuti dengan “kalimat instruksi” dan ditutup dengan kata “Selesai”.
![Page 20: Pemrograman Dasar](https://reader033.fdocuments.net/reader033/viewer/2022061616/55cf8ebe550346703b952c4b/html5/thumbnails/20.jpg)
CONTOH
Algoritma membuat kopi
1. Mulai
2. Sediakan gelas, sendok, gula, kopi dan air panas
3. Masukkan kopi dan gula ke dalam gelas
4. Tuangkan air panas ke dalam gelas
5. Aduk dengan sendok
6. Selesai
![Page 21: Pemrograman Dasar](https://reader033.fdocuments.net/reader033/viewer/2022061616/55cf8ebe550346703b952c4b/html5/thumbnails/21.jpg)
SOAL NATURAL LANGUAGE
1. Buatlah algoritma membuat Penjor dengan menggunakan Natural Language!
2. Buatlah algoritma menghitung luas persegi panjang dengan mengguanakan Natural Language!
![Page 22: Pemrograman Dasar](https://reader033.fdocuments.net/reader033/viewer/2022061616/55cf8ebe550346703b952c4b/html5/thumbnails/22.jpg)
PSEUDOCODE
Pseodocode terdiri atas dua kata yaitu Pseudo dan Code.
• Pseudo berarti imitasi atau tiruan atau menyerupai
• code menunjuk pada kode program
Jadi, Pseudocode adalah kode yang mirip dengan instruksi kode program sebenarnya.
![Page 23: Pemrograman Dasar](https://reader033.fdocuments.net/reader033/viewer/2022061616/55cf8ebe550346703b952c4b/html5/thumbnails/23.jpg)
CONTOH PSEUDOCODE
Pseudocode untuk menghitung luas segitiga
1. Start
2. READ alas, tinggi
3. Luas = 0.5 * alas * tinggi
4. PRINT Luas
5. Stop
![Page 24: Pemrograman Dasar](https://reader033.fdocuments.net/reader033/viewer/2022061616/55cf8ebe550346703b952c4b/html5/thumbnails/24.jpg)
CONTOH PSEUDOCODE
Start
Read e
If e < 10 Then
Print e
Else
Print “Masukkan angka kurang dari 10!”
End If
End
![Page 25: Pemrograman Dasar](https://reader033.fdocuments.net/reader033/viewer/2022061616/55cf8ebe550346703b952c4b/html5/thumbnails/25.jpg)
CONTOH PSEUDOCODE
Start
i = 1
While i <= 5 Do
Print “MERDEKA! ”
i = i + 1
End While
End
![Page 26: Pemrograman Dasar](https://reader033.fdocuments.net/reader033/viewer/2022061616/55cf8ebe550346703b952c4b/html5/thumbnails/26.jpg)
SOAL
1. Buatlah pseudocode untuk menghitung luas lingkaran!
2. Buatlah pseudocode untuk menghitung volume balok!
3. Buatlah pseudocode untuk membandingkan dua buah bilangan!
4. Buatlah pseudocode untuk mencetak kalimat “SMAKNA BISA” sebanyak 9 kali!
![Page 27: Pemrograman Dasar](https://reader033.fdocuments.net/reader033/viewer/2022061616/55cf8ebe550346703b952c4b/html5/thumbnails/27.jpg)
FLOWCHART
Flowchart atau bagan alir adalah skema/bagan (chart) yang menunjukkan aliran (flow) di dalam suatu program secara logika.
Flowchart merupakan alat yang banyak digunakan untuk menggambarkan algoritma dalam bentu notasi-notasi tertentu.
![Page 28: Pemrograman Dasar](https://reader033.fdocuments.net/reader033/viewer/2022061616/55cf8ebe550346703b952c4b/html5/thumbnails/28.jpg)
SIMBOL FLOWCHART (1)
NO SIMBOL NAMA DAN FUNGSI
1Terminator, untuk menunjukkan awal dan akhir suatu algoritma
2Data, untuk mewakili data input atau output atau menyatakan operasi pemasukan data dan pencetakan hasil
3Process, untuk mewakili suatu proses
4Decision, untuk suatu pemilihan, penyeleksian kondisi di dalam suatu program
![Page 29: Pemrograman Dasar](https://reader033.fdocuments.net/reader033/viewer/2022061616/55cf8ebe550346703b952c4b/html5/thumbnails/29.jpg)
SIMBOL FLOWCHART (2)
NO SIMBOL NAMA DAN FUNGSI
5Predefined Process, untuk menunjukkan suatu operasi yang rinciannya ditunjukkan ditempat lain (prosedur, sub-prosedur, fungsi)
6Preparation, untuk memberi nilai awal, nilai akhir, penambahan/pengurangan bagi suatu variable counter.
7Connector, untuk menunjukkan sambungan dari flowchart yang terputus di halaman yang sama atau haraman berikutnya
8Arrow, untuk menunjukkan arus data atau aliran data dari proses satu ke proses lainnya.
![Page 30: Pemrograman Dasar](https://reader033.fdocuments.net/reader033/viewer/2022061616/55cf8ebe550346703b952c4b/html5/thumbnails/30.jpg)
CONTOH FLOWCHART
![Page 31: Pemrograman Dasar](https://reader033.fdocuments.net/reader033/viewer/2022061616/55cf8ebe550346703b952c4b/html5/thumbnails/31.jpg)
CONTOH FLOWCHART
![Page 32: Pemrograman Dasar](https://reader033.fdocuments.net/reader033/viewer/2022061616/55cf8ebe550346703b952c4b/html5/thumbnails/32.jpg)
CONTOH FLOWCHART
![Page 33: Pemrograman Dasar](https://reader033.fdocuments.net/reader033/viewer/2022061616/55cf8ebe550346703b952c4b/html5/thumbnails/33.jpg)
SOAL
1. Buatlah flowchart untuk menjumlahkan 2 buah bilangan!
2. Buatlah flowchart untuk menghitung luas lingkaran!
3. Buatlah flowchart untuk membandingkan dua buah bilangan!
4. Buatlah flowchart untuk mencetak “SMK Negeri 1 Negara” sebanyak 10 kali!