wahyu pujiyono yywahyup@yahoo tehnik informatika universitas ahmad dahlan

36
Wahyu Pujiyono [email protected] Tehnik Informatika Universitas Ahmad Dahlan SEKUEN Minggu II -- (40 menit)

Upload: lexi

Post on 07-Feb-2016

63 views

Category:

Documents


0 download

DESCRIPTION

Wahyu Pujiyono [email protected] Tehnik Informatika Universitas Ahmad Dahlan. SEKUEN Minggu II -- (40 menit). Overview. Tantowi Yahya : “urutkan kegiatan menggosok gigi dengan urutan yang benar : “ Ambil sikat gigi Berkumur Menyikat gigi Ambil odol. Jawaban yang benar :. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan

Wahyu [email protected]

Tehnik InformatikaUniversitas Ahmad Dahlan

SEKUENMinggu II -- (40 menit)

Page 2: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan

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

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

Apa akibatnya apabila urutan langkah tadi terbalik tidak sesuai dengan urutan yang benar ?

Page 5: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan

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

Apa perbedaan dari kasus 1 dan kasus 2 ?

Page 7: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan

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
Page 9: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan
Page 10: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan
Page 11: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan

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

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

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

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

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

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

Flowchart 2.1Start

End

Jumlah = A+B+C

CetakJumlah

InputA, B, C

Page 18: Wahyu Pujiyono yywahyup@yahoo Tehnik Informatika Universitas Ahmad Dahlan

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Setelah mengikuti kuliah mahasiswa bisa :

Menyusun algoritma Menulis standar algoritma Membuat flowchart Mengimplementasikannya dalam C++ Buatlah refleksi tentang pemahaman materi

sekuen dalam blog anda