Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan
description
Transcript of Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan
![Page 2: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/2.jpg)
Overview Tantowi Yahya :
“urutkan kegiatan menggosok gigi dengan urutan yang benar : “
A. Ambil sikat gigi
B. Berkumur
C. Menyikat gigi
D. Ambil odol
![Page 3: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/3.jpg)
Jawaban yang benar : Tantowi Yahya :
“urutkan kegiatan menggosok gigi dengan urutan yang benar : “
A. Ambil sikat gigi
B. Ambil odol
C. Menyikat gigi
D. Berkumur
![Page 4: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/4.jpg)
Apa akibatnya apabila urutan langkah tadi terbalik tidak sesuai dengan urutan yang benar ?
![Page 5: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/5.jpg)
Kegiatan SarapanA. Ambil piring
B. Ambil nasi
C. Ambil lauk
D. Ambil sayur
E. Makan
F. Minum
G. Selesai
![Page 6: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/6.jpg)
Apa perbedaan dari kasus 1 dan kasus 2 ?
![Page 7: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/7.jpg)
SEKUEN sederetan pernyataan-
pernyataan yang urutan dan pelaksanaan eksekusinya runtut, yang lebih dahulu ditemukan (dibaca) akan dikerjakan (dieksekusi) lebih dulu
Bila urutan pernyataan dibalik, akan mempunyai makna yang berbeda
![Page 8: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/8.jpg)
![Page 9: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/9.jpg)
![Page 10: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/10.jpg)
![Page 11: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/11.jpg)
Operator Aritmetika + Addition 2 + 3 = 5- Subtraction 7 – 3 = 4* Multiplication 5 * 4 = 20/ Division 12 / 3 = 4^ Exponentiation 2 ^ 3 = 8% Modulus 14 % 3 = 2
![Page 12: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/12.jpg)
Hirarki Operasi1: melakukan operasi di dalam tanda kurung
(dari dalam ke luar jika lebih dari satu)2: melakukan exponentiation3: perkalian, pembagian, dan modulus dari
kiri ke kanan (jika ada lebih dari satu)4: penambahan dan pengurangan yang dari
kiri ke kanan (jika ada lebih dari satu)
![Page 13: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/13.jpg)
Hirarki Operasi (Contoh)3 * (6 + 2) / 12 – (7 – 5) ^ 2 * 3 = ?
( ) first: = 3 * 8 / 12 – 2 ^ 2 * 3
^ next: = 3 * 8 / 12 – 4 * 3
Leftmost * next: = 24 / 12 – 4 * 3
Division next: = 2 – 4 * 3
Multiply next: = 2 – 12
Subtract last: = -10
![Page 14: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/14.jpg)
Pemrograman Pernyataan Algoritmik Bahasa Pascal Bahasa C++
I nput Read read atau readln cin >>
Output Write write atau writeln cout <<
penugasan := =
akhir pernyataan ; ;
Fungsi
Pascal C++ Arti
sqr pow kuadrat
sqrt sqrt akar kuadrat
ln log logaritma alami
exp exp eksponensial
![Page 15: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/15.jpg)
Kasus 2.1. Hitunglah jumlah dari 3 buah bilangan
bulat! Analisis :
Input : misalkan a, b, c semua integer Proses : jumlah a + b + c Output : tulis (jumlah)
![Page 16: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/16.jpg)
Algoritma 2.1
Algoritma mencari jumlah 3 bilangan bulat {menghitung jumlah 3 bilangan bulat, algoritma menerima masukan 3 buah bilangan bulat, menjumlahkan, lalu mencetak hasil penjumlahannya} Deklarasi
a, b, c : integer {input} jumlah : integer {output}
Deskripsi read(a, b, c) jumlah a + b + c write(jumlah)
![Page 17: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/17.jpg)
Flowchart 2.1Start
End
Jumlah = A+B+C
CetakJumlah
InputA, B, C
![Page 18: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/18.jpg)
Translasi 2.1Bahasa C++
#include <iostream.h> class Hitung { friend ostream& operator<<(ostream&, const Hitung&); friend istream& operator>>(istream&, Hitung&); public: Hitung(); void hitung_jumlahnya(){ jumlah = (a + b + c); } private: int a,b,c; int jumlah; }; Hitung::Hitung() { cout << "Program menghitung jumlah 3 integer\ n"; } istream& operator>>(istream& in, Hitung& masukan) { cout << "Masukkan nilai a : "; in >> masukan.a; cout << "Masukkan nilai b : "; in >> masukan.b; cout << "Masukkan nilai c : "; in >> masukan.c; return in; } ostream& operator<<(ostream& out, const Hitung& keluaran) { out << "J umlah 3 integer di atas : " << keluaran.jumlah << endl; return out; }
![Page 19: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/19.jpg)
Kasus 2.2. Buat algoritma dan program untuk mencari
hasil kali dari dua buah bilangan ! Analisis :
Input : misalkan a, b semua integer Proses : hasil a * b Output : tulis (hasil)
![Page 20: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/20.jpg)
Algoritma 2.2
Algoritma hasil_kali {mencari hasil kali dari dua buah bilangan bulat, algoritma menerima masukan nilai bilangan1 dan bilangan2, lalu mengalikan kedua bilangan tersebut, dan mencetak hasil kalinya} Deklarasi
a,b : integer ( input ) hasil : integer ( output )
Deskripsi read(a,b) hasil a*b
write(hasil)
![Page 21: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/21.jpg)
Translasi 2.2
Bahasa C++ class Perkalian { friend ostream& operator<<(ostream&, const Perkalian&); friend istream& operator>>(istream&, Perkalian&); public: Perkalian(); void hitung_perkaliannya(){ hasil = (a * b); } private: int a,b; int hasil; };
![Page 22: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/22.jpg)
Kasus 2.3. Buat algoritma dan program untuk
menghitung konversi dari m ke cm dan inchi !
Analisis : Input : misalkan m (mewakili meter) Proses : 1 meter = 100 cm 1 inci = 2.54 cm cm = m *100 inci = m*100/ 2.54 Output : tulis (cm, inci)
![Page 23: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/23.jpg)
Algoritma 2.3Algoritma konversi jarak {mengkonversi mulai jarak dari meter ke cm dari inchi, masukan m ke cm, lalu masukkan ke inchi} Deklarasi
m : real(input) cm : real(output) inci : real(output)
Deskripsi read(m) cm m *100 inci m*100/ 2.54 write(cm) write(inci)
![Page 24: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/24.jpg)
Translasi 2.3
Bahasa C++ class Konversi { public: Konversi(); void konversi_ke_cm(){ cm = (m * 100); } void konversi_ke_inci(){ inci = cm/2.54; } private: float m; float cm, inci; }; istream& operator>>(istream& in, Konversi& masukan) { cout << "Masukkan nilai m : "; in >> masukan.m; masukan.konversi_ke_cm(); masukan.konversi_ke_inci(); return in; }
![Page 25: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/25.jpg)
Kasus 2.6Setiap bilangan bulat selalu bisa ditulis
dalam bentuk :m = q.n + r
dengan n < m, q adalah kuosen dan r adalah residu (sisa).
Buatlah algoritma untuk merepresentasikan m dan dalam bentuk m = q.n + r. Sebagai contoh :
integer m = 73 dan n = 7 dapat ditulis sebagai 73 = 10x7 + 3, yaitu r = 3.
![Page 26: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/26.jpg)
Analisis Ingat ! Bila perlu buatlah contoh
bilangan tertentu sehingga kita memperoleh gambaran bagaimana cara kerja (proses) yang akan dilakukan algoritma.
Input : n dan m (n < m), Proses : Kuosen q menggunakan / (asal
kedua operan integer), sedangkan r dapat diperoleh dengan menggunakan operator %.
Output : q dan r (disusun seperti yang diminta)
![Page 27: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/27.jpg)
Algoritma 2.6
Algoritma Aljabar {membaca masukan nilai n dan m dengan n<m kemudian menuliskan outputnya berbentuk m = q.n + r} Deklarasi m, n : integer {input} q, r : integer {output}
Deskripsi read (m, n) (n < m) q m div n {mendapatkan nilai q} r m mod n {mendapatkan nilai r} write (q, r)
![Page 28: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/28.jpg)
Translasi 2.6Bahasa C++
class Aljabar { friend ostream& operator<<(ostream&, const Aljabar&); friend istream& operator>>(istream&, Aljabar&); public: Aljabar(); void hitung(){ q = m / n; / / mendapatkan nilai q r = m % n; / / mendapatkan nilai r } private: int m,n; / / input int q,r; / / output };
![Page 29: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/29.jpg)
Karakter dan String Semua karakter yang Anda dapat mengetik
di keyboard (lengkapnya ada pada daftar ASCII)
String adalah sederatan karakter. Karakter adalah string dengan panjang 1
![Page 30: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/30.jpg)
Gabungan String (Concatenation) Mengambil dua string dan menggabungkannya untuk
membuat string yang baru (hasil gabungan) Operator Gabungan dilambangkan, dalam pseudocode,
dengan tanda + Contoh:
String1 = “Algoritma" dan string2 = “ Pemrograman" maka pernyataan: Set Gabungan = string1 + string2 hasilnya: Gabungan = “Algoritma Pemrograman"
![Page 31: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/31.jpg)
Ringkasan Untuk membuat pernyataan penugasan
yang benar, perhatikan urutan pengerjaan operator (presedensi operator)
J enis Operator Presedensi Operator Perkalian Lebih tinggi * / %
Penjumlahan Lebih rendah + -
![Page 32: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/32.jpg)
Latihan (individu) Buatlah algoritma dan program untuk mencari
titik tengah sebuah garis yang ujung titiknya adalah A(x1,y1) dan B(x2,y2).
Buatlah algoritma dan program untuk memisahkan bilangan integer yang kurang dari 1000 menjadi komponen- komponennya. Sebagai contoh :
127 = 1 ratusan + 2 puluhan + 7 satuan
Buatlah algoritma dan program untuk menghitung determinan matriks berordo 2x2
![Page 33: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/33.jpg)
Bahan Diskusi Periksa buku tabungan salah satu anggota
kelompok. Lakukan detail transaksi pengambilan uang tabungan termasuk detail isian dalam formulir transaksi. Pisahkan algoritma penulisan angka menjadi ejaan : Misal anda mengambil uang sebesar 300.000 akan
tertulis sebagai ‘Tiga ratus ribu rupiah” Tulislah menggunakan huruf miring (italic) bila
pernyataan tertentu boleh berada pada deretan lain. Sementara urutan yang HARUS berada pada urutan tertentu tulis dalam huruf tegak (biasa)
![Page 34: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/34.jpg)
Raptor Kajilah buku 2, algoritma 2.1, hal. 64
tentang memindah nilai 2 variabel. Buatlah tahapan-tahapan dari mengerti masalah sampai dengan membuat program C++
Untuk algoritma, buatlah menggunakan Raptor
![Page 35: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/35.jpg)
Minggu III : KONTROL PROGRAM Pernyataan kondisional :
if (ekspresi) aksi;
if (ekspresi) aksi1; else aksi2; Operator Relasional Tabel Kebenaran Operator Or dan AND Gambar Flowchart terkait (Raptor)
![Page 36: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan](https://reader035.fdocument.pub/reader035/viewer/2022062301/56815b2c550346895dc8f259/html5/thumbnails/36.jpg)
Setelah mengikuti kuliah mahasiswa bisa :
Menyusun algoritma Menulis standar algoritma Membuat flowchart Mengimplementasikannya dalam C++ Buatlah refleksi tentang pemahaman materi
sekuen dalam blog anda