struktur kendali proses-alpro-i_sns

15
Algoritma dan Pemrograman – I (4 sks) Mengenal logical tree flow structure Ir. Sihar, MT. T.Informatika –Fak.Teknologi Informasi Bandung – 2012 (Dalam perspektif C++ Language Programming)

Upload: staffpengajar

Post on 14-Aug-2015

19 views

Category:

Education


0 download

TRANSCRIPT

Page 1: Struktur Kendali Proses-alpro-I_sns

Algoritma dan Pemrograman – I (4 sks)

Mengenal logical tree flow structure

Ir. Sihar, MT.

T.Informatika – Fak.Teknologi Informasi

Bandung – 2012

(Dalam perspektif C++ Language Programming)

Page 2: Struktur Kendali Proses-alpro-I_sns

Daftar Pustaka1) Schildt, H. Turbo C/C++: The Complete Reference. Osborne Publishing.

1992.

2) Sedgewick, R., Wayne, K. Algorithm (4th Edition). Addison Wesley.

2011.

3) Shaffer, C. A. A Practical Introduction to Data Structures and Algorithm

Analysis. Department of Computer Science, Virginia Tech. 2009.

4) Simamora, S.N.M.P. “Diktat Kuliah SI101 Pengantar Teknologi

Informasi”, Departemen Sistem Informasi. Fak. Teknik. ITHB. Bandung.

2002.

5) Simamora, S.N.M.P. “Diktat Kuliah IF101 Pengantar Teknik Informatika”.

Departemen Teknik Informatika. Fak. Teknik. ITHB. Bandung. 2002.

6) Simamora, S.N.M.P. “Diktat Kuliah CE113 Sistem Komputer”. Program

studi Teknik Komputer. Politeknik TELKOM. Bandung. 2007.

7) Simamora, S.N.M.P. “Diktat UBB105 Pengantar Teknologi Informasi”.

Program studi T. Informatika, FTI. Univ. BALE Bandung. 2011.

8) Skiena, S.S. The Algorithm Design Manual. Springer. 2008.

Page 3: Struktur Kendali Proses-alpro-I_sns

if-then-else

Struktur kendali proses secara umum dikenal terbagi atas:

• sebab-akibat

• Perulangan (looping)

• Pilihan (seleksi)

do.. while(...)

while(...)

for(...)

switch(...)

Page 4: Struktur Kendali Proses-alpro-I_sns

Kasus: Jika ingin ditampilkan kalimat berikut: “Pusat Studi Kontrol dan Akustik” ke layar

komputer sebanyak 5 kali; gunakan struktur kendali proses do..while(...).

Solusi: Perhatikan penempatan statement: i=i+1;i=i+1;i=i+1;i=i+1;

Tampilan jalannya program:Algoritma dan pemrograman C++:

atau, bisa juga dituliskan berikut ini:

Page 5: Struktur Kendali Proses-alpro-I_sns

Penjelasan:

Tampilan jalannya program:Algoritma dan pemrograman C++:

mulai:

tampilkan: “Pusat Studi Sistem Kontrol dan Akustik”

i←0+1;

i←1;

tampilkan: “Pusat Studi Sistem Kontrol dan Akustik”

i←1+1;

i←2;

tampilkan: “Pusat Studi Sistem Kontrol dan Akustik”

i←2+1;

i←3;

tampilkan: “Pusat Studi Sistem Kontrol dan Akustik”

i←3+1;

i←4;

tampilkan: “Pusat Studi Sistem Kontrol dan Akustik”

Page 6: Struktur Kendali Proses-alpro-I_sns

Kasus: Susunlah sebuah algoritma dan pemrograman C++ untuk membandingkan dua isi

variabel, x1 dan x2, yakni: jika x1=x2, tampilkan:’x1 sama dengan x2.’ namun jika

x1>x2, tampilkan: ’x1 lebih besar dari x2.’ namun jika x1<x2, tampilkan:’x1 lebih

kecil dari x2.’.

Solusi:

Alternatif-1 Alternatif-2

Misalkan: x1=0 dan x2=1, maka harus ditampilkan: ‘x1 lebih kecil dari x2.’

Tampilan jalannya program:

Algoritma dan pemrograman C++: Algoritma dan pemrograman C++:

Tampilan jalannya program:

Page 7: Struktur Kendali Proses-alpro-I_sns

Kasus: Jika ingin ditampilkan 5 kalimat berikut ke layar komputer :

“Kalimat-1: PUSMATIK”

“Kalimat-2: PUSMATIK”

“Kalimat-3: PUSMATIK”

“Kalimat-4: PUSMATIK”

“Kalimat-5: PUSMATIK”

Tulislah algoritma dan pemrograman C++ dengan menggunakan struktur kendali

proses while(...).

Solusi: Algoritma dan pemrograman C++:

Tampilan jalannya program:

Page 8: Struktur Kendali Proses-alpro-I_sns

Penjelasan:

Tampilan jalannya program:Algoritma dan pemrograman C++:

mulai:

tampilkan: “Kalimat-” 0+1; “: PUSMATIK” ↵

x←0+1;

x←1;

x←1+1;

x←2;

x←2+1;

x←3;

x←3+1;

i←4;

tampilkan: “Kalimat-” 1+1; “: PUSMATIK” ↵

tampilkan: “Kalimat-” 2+1; “: PUSMATIK” ↵

tampilkan: “Kalimat-” 3+1; “: PUSMATIK” ↵

tampilkan: “Kalimat-” 4+1; “: PUSMATIK” ↵

Page 9: Struktur Kendali Proses-alpro-I_sns

Kasus: Diketahui empat persegipanjang dengan rincian sebagai berikut :

persegipanjang-1: panjang=p dan lebar=l

persegipanjang-2: panjang=2.p dan lebar=2.l

persegipanjang-3: panjang=3.p dan lebar=3.l

persegipanjang-4: panjang=4.p dan lebar=4.l

Tulislah algoritma dan pemrograman C++ untuk menghitung luas masing-masing

keempat persegipanjang tersebut dengan menggunakan struktur kendali proses

while(...).

Tampilan jalannya program:Algoritma dan pemrograman C++:

Solusi: misalkan p=2 dan l=5

Page 10: Struktur Kendali Proses-alpro-I_sns

Penjelasan:

← p →

← - 2p - →

← - - - - 3p - - - - →

← - - - - - - - 4p - - - - - - →

←2l

←l→

←-

-3l

-→

←-

-4l

--→

mulai: x=0

tampilkan: “persegipanjang” (0+1)

x←0+1;x←1;

p = (0+1)*2 dan l = (0+1)*5 ↵

Luas = ((0+1)*2) * (l = (0+1)*5) ↵

tampilkan: “persegipanjang” (1+1)

x←1+1;x←2;

p = (1+1)*2 dan l = (1+1)*5 ↵

Luas = ((1+1)*2) * (l = (1+1)*5) ↵

tampilkan: “persegipanjang” (2+1)

x←2+1;x←3;

p = (2+1)*2 dan l = (2+1)*5 ↵

Luas = ((2+1)*2) * (l = (2+1)*5) ↵

tampilkan: “persegipanjang” (3+1)

p = (3+1)*2 dan l = (3+1)*5 ↵

Luas = ((3+1)*2) * (l = (3+1)*5) ↵

Page 11: Struktur Kendali Proses-alpro-I_sns

Kasus: Diketahui sepuluh segitigasamasisi dengan rincian sebagai berikut :

segitigasamasisi-1: sisi=s

segitigasamasisi-2: sisi=2.s

segitigasamasisi-3: sisi=3.s

segitigasamasisi-4: sisi=4.s

... ...

segitigasamasisi-10: sisi=10.s

Tulislah algoritma dan pemrograman C++ untuk menghitung keliling masing-

masing kesepuluh segitiga tersebut dengan menggunakan struktur kendali proses

do...while(...).

Tampilan jalannya program:Algoritma dan pemrograman C++:

Solusi: misalkan s=1.5 dan Keliling segitigasamasisi = (3).(sisi)

segitiga-1: s=1.5 ; K=3.(1.5) = 4.5

segitiga-2: s=2.(1.5) ; K=3.(2(1.5)) = 9

segitiga-3: s=3.(1.5) ; K=3.(3(1.5)) = 13.5

segitiga-4: s=4.(1.5) ; K=3.(4(1.5)) = 18

dst... ...Penjelasan

Page 12: Struktur Kendali Proses-alpro-I_sns

Kasus: Ada tiga pilihan diberikan kepada end-user untuk mengerjakan operasi

arithmatika dengan rincian sebagai berikut :

Operasi-1: perkalian

Operasi-2: pembagian

Operasi-3: modulo

Tulislah algoritma dan pemrograman C++ untuk menyelesaikan persoalan

tersebut dengan menggunakan struktur kendali proses switch(...) dengan

menggunakan satu variabel, yakni x, dan konstanta=4 dimana isi variabel

didapatkan dari input-an, dan hasilnya langsung ditampilkan ke layar komputer.

Lakukan proteksi apabila end-user mengetikkan bilangan pecahan.

Algoritma proteksi bilangan pecahan:

Solusi: berdasar soal, variabel yang digunakan adalah x.

Deklarasi: x←Bil.Pecahan; z←Bil.Bulat

masukkan: x?

tampungkan isi x ke var: z

jika (x-z ≠ 0) tampilkan: “Maaf, bilangan bulat, bukan pecahan.”, selain itu: kerjakan blok

proses selanjutnya

Page 13: Struktur Kendali Proses-alpro-I_sns

Tampilan jalannya program:Algoritma dan pemrograman C++:

Page 14: Struktur Kendali Proses-alpro-I_sns

Kasus: Diketahui tujuh kalimat berikut ini:

Pilihan-1: 2 text-book.

Pilihan-2: 3 text-book.

Pilihan-3: 4 text-book.

Pilihan-4: 5 text-book.

Pilihan-5: 6 text-book.

Pilihan-6: 7 text-book.

Pilihan-7: 8 text-book.

Tulislah algoritma dan pemrograman C++ untuk menyelesaikan persoalan

tersebut dengan menggunakan struktur kendali proses: for(...)for(...)for(...)for(...).

Tampilan jalannya program:Algoritma dan pemrograman C++:

Solusi:

Pilihan- 0+1: 0+2 text-book.

Pilihan- 1+1: 1+2 text-book.

Pilihan- 2+1: 2+2 text-book.

Pilihan- 3+1: 3+2 text-book.

dst... ...Penjelasan

Page 15: Struktur Kendali Proses-alpro-I_sns

Kasus: Tulislah algoritma dan pemrograman C++ untuk menampilkan kode ASCII berikut:

‘y’ , ‘:’ , ‘^’ , ‘Y’ , ‘♣’ , ‘|’

dengan menggunakan struktur kendali: do..while(..)do..while(..)do..while(..)do..while(..).

Algoritma dan pemrograman C++:

Solusi:

Tampilan jalannya program: