Pertemuan II
Algoritma Pemrograman & Struktur Data I Dwiny Meidelfi,S.Kom., M.Cs.
Silabus Praktikum I. PENDAHULUAN - Pengenalan Algoritma dan Pemrograman II. INTRODUCTION TO C++ - Intro to C++ - I/O - Tipe-tipe data (Integer, Real, Karakter, String, and Boolean) - Operator
Silabus Praktikum III. C++ PROJECTS Part 1 - Sequence (Runtutan) - Selection (Percabangan) - Looping (Perulangan) IV. C++ PROJECTS Part 2 - Tipe data terstruktur (Array + Record) - Sub program (Functions in C++) - Sorting V. PROJECTS ASSIGNMENTS
Input
Input
//deklarasi variabel int A,B,C; //inisialisasi A=10; B=4; //proses C=A+B //finalisasi cout << c;
//isi program
A=10; B=4; C=a+b;
Bagaimana jika angkanya adalah inputan dari user??
Input/Ouput Program sebelumnya tidak menerima masukan (input) dari user, dan tidak melakukan proses, hanya menghasilkan keluaran (output). Bagaimana jika sebuah program nama tadi menerima masukan (input) dari user??
Ingat lagi konsep variabel
HOW?? Menggunakan : Fungsi yang berfungsi membaca input (masukan), misalnya : cin << cin.getline gets <<
HOW?? //deklarasi tetep // inisialisasi ---> baca input cin << cin.getline gets << // proses ---> baca input // finalisasi
Data Mahasiswa
Buatlah program untuk menampilkan isi dari KTM kalian masing-masing, sesuai dengan input (masukan) nama masingmasing. nim ● nama ●
Latihan 1. Buatlah program penjumlahan 2 buah bilangan dengan menggunakan input (masukan) dari user (pengguna). 2.
Buatlah
program
untuk
menghitung
waktu
yang
ditempuh berdasarkan kecepatan dan jarak yang ada dengan menggunakan input dari user. 3. Buatlah program konversi mata uang rupiah ke dolar dengan menggunakan input dari user yaitu yang berupa nominal mata uang rupiah, jika diketahui untuk 1 USD = Rp 9600,-.
SEQUENCE Algoritma
merupakan
runtunan
(sequence) satu atau lebih instruksi atau pernyataan (statement), dan setiap pernyataan dikerjakan secara berurutan sesuai dengan urutan penulisannya
SEQUENCE 1
2
3
BUKU
TAS
SNACK
4
1
2
3
4
BUKU
TAS
SNACK
EMPTY
1
2
3
4
SNACK
BUKU
TAS
EMPTY
SEQUENCE ●
Siti ingin merubah isi lemari/rak tersebut, yaitu isi lemari yang semula berisi tas akan dipindah ke rak no. 2, kemudian isi rak no. 1 nantinya akan diisi tas. Buku yang terdapat pada rak no. 2 akan dipindah ke rak no.3. Dengan menggunakan bantuan lemari/rak yang kosong, anda dapat merubah/memindahkan barang-barang tersebut ke rak yang dituju.
●
●
Buatlah solusi / pseudocode yang dapat membantu menyelesaikan problem diatas, kemudian buat programnya!.
BRANCHING (Percabangan)
BRANCHING (Percabangan)
Percabangan IF & SWITCH CASE : → Percabangan dengan IF merupakan sebuah blok program yang menyatakan bahwa sebuah aksi akan dijalankan jika kondisi percabangan dipenuhi, jika tidak dipenuhi maka aksi tidak akan dijalankan.
Latihan ===================== Masukkan nilai = …. 100 Nilai adalah bilangan positif ===================== ===================== Masukkan nilai = …. 0 Nilai adalah bilangan nol =====================
Latihan ======================= Masukkan kode hari = … 1 Hari Senin!! Jangan Males. Semangat yaa!! ========================
Latihan ======================= Masukkan bilangan = … 99 Bilangan positif puluhan ======================== ======================== Masukkan bilangan = … 2 Bukan bilangan positif puluhan ========================
Percabangan IF-THEN & SWITCH CASE : → Percabangan dengan Switch Case merupakan pernyataan yang digunakan untuk memilih jika terdapat lebih dari dua kondisi yang masingmasing kondisi tersebut mempunyai penanganan yang berbeda.
IF-THEN → 1 Kondisi = if...then.. <statement> → Banyak kondisi = if...then...<statement> else.. <statement>
SWITCH CASE → kode = 1, maka hari senin kode = 2, hari selasa; kode = 3, hari rabu; ...dst → switch(hari) { case 1 : cout<<"Senin"<<endl; break; case 2 : cout<<"Selasa"<<endl; Break; Case 3 : …. Dst }
GAME 1. Buatlah program untuk menampilkan apakah bilangan A lebih besar dari bilangan B?, gunakan inputan dari user.
GAME ●
2. Buatlah program untuk menampilkan bisa atau tidak bisa mengambil mata kuliah pilihan, dengan syarat jika mahasiswa adalah berasal dari prodi komsi dan mulai semester 2, maka bisa mengambil mata kuliah pilihan. Jika syarat tidak terpenuhi maka tidak bisa mengambil mata kuliah pilihan.
GAME 3. Buatlah program untuk menentukan nilai, jika diketahui range nilai sebagai berikut : 100-80 : A 79-65 : B <65 : C
GAME 4. Buatlah program dengan bentuk SWITCH CASE untuk menentukan nilai, jika diketahui range nilai sebagai berikut : 0-20 : E 21-40 : D, Ayo ayo diulang lagi praktikumnya. 41-60 : C 61-80 : B 81-100 : A, Excellent!!
GAME ●
5. Buatlah program yang membaca sebuah integer yang menyatakan jam pulang kantor karyawan, menghitung upah yang diterimanya dan menampilkan di layar. Dengan Ketentuan sebagai berikut : ●
Jam kerja kantor mulai dari jam 8 pagi sampai jam 16 sore.
●
Kantor tutup jam 8 malam.
●
●
●
Semua karyawan harus datang ontime, jika ada yang terlambat gak boleh masuk. Karyawan yang bekerja diatas jam 16 (tetapi tidak lebih daripada jam 20 malam) akan mendapatkan upah lembur. Ketentuan upahnya, jika kerja biasa (jam 8 pagi sampai jam 16 sore) upahnya sebesar 1000 per jam, dan upah lembur adalah dua kalinya.
Nested IF ●
●
If didalam if... → Jika statement yang seharusnya dijalankan/diproses setelah pemeriksaan kondisi/ekspresi boolean,tidak dapat dijalankan karena harus memeriksa kondisi yang lain (kondisi didalamnya).
Nested IF ======================= Masukkan bilangan = … 99 Bilangan positif puluhan ======================== ======================== Masukkan bilangan = … 2 Bukan bilangan positif puluhan ========================
Nested IF ======================= Masukkan bilangan = … 99 Bilangan positif puluhan ======================== ======================= Masukkan bilangan = … 5 Bilangan positif satuan ======================== ======================== Masukkan bilangan = … -2 Bilangan negatif ========================