Pertemuan 06. Dasar Pemrograman Komputer [TKL-4002] 2010

dokumen-dokumen yang mirip
DPK UNIVERSITAS BRAWIJAYA MALANG

Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu :

Pengulangan for. Konstruksi for. keberadaan exp1, exp2, dan exp3 bersifat optional. for (exp1; exp2; exp3){ statement; atau. statement1; statement2;

Algoritma dan Pemrograman Tahar Agastani Teknik Informatika UIN

Pemrograman Dasar R E P E T I T I O N

TIF 4108 Dasar Pemrograman Komputer. Soal-soal latihan TIF UB -2010

Pemrograman Dasar S E L E C T I O N

Aliran Kendali (Flow Control)

# FOUR LOOPING. JAWABAN 1. #include <stdio.h> #include <conio.h> #define pi void main(){

Aliran Kendali (Flow Control)

Pada akhir pertemuan ini, diharapkan mahasiswa memiliki kemampuan untuk: Menggunakan struktur kendali pencabangan bersyarat dalam bahasa pemrograman.

P R E T R EM N 5 STRUKTUR LOOPING

Algoritma dan Pemrograman. Loop control structures: WHILE. Loop control structures: WHILE Perhatikan potongan program berikut: 12/29/2011

Proses Perulangan (Looping) DASAR PROGRAMMING 1

Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 1

TEORI KONSEP PEMPROGRAMAN 3.1

Pertemuan 04. Pemrograman Dasar 2012

Bab 3. Decision 1 (Pengambilan Keputusan)

STRUKTUR DASAR ALGORITMA DAN PEMROGRAMAN STMIK AMIKOM YOGYAKARTA

IF ELSE IF ELSE. BU : if (kondisi1) Statement; else if (kondisi2) Statement;

24/09/2017 PERULANGAN

Struktur Kontrol Perulangan (Loop) Algoritme dan Pemrograman. Struktur Kontrol Perulangan: while. Struktur Kontrol Perulangan: while

Latihan & Kisi-kisi UTS DASAR PEMROGRAMAN

Struktur Kontrol. Contoh, Akan tercetak x is 100 jika nilai yang disimpan pada variable x adalah 100:

Ekspresi, Pernyataan & Operasi Aritmetika/Logika

Perulangan, Percabangan, dan Studi Kasus

Algoritme dan Pemrograman

Kisi-Kisi Ujian Tengah Semester Algoritma dan Pemrograman Lanjut

OPERATOR DAN STATEMEN I/O

BAB VI. STATEMENT CONTROL

PEMROGRAMAN TERSTRUKTUR PERTEMUAN VI KOMPONEN KOMPONEN PEMROGRAMAN TERSTRUKTUR

PERULANGAN PROSES. Proses perulangan ditandai dengan mekanisme yang disebut loop. Proses Loop : Proses yang berulang-ulang

Algoritma Perulangan. Kuliah algoritma dan pemrograman

BAB IV PENGULANGAN PROSES

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

Percabangan dan Perulangan

BAGIAN A. PILIHAN GANDA Silanglah Jawaban yang Benar Pada Lembar Jawaban. Jawaban benar bernilai 3, salah atau kosong bernilai 0.

Kuliah III - Dasar Pemrograman

PRAKTIKUM 6 PENGULANGAN PROSES 2

Rekursif/ Iterasi/ Pengulangan

Imam Fahrur Rozi. Algoritma dan Pemrograman PENGULANGAN

Kondisional/Pencabangan/Pemilihan. Konsep Pencabangan Sintaks Konsep if (kasus tunggal) Konsep if-else (2-3 kasus) Konsep switch (lebih dari 3 kasus)

UJIAN TENGAH SEMESTER GANJIL TAHUN STMIK AMIKOM YOGYAKARTA

MODUL IV Analisis Kasus/Pemilihan

IT234 - Algoritma dan Struktur Data. Ramos Somya

BAB V. STATEMEN KONTROL

MENGENDALIKAN PROSES PROGRAM

Tujuan : A. Percabangan Percabangan di dalam Java terdapat 2 macam, yaitu dengan memakai if dan switch.

Algoritma dan Struktur Data Tahar Agastani Teknik Informatika UIN

REVIEW UNIVERSITAS BRAWIJAYA MALANG. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 1

ALUR PROGRAM. SELEKSI KONDISI Statement If a. Bentuk If tunggal sederhana Sintaks : if ( kondisi ) statement ;

Keg. Pembelajaran 5 : Perulangan dalam C++ 1. Tujuan Kegiatan Pembelajaran 2. Uraian Materi while do..while for continue dan break go to

3. Struktur Perulangan dalam C++

IT234 - Algoritma dan Struktur Data. Ramos Somya

Pemrograman Fery Updi,M.Kom

Ekspresi, Pernyataan & Operasi Aritmetika/Logika

Struktur Program Bahasa C

Bahasa C melengkapi fasilitas modular dengan menggunakan fungsi pada setiap SubProgram. Contoh pembagian program menjadi beberapa subprogram.

Tipe if : If tanpa else (if) If dengan else (if-else) Nested if

MODUL 5 PERULANGAN (LOOPING)

elemen Dasar Bahasa Pemrograman C

Struktur dan Kondisi Perulangan. Struktur Kondisi

Percabangan. Agus Priyanto, M.Kom

Dasar Pemrograman. Kondisi dan Perulangan. By : Hendri Sopryadi, S.Kom, M.T.I

Percabangan & Perulangan

V. PENGULANGAN. while (kondisi) { Pernyataan ; } Copyright PIK Unsri Agustus 2006

SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER STMIK AMIKOM YOGYAKARTA

BAB 6. Struktur Kontrol

KENDALI PROSES. Untuk mengatur arus program, pemrograman java menyediakan struktur perulangan (looping), kondisional, percabangan, dan lompatan.

PENGANTAR KOMPUTER & SOFTWARE II

Struktur Kontrol Pemrograman Java : PERCABANGAN

Algoritme dan Struktur Data. Ekspresi,Operator, dan Conditional Statement

Pemrograman Dasar C. Minggu 6

BAB 4 KONDISI / PEMILIHAN

Kuliah #4 Ekspresi,Operator, dan Conditional Statement

Praktikum 5 PERULANGAN PROSES

Looping : break, continue, nested loop

Perulangan 2 DASAR PEMROGRAMAN

MODUL. Perulangan (Looping) Modul Praktikum C++ Pemrograman Dasar. Semester Genap 2017/2018

Pengumuman Pekan ke- 5

Selection, Looping, Branching

BAB 6. Struktur Kontrol

Percabangan & Perulangan

Struktur Kontrol. 1.Pemilihan (Selection) 2.Pengulangan (Repetition)

MODUL 2 STRUKTUR KONTROL

PEMROGRAMAN BERORIENTASI OBJEK. Pengulangan. Budhi Irawan, S.Si, M.T

DASAR PEMROGRAMAN. Institut Teknologi Sumatera

Pertemuan 9: BRANCHING/PERCABANGAN dalam C LOOPING/PERULANGAN/ITERASI dalam C

3. Struktur Perulangan dalam Bahasa C++

Tipe Data dan Operator

1. Mempelajari konsep dasar array, array ganda, pengiriman array ke fungsi dan string 2. Membuat program menggunakan array, array ganda

Imam Fahrur Rozi. Algoritma dan Pemrograman SELEKSI KONDISI

Pengulangan. Overview. Tujuan. 1.1 Konsep Pengulangan

Percabangan. Agus Priyanto, M.Kom

MODUL 10 PERNYATAAN KONTROL: FOR DAN SWITCH - CASE. Struktur perulangan for biasa digunakan untuk mengulang suatu proses yang

STRUKUR KENDALI : PERCABANGAN

Modul Praktikum Bahasa Pemrograman 1

Tipe Data, Identifier, Operator dan Control Statement

Struktur Kontrol. Gambar 1: Flowchart Statement If

SOAL C++ Created by Yuli Astuti,S.Kom Copyright 2009

Transkripsi:

Pertemuan 06 Dasar Pemrograman Komputer [TKL-4002] 2010 1

Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu : Memahami struktur kendali pengulangan (looping) dan memanfaatkannya dalam pembuatan aplikasi program komputer dengan bahasa pemrograman C/C++. 2

Struktur Pengulangan (looping) Konstruksi for, while dan do-while Nested dan infinite loop Compound atau Block statement Break dan Continue 3

Struktur pengulangan dimaksudkan untuk melakukan proses pengulangan dari beberapa instruksi dalam sejumlah pengulangan tertentu Jumlah pengulangan dapat ditentukan sebelumnya atau ditentukan dalam proses pelaksanaan pengulangan. Tiga macam struktur pengulangan dalam pemrograman terstruktur, yaitu: Struktur for Struktur while Struktur do-while 4

Konstruksi for for (exp1; exp2; exp3) statement; atau: for (exp1; exp2; exp3){ statement1; statement2;. exp1 : adalah ekspresi untuk inisialisasi, exp2 : adalah ekspresi conditional exp3 : adalah ekspresi increment atau decrement exp1, exp2 dan exp3 adalah sifatnya optional (boleh ada boleh tidak ada). 5

Struktur logika pengulangan for exp1 exp3 statements exp2 true false 6

Contoh : for (x=1; x <= 10; x++) printf( %d\n,x); x = 1 x++ printf( %d\n,x) x<=10 true false 7

exp1 dan exp3 boleh terdiri dari beberapa ekspresi yang dipisahkan dengan koma. Contoh: #include <stdio.h> #include <iostream.h> int main () { int i,j; for(i=1, j=30; i<j; i++, j--){ printf("%04d -- %04d\n", i,j); printf("\n\n"); system("pause"); return(0); 8

Contoh : Program mencetak angka dari 1 sampai 10 #include<stdio.h> int main() { int x; for( x = 1 ; x <= 10 ; x++ ) printf( "%d\n", x ); return(0); Program mencetak angka dari 10 sampai 1 #include<stdio.h> int main() { int x; for( x = 10 ; x >= 1 ; x-- ) printf( "%d\n", x); return(0); 9

Contoh penggunaan for untuk menghitung rata-rata pengeluaran uang bensin selama satu bulan, dengan data sbb : Minggu Pengeluaran 1 Rp. 32.000,- 2 Rp. 29.000,- 3 Rp. 33.000,- 4 Rp. 24.000,- Algoritma : 1. Variabel jumlah diberi nilai nol 2. Baca data pengeluaran bensin dari keyboard dan simpan ke variabel data 3. Tambahkan data ke jumlah 4. Ulangi 2 dan 3 sebanyak 4 kali 5. Rerata = Jumlah / 4 10

Program dalam C: /*----------------------------------*/ /* Program Hitung_Rerata */ /*----------------------------------*/ #include<stdio.h> int main() { float data, jumlah, rerata; int x; jumlah = 0.0; for( x = 1; x <= 4; x++) { printf( Data minggu ke-%d :,x) ; scanf( %f,&data); jumlah = jumlah + data; rerata = jumlah / 4; printf( Rerata = Rp %8.2f\n,rerata); return(0); 11

Infinite Loop Untuk membuat infinite loop dapat dilakukan dengan menggunakan for-loop, dengan menghilangkan ketiga parameter (exp1, exp2, exp3) yang ada pada for loop. Untuk keluar dari loop dapat digunakan statement break. Contoh: #include <stdio.h> #include <iostream.h> int main () { int i = 0; for(;;) { i++; printf("%d ", i); if (i>=10) break; printf("\n\n"); system("pause"); return(0); 12

Nested Loop Jika di dalam sebuah pengulangan terdapat statement pengulangan. Pengulangan akan dijalankan dimulai dari pengulangan terdalam. Bahasa C Bahasa C++ (diperbolehkan) int x, y; for (x=1;x<=5;x++) for (y=5; y>=1; y--) printf( %d %d,x,y); for (int x=1;x<=5;x++) for (int y=5; y>=1; y--) printf( %d %d,x,y); Output : 1 5 1 4 1 3.. 2 5 2 4.. 5 1 13

Contoh : #include <stdio.h> #include <iostream.h> int main () { int p,q; printf("===========================================\n"); printf(" p q p or q p and q not p p xor q\n"); printf("===========================================\n"); for(p=1; p>=0; p--) for(q = 1; q>=0; q--) printf("%2d %2d %6d %8d %8d %8d\n",p, q, p q, p&&q,!p, p^q ); printf("===========================================\n"); printf("\n\n"); system("pause"); return(0); 14

Sintaks : while (eks.boolean) statements; atau : while(eks.boolean){ statement1; statement2;.. eks. boolean false statements true 15

Contoh : while(product <= 1000) product = 2*product; product=2*product; product <= 1000 true false 16

Contoh program: #include <stdio.h> #include <iostream.h> int main () { int n,i,f; printf("menghitung NILAI FAKTORIAL n (n!)\n\n"); printf("masukkan sebarang bilangan integer: "); scanf("%i",&n); i = n; f = n; while (i>1){ i--; f=f*i; printf("%d! = %d\n\n",n,f); system("pause"); return(0); 17

Kesetaraan for dengan while sbb: exp1; while ( exp2 ) { statement1; statement2;. exp3 Contoh: #include<stdio.h> void main() { int x = 1; while (x<=10) { printf( "%d\n", x ); x++; setara serupa dg for (exp1; exp2; exp3 ) { statement1; statement2;. #include<stdio.h> void main() { int x; for( x = 1 ; x <= 10 ; x++ ) printf( "%d\n", x ); 18

Sintaks : do statement while (eks.boolean); atau : do { statement1; statement2;.. while(eks.boolean) statements eks. boolean false true Selama eks.boolean bernilai true maka statements dieksekusi berulang-ulang. Pengetesan eks.boolean dilakukan setelah meng-eksekusi statements. 19

Contoh: int i = 0; do { printf( %d\n, i); while(++i <=10); I = 0 Cetak i ++i <= 10 true false 20

Pada pengulangan while, statement atau blok statement mungkin tidak akan pernah dilaksanakan, bila nilai ekspresi boolen bernilai false, karena operasi pengulangan diawali dengan mengeksekusi ekspresi boolean terlebih dahulu. Pada pengulangan do-while statement atau blok statement pasti dikerjakan paling sedikit satu kali, karena ekspresi boolean baru diuji pada akhir blok pengulangan. 21

Beberapa cara untuk menghentikan pengulangan untuk program interaktif, di antaranya dapat dilakukan dengan menambah: Sentinel atau Pembatas dengan kode khusus. Pertanyaan, misalkan: Apakah pengulangan akan dilanjutkan?. 22

Contoh : Cara sentinel pada konstruksi do-while dengan memakai nilai 0 pada variabel panjang dan variabel lebar. #include <stdio.h> int main() { int panjang,lebar,luas; char ulang; do{ printf( Panjang [0=selesai] : ); scanf( %d,&panjang); printf( Lebar [0=selesai] : ); scanf( %d,&lebar); luas = panjang * lebar; printf( Luas = %d\n,luas); while((panjang!= 0) && (lebar!= 0)); return(0); 23

Contoh : Cara Pertanyaan pada konstruksi While #include <stdio.h> int main() { int panjang, lebar, luar; char ulang; printf( Teruskan Perhitungan? (Y/T) : ); scanf( %c,&ulang); while((toupper(ulang)) == Y ) { printf( Panjang : ); scanf( %d,&panjang); printf( Lebar : ); scanf( %d,&lebar); luas = panjang * lebar; printf( Luas = %d\n\n,luas); printf( Teruskan Perhitungan?(Y/T): ); scanf( %c,&ulang); return(0); 24

break Digunakan untuk keluar dari loop (for, while dan dowhile) Digunakan untuk keluar dari switch continue skip sisa instruksi dalam loop, dan eksekusi loop berjalan ke tahap selanjutnya 25

Contoh penggunaan statement break pada loop yang menyebabkan program keluar dari loop tersebut #include<stdio.h> int main() { int x = 1; while (x<=10) { printf( "%d\n", x ); x++; if (x>5) break; return 0; Keluar dari loop 26

Contoh: #include <stdio.h> int main() { int x; for(x=1; x<=10; x++) { if (x == 5) continue; printf("%d ", x); return 0; Output : 1 2 3 4 6 7 8 9 10 27

do { scanf( %f, &x); if(x<0) { printf \neror. Negatif ); break; /*Proses nonnegatif */ while(exp); do { scanf( %f, &x); if(x<0) { printf \neror. Negatif ); continue; /*Proses nonnegatif */ while(exp); 28

for (i=k; i < n; i++) printf( TIF-FTUB\n ); 1. Jika k < n maka berapa kali kata TIF-FTUB di cetak dilayar monitor? 2. Jika k=n maka berapa kali kata TIF-FTUB di cetak dilayar monitor? 3. Jika k > n maka berapa kali kata TIF-FTUB di cetak dilayar monitor? 29

for (i=k; i >= n; i--) printf( TIF-FTUB \n ); 1. Jika k < n maka berapa kali kata TIF-FTUB di cetak dilayar monitor? 2. Jika k=n maka berapa kali kata TIF-FTUB di cetak dilayar monitor? 3. Jika k > n maka berapa kali kata TIF-FTUB di cetak dilayar monitor? 30

Dapatkah infinite/forever loop ditulis menggunakan for loop, while loop dan do-while loop? Jika p = pernyataan dan e = ekspresi, ubahlah loop for berikut menjadi loop while. a. for(; e ;) p; b.for(; ; e) p; 31

Bandingkan dua buah sintaks for berikut ini : for (i=0, j=1; i<8; i++, j++) printf("%d + %d = %d\n", i, j, i+j); for (i=0, j=1; i<8; ++i, ++j); printf("%d + %d = %d\n", i, j, i+j); Jelaskan outputnya dan perbedaannya dari dua potongan program di atas! 32

APA OUTPUT PROGRAM BERIKUT?? #include <stdio.h> int main() { int x,y; for(x=1;x<=3;x++) for (y=3;y>=1;y--) printf("%d %d ",x,y); return 0; awas! Ada titik koma #include <stdio.h> int main() { int x,y; for(x=1;x<=3;x++); for (y=3;y>=1;y--) printf("%d %d ",x,y); return 0; 33

APA OUTPUT PROGRAM BERIKUT?? #include <stdio.h> int main() { int x,y; for(x=1;x<=3;x++) for (y=3;y>=1;y--); printf("%d %d ",x,y); return 0; Awas! ada titik koma awas! ada titik koma #include <stdio.h> int main() { int x,y; for (x=1;x<=3;x++); for (y=3;y>=1;y--); printf("%d %d ",x,y); return 0; 34

Jelaskan output program berikut ini : #include<stdio.h> int main() { int nilai = 0, jumlah = 0; while(nilai < 10) { jumlah += nilai; printf( \nnilai =%d, Jumlah =%d, nilai++, jumlah); return 0; 35

Jelaskan output program berikut ini : #include<stdio.h> int main() { long bil, tmp, x=1; printf( \ninput bil: ); scanf( %d, &bil); tmp=bil; while(bil >= 1) x*=bil--; printf( \n%ld! = %ld,tmp, x); return 0; 36

Buat program untuk menampilkan bilangan ganjil dari 11 s/d 188, dengan menggunakan : for while do - while 37

Diasumsikan hari 1 menyatakan senin, 2 - selasa, 3 - rabu,, 7 minggu. Buatlah sebuah program untuk menampilkan angka hari sebanyak n yang diinput dari keyboard. Perhatikan pola berikut : n = 3 1 2 3 n = 7 1 2 3 4 5 6 7 n = 10 1 2 3 4 5 6 7 1 2 3 38

Berapa kali kata Hello dicetak di layar monitor oleh setiap potongan program di bawah ini? int x ; for(x=0 ; x<10 ; x++) printf("hello\n"); int x=0; for( ; x<10 ; x++) printf("hello\n"); int x=0; for( ; ; ){ if(x<10) printf("hello\n"); else break; x++; int x=0; for( ; ; x++){ if(x<10) printf("hello\n"); else break; 39

Buatlah program untuk menampilkan gambar seperti contoh dibawah, dimana n variabel integer yg nilainya di-input dari keyboard (dengan for, while atau do-while loop). * * * * * * * * * * * * * * * n n 40

Buatlah program untuk menampilkan gambar seperti contoh dibawah, dimana n variabel integer yg nilainya di-input dari keyboard (dengan for, while atau do-while loop). * * * * * * * * * * * * * * * n n 41

Apa Output dari program di bawah ini? #include <stdio.h> int main() { int x,y,z; for (x=0; x<4; x++) { for (y=0; y<3; y++) { for (z=0; z<3; z++) { if (z==2) break; printf("selamat\n"); printf("datang\n"); printf("di TIF-FTUB\n"); getch(); return(0); 42

Struktur logika pengulangan for exp1 exp3 statements exp2 true false 43

Struktur logika pengulangan for exp1 exp3 statements exp2 true false 44