Pengulangan/Looping (dalambahasac++)

dokumen-dokumen yang mirip
PERULANGAN P E N G A N TA R P R O G R A M S T U D I. Institut Teknologi Sumatera

PENGANTAR KOMPUTER & SOFTWARE II. Pengulangan (For) Tim Pengajar KU Institut Teknologi Sumatera

PENGANTAR KOMPUTER & SOFTWARE II

PENGANTAR KOMPUTER & SOFTWARE II

DASAR PEMROGRAMAN. Institut Teknologi Sumatera

PENGULANGAN Bagian 1 : Notasi. Tim Pengajar KU1071 Sem

REVIEW ARRAY. Institut Teknologi Sumatera

PENGANTAR KOMPUTER & SOFTWARE II. Array (Part II) Tim Pengajar KU Institut Teknologi Sumatera

LATIHAN SOAL (FUNGSI & PROSEDUR)

SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER STMIK AMIKOM YOGYAKARTA

LOOPING. Brigida Arie Minartiningtyas, M.Kom

OPERATOR DAN STATEMEN I/O

STRUKTUR DASAR ALGORITMA DAN PEMROGRAMAN STMIK AMIKOM YOGYAKARTA

Array (Tabel) [DalamBahasaC++]

ARRAY PENGANTAR PROGRAM STUDI. Institut Teknologi Sumatera

Algoritma Perulangan. Kuliah algoritma dan pemrograman

PERTEMUAN 9-11 STATEMENT

PERULANGAN Pengampu : Agus Priyanto, M.Kom

PENGANTAR KOMPUTER & SOFTWARE II PERCABANGAN

SUB PROGRAM P E N G A N TA R P R O G R A M S T U D I. Institut Teknologi Sumatera

PERCABANGAN P E N G E N A L A N P R O G R A M S T U D I T E K N I K I N F O R M AT I K A. Institut Teknologi Sumatera

Kisi-Kisi Ujian Tengah Semester Algoritma dan Pemrograman Lanjut

PENGANTAR KOMPUTER & SOFTWARE II PERCABANGAN

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

ARRAY / LARIK. Oleh : Agus Priyanto, M.Kom SEKOLAH TINGGI TEKNOLOGI TELEMATIKA TELKOM. Smart, Trustworthy, And Teamwork

LatihanSoal 2 (dalambahasac++)

StrukturDasarProgram Prosedural (dalambahasac++)

Rekursif/ Iterasi/ Pengulangan

PENGULANGAN. Ada lima macam notasi pengulangan: 1. Berdasarkan jumlah pengulangan. repeat n times

Subprogram (dalam Bahasa C++ + Flowchart)

AnalisisKasus/Percabangan (dalambahasac++)

Pengantar Pemrograman

BAB VI. STATEMENT CONTROL

STRUKTUR DASAR PEMROGRAMAN

BAB V STRUKTUR PENGULANGAN

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

Matriks. Tim Pengajar KU1072. KU1072/Pengenalan Teknologi Informasi B Tahap Tahun Pertama Bersama Institut Teknologi Bandung

PERULANGAN Pengampu : Agus Priyanto, M.Kom

LatihanSoal 1 (dalambahasac++)

PENGULANGAN SKEMA PEMROSESAN SEKUENSIAL. Tim Pengajar KU1071 Sem

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

PENGULANGAN. pencacah harus bertipe integer atau karakter pernyataan adalah satu atau lebih instruksi yang. Pernyataan

MODUL V PERULANGAN. Perulangan digunakan untuk menjalankan satu atau lebih perintah secara berulang selama kondisi tertentu.

Minggu III STRUKTUR PEMILIHAN (KONTROL PROGRAM)

Algoritma dan Pemrograman. Oleh: Eddy Prasetyo N

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

RUBRIK PENILAIAN UJIAN TENGAH SEMESTER KU1072/PENGENALAN TEKNOLOGI INFORMASI B SEM /2014

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

CCH1A4 / Dasar Algoritma & Pemrogramanan

Algoritma & Pemrograman

MODUL 5 PERULANGAN (LOOPING)

MODUL PRAKTIKUM. MODUL I - VIII Modul penuntun dan bahan praktikum matakuliah algoritma dan pemograman

MODUL PRAKTIKUM PERCABANGAN DAN PENGULANGAN

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

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

Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu :

Melakukan Operasi Logika

PRAKTIKUM 4 PERCABANGAN

List Linier (Bag. I) IF2121/Algoritma dan Struktur Data Sem. I 2016/ /25/2017 IF2121/Sem I 2017/2018 1

CCH1A4 / Dasar Algoritma & Pemrogramanan

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

Algoritma Pemrograman

Algoritma dan Pemrograman. Pertemuan Ke-8 Statement Pengulangan 1

Pernyataan FOR Pernyataan WHILE Pernyataan REPEAT. Dewi Sartika,M.Kom

Kasus 6.1 Buatlah algoritma dan program untuk mencetak nama Anda sebanyak 10 kali

Basic Input/Output Operator Yoannita

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

Bab 3. Decision 1 (Pengambilan Keputusan)

Decission : if & if else

STRUKTUR DASAR ALGORITMA

OPERATOR, PERULANGAN DAN SELEKSI KONDISI

PERTEMUAN 2 KONSEP DASAR PEMROGRAMAN

UJIAN TENGAH SEMESTER KU1072/PENGENALAN TEKNOLOGI INFORMASI B SEM /2014

Algoritma & Pemrograman #5

BAB V PERULANGAN. for ( inisialisasi; syarat pengulangan; pengubah nilai pencacah )

Minggu IV : Teori dan Workshop. PERULANGAN (LOOP/Iterasi/Repetisi)

Algoritma dan Pemrograman. Pertemuan Ke-7 Statement Pengendalian 2

Konstruksi Dasar Algoritma

PERULANGAN (LOOP) PERNYATAAN WHILE

PENGANTAR KOMPUTER & SOFTWARE 2 MATRIX

TIM ASISTEN PRAKTIKUM ALGORITMA DAN PEMROGRAMAN 2016

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

Fungsi 1. Ekohariadi FT Unesa

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

A. Putting a Program Together

A. Putting a Program Together

KU-1072 PENGENALAN TEKNOLOGI INFORMASI B (PTI B)

Perulangan, Percabangan, dan Studi Kasus

Instalasi Code::Blocks, Tipe Data, Variabel, Konstanta, Operator, Input-Output dan Flowchart

BAB IV STRUKTUR RUNTUNAN DAN PERCABANGAN

Algoritma Pemrograman

BAB II DASAR-DASAR ALGORITMA

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

Algoritma dan Pemrograman Tahar Agastani Teknik Informatika UIN

MODUL III CONTROL FLOW & FLOWCHART

Algoritma Pemrograman

Selection / Pemilihan PEMILIHAN

OPERASI SELEKSI PEMROGRAMAN C++

Imam Fahrur Rozi. Algoritma dan Pemrograman OPERATOR

MODUL ALGORITMA DAN PEMROGRAMAN. STMIK AMIKOM Yogyakarta. Rajif Agung Yunmar, S.Kom., M.Cs.

Transkripsi:

Pengulangan/Looping (dalambahasac++) Tim Penyusun Materi PTI-B KU1072/Pengenalan Teknologi Informasi B Tahap Tahun Pertama Bersama Institut Teknologi Bandung

Tujuan Mahasiswa memahami jenis-jenis pengulangan dan penggunaannya serta memahami elemen-elemen dalam pengulangan. Mahasiswa dapat menggunakan notasi pengulangan yang sesuai dengan benar Mahasiswa dapat memanfaatkan jenis-jenis pengulangan dengan tepat dalam menyelesaikan persoalan sederhana yang diberikan. 9/20/2013 WD/PTI-B 2

Menulis1 dan2 Tuliskan program yang menuliskan angka 1 dan 2 dan selanjutnya 1+2 ke layar Contohkeluaran: 1 2 3... int main () { // KAMUS // ALGORITMA cout << 1 << endl; cout << 2 << endl; cout << 1+2 << endl; return 0; 20/09/2013 KU1072/Pengenalan Teknologi Informasi B 3

Menulis1 s.d. 3 Tuliskan program yang menuliskan angka 1 s.d. 3 dan selanjutnya 1+2+3 ke layar Contohkeluaran: 1 2 3 6... int main () { // KAMUS // ALGORITMA cout << 1 << endl; cout << 2 << endl; cout << 3 << endl; cout << 1+2+3 << endl; return 0; 20/09/2013 KU1072/Pengenalan Teknologi Informasi B 4

Menulis1 s.d. 10 Tuliskanprogram yang menuliskanangka1 s.d. 10 dan selanjutnya 1+2+3+ +10 ke layar Contohkeluaran: 1 2 3 4 5 6 7 8 9 10 55... int main () { // KAMUS // ALGORITMA cout << 1 << endl; cout << 2 << endl; cout << 3 << endl; cout << 4 << endl; cout << 5 << endl; cout << 6 << endl; //lanjutkan sendiri!! cout << 10 << endl; cout << 1+2+3+4+5+6+7+8+9+10 << endl; return 0; 20/09/2013 KU1072/Pengenalan Teknologi Informasi B 5

Menulis1 s.d. 100 Tuliskanprogram yang menuliskanangka1 s.d. 100 dan selanjutnya 1+2+3+ +100 ke layar Contohkeluaran: 1 2 3 4 5 6 7 8 9 10... int main () { // KAMUS // ALGORITMA cout << 1 << endl; cout << 2 << endl; cout << 3 << endl; cout << 4 << endl; cout << 5 << endl; cout << 6 << endl; //lanjutkan sendiri!! cout << 100 << endl; cout << 1+2+3+4+5+6+7+8+9+10+11+12+ // lanjutkan sendiri!!! return 0; 20/09/2013 KU1072/Pengenalan Teknologi Informasi B 6

Bagaimanakalau Anda diminta menulis dan menjumlahkan 1 s.d. 1000??? 1 s.d. 10000??? 1 s.d. 1000000???. 20/09/2013 KU1072/Pengenalan Teknologi Informasi B 7

Pengulangan: LatarBelakang Melakukansuatuinstruksi, bahkan aksi, secara berulang-ulang Komputer: memiliki performansi yang sama Manusia: punya kecenderungan untuk melakukan kesalahan(karena letih atau bosan) 9/20/2013 WD/PTI-B 8

Pengulangan/ Looping Elemen: Kondisi pengulangan: ekspresi lojik Badan pengulangan: aksi yang diulang Jenis-jenis notasi pengulangan: 1. Berdasarkan kondisi pengulangan di akhir: while 2. Berdasarkan kondisi pengulangan di awal: do-while 3. Berdasarkan pencacah: for 9/20/2013 WD/PTI-B 9

StudiKasusuntukContoh Tuliskan program yang menerima masukan sebuah integer misalnyan danmenuliskanangka1, 2, 3, N danmenuliskan1+2+3+ +N kelayar. AsumsikanN > 0. Contoh: N = 1 Tampilan di layar: 1 1 N = 5 Tampilan di layar: 1 2 3 4 5 15 N = 10 Tampilan di layar: 1 2 3 4 5 6 7 8 9 10 55 20/09/2013 KU1072/Pengenalan Teknologi Informasi B 10

1. Pengulangan Berdasarkan Kondisi Pengulangan di Akhir(do-while) Inisialisasi-Aksi First-Element do { Aksi Next-Element while (kondisi-pengulangan); Terminasi true Inisialisasi-Aksi First-Element Aksi Next-Element kondisipengulangan false Terminasi 9/20/2013 WD/PTI-B 11

do-while Pengulangan dikendalikan oleh elemen pengulangan yang diinisialisasi sebagai First-Element dan diubah nilainya dalam badan pengulangan menjadi Next-Element Aksi minimal akan dilakukan satu kali karena pada waktu eksekusipengulanganyang pertamatidakdilakukantest terhadap kondisi-pengulangan Aksi akan dihentikan jika kondisi-pengulangan tidak dipenuhi(berharga false), akan diulang jika kondisipengulangan tercapai Test terhadap kondisi pengulangan dilakukan setelah Aksi dilaksanakan Pengulangan berpotensi mengalami kebocoran, jika ada kemungkinan bahwa seharusnya Aksi tidak pernah boleh dilakukan untuk kasus tertentu 20/09/2013 KU1072/Pengenalan Teknologi Informasi B 12

// Program JumlahAngka // Menghitung 1+2+3+...+N; N > 0 #include <iostream> using namespace std; int main () { // KAMUS int N, i, sum; // ALGORITMA cin >> N; sum = 0; //Inisialisasi-aksi i = 1; //First-element do { cout << i << endl; //Aksi sum = sum + i; //Aksi i = i + 1; //Next-Element while (i <= N); //Kondisi Pengulangan cout << sum << endl; //Terminasi return 0; Contoh do-while // Alternatif ekspresi do { cout << i << endl; sum+=i; i++; while ( i <= N ); 20/09/2013 KU1072/Pengenalan Teknologi Informasi B 13

2. Pengulangan Berdasarkan Kondisi Pengulangan di Awal(while) Inisialisasi-aksi First-Element while (kondisi-pengulangan) { Aksi Next-Element //Kondisi-pengulangan=false Terminasi false Inisialisasi-aksi First-Element kondisipengulangan Aksi true Next-Element Terminasi 9/20/2013 WD/PTI-B 14

while Pengulangan dikendalikan oleh elemen pengulangan yang diinisialisasi sebagai First-Element dan diubah nilainya dalam badan pengulangan menjadi Next- Elem Aksi akan dilakukan selama kondisi- pengulangan masih dipenuhi(berharga true) Tes terhadap kondisi-pengulangan dilakukan setiap kali sebelum aksi dilaksanakan Pengulangan ini berpotensi untuk menimbulkan Aksi kosong (tidakpernahmelakukanapa-apa) karena pada test yang pertama, kondisipengulangantidakdipenuhi(berhargafalse) sehingga langsung ke luar loop 20/09/2013 KU1072/Pengenalan Teknologi Informasi B 15

// Program JumlahAngka // Menghitung 1+2+3+...+N; N > 0 #include <iostream> using namespace std; int main () { // KAMUS int N, i, sum; // ALGORITMA cin >> N; sum = 0; //Inisialisasi i = 1; //First-Element while (i <= N) { //Kondisi-pengulangan cout << i << endl; //Aksi sum = sum + i; //Aksi i = i + 1; //Next-Element // i > N cout << sum << endl; //Terminasi return 0; Contoh while // Alternatif ekspresi while (i <= N) { cout << i << endl; sum+=i; i++; // i > N 20/09/2013 KU1072/Pengenalan Teknologi Informasi B 16

3. Pengulangan Berdasarkan Pencacah(for) Inisialisasi-aksi for (pencacah = hmin; pencacah <= hmaks; pencacah++) { Aksi Terminasi false Inisialisasi-aksi pencacah=hmin pencacah<= hmaks Aksi true pencacah++ pencacah = pencacah +1 pencacah++ Terminasi 9/20/2013 WD/PTI-B 17

for pencacahharussuatuvariable dengantype yang terdefinisi suksesor dan predesesornya, misalnya integer Nilai pencacah adalah dari hmin s.d. hmaks Aksi akan dilakukan dengan memperhitungkan harga-harga dari pencacah yang di- jelajahi Harga pencacah di-increment melalui operasi pencacah++ (alias pencacah=pencacah+1), setiap kali Aksi selesai dilaksanakan Jika pencacah=hmaks, maka pengulangan berhenti 20/09/2013 KU1072/Pengenalan Teknologi Informasi B 18

Bentuk umum loop for Inisialisasi-aksi Inisialisasi-aksi for (Inisialisasi-pencacah; kondisi-pengulangan; Next-pencacah) { Aksi Terminasi false Inisialisasi-pencacah kondisipengulangan Aksi true Next-pencacah Terminasi 9/20/2013 WD/PTI-B 19

Bentuk umum Kondisi-pengulangan loop for Inisialisasi pencacah assignment nilai awal pencacah ekspresi boolean untuk menentukan pengulangan Inisialisasi-aksi Inisialisasi-aksi for (Inisialisasi-pencacah; kondisi-pengulangan; Next-pencacah) { Aksi Terminasi Next-pencacah operasi aritmatika yang menentukan perubahan nilai pencacah false Inisialisasi-pencacah kondisipengulangan Aksi true Next-pencacah Terminasi 9/20/2013 WD/PTI-B 20

Contoh for // Program JumlahAngka // Menghitung 1+2+3+...+N; N > 0 #include <iostream> using namespace std; int main () { // KAMUS int N, i, sum; // ALGORITMA pencacah: i Inisialisasi-pencacah: i = 1 kondisi pengulangan: i <= N Next-pencacah: i++ cin >> N; sum = 0; //Inisialisasi-aksi for (i = 1; i <= N; i++) { cout << i << endl; //Aksi sum = sum + i; //Aksi, alternatif: sum+=i; cout << sum << endl; //Terminasi return 0; 20/09/2013 KU1072/Pengenalan Teknologi Informasi B 21

LatihanSoal 20/09/2013 KU1072/Pengenalan Teknologi Informasi B 22

Soal1 : BerapaHello dilayar? stop = 1; // artinya stop=true do { cout << Hello << endl; while (stop); do { cout << Hello << endl; while (0); // 0 = false do { cout << Hello << endl; while (1); // 1 = true Tak terhingga 1 kali Tak terhingga 9/20/2013 MLK/KU1071 23

Soal1 : BerapaHello dilayar? i = 1; while (i < 5) { cout << Hello << endl; i = i + 1; // i>=5 while (0) { // 0 = false cout << Hello << endl; // false 4 kali 0 tidakada Hello yang tertulis while (1) { // 1 = true cout << Hello << endl; // false Tidak terhingga 20/09/2013 KU1072/Pengenalan Teknologi Informasi B 24

Soal-2 Buatlah program yang menerima masukan 10 buah bilangan integer (dari keyboard) dan menuliskan ke layar jumlah total ke-10 integer tersebut. Contoh: Masukan: Tampilandilayar: 2 1 0-9 7 13 2 2 1-1 18 20/09/2013 KU1072/Pengenalan Teknologi Informasi B 25

SolusiSoal-2 Alternatif1 // Program Jumlah10Angka // Menerima masukan 10 buah integer dan menjumlahkan totalnya #include <iostream> using namespace std; int main () { // KAMUS int N, i, sum; // ALGORITMA sum = 0; //Inisialisasi for (i = 1; i <= 10; i++) { cin >> N; sum = sum + N; //Alternatif instruksi: sum+=n; cout << sum << endl; //Terminasi return 0; 20/09/2013 KU1072/Pengenalan Teknologi Informasi B 26

SolusiSoal-2 Alternatif2 // Program Jumlah10Angka // Menerima masukan 10 buah integer dan menjumlahkan totalnya #include <iostream> using namespace std; int main () { // KAMUS int N, i, sum; // ALGORITMA sum = 0; //Inisialisasi-aksi i = 1; //First-Element do { cin >> N; sum = sum + N; //Alternatif: sum+=n; i = i + 1; //Next-element, Alternatif: i++; while (i <= 10); cout << sum << endl; //Terminasi return 0; 20/09/2013 KU1072/Pengenalan Teknologi Informasi B 27

Soal-3 (1) Buatlah program yang membaca sejumlah bilangan integer dari keyboard sampai pengguna memasukkan angka-999 (angka-999 tidak termasuk bilangan yang diolah). Tuliskanberapabanyakbilanganyang dimasukkan, nilai total, dan rata-rata semua bilangan Jikadarimasukanpertamasudahmenuliskan-999, maka tuliskan pesan Tidak ada data yang diolah 20/09/2013 KU1072/Pengenalan Teknologi Informasi B 28

Soal-3 (2) Contoh-1: Input : -1 12-6.1 10 2.5-999 Output: Banyak bilangan = 5 Jumlahtotal = 17 Rata-rata = 3.4 Contoh-2 Input : -999 Output: Tidakadadata yang diolah 20/09/2013 KU1072/Pengenalan Teknologi Informasi B 29

// Program ProsesReal // Menerima masukan sejumlah bilangan real sampai pengguna memasukkan // -999 dan dan menampilkan banyak bilangan, total, dan rata-ratanya #include <iostream> using namespace std; int main () { // KAMUS int N, count, sum; float rata; // ALGORITMA sum = 0; count = 0; //Inisialisasi cin >> N; //First-Element while (N!= -999) { //Kondisi-pengulangan count++; //Alternatif: count=count+1; sum+=n; //Alternatif: sum=sum+n; cin >> N; //Next-Element //N=-999 //Terminasi if (count > 0) { cout << Banyak bilangan = << count << endl; cout << Jumlah total = << sum << endl; rata = (float)sum/(float)count; cout << Rata-rata = << rata << endl; else { // count == 0 cout << Tidak ada data yang diolah << endl; return 0; Alternatif Solusi Soal-3 20/09/2013 KU1072/Pengenalan Teknologi Informasi B 30

Soal-4 (1) Buatlah program untuk membaca sekumpulan bilangan bulat (integer) yang diakhiri -999 (-999 tidak termasuk), dan mencetak banyaknya bilangan genap, ganjil, positif, dan negatif. Bilangan 0 adalah bilangan genap, tetapi tidak positif atau pun negatif. 20/09/2013 KU1072/Pengenalan Teknologi Informasi B 31

Contoh-1 Input : -9 12 0-6 27 62-999 Output: Bilangan genap ada = 4 Bilangan ganjil ada = 2 Bilangan positif ada = 3 Bilangan negatif ada = 2 Soal-4 (2) Contoh-2 Input : -999 Output: Bilangan genap ada = 0 Bilangan ganjil ada = 0 Bilangan positif ada = 0 Bilangan negatif ada = 0 20/09/2013 KU1072/Pengenalan Teknologi Informasi B 32

#include <iostream> using namespace std; int main () { // KAMUS int N, countgenap, countganjil, countpos, countneg; // ALGORITMA countgenap=0; countganjil=0; countpos=0; countneg=0; cin >> N; //First-Element while (N!= -999) { if (N % 2 == 0) { countgenap++; else { // N % 2!= 0 countganjil++; if (N > 0) { countpos++; else if (N < 0) { countneg++; cin >> N; //Next-Element //N=-999 cout << Bilangan genap ada = << countgenap << endl; cout << Bilangan ganjil ada = << countganjil << endl; cout << Bilangan positif ada = << countpos << endl; cout << Bilangan negatif ada = << countneg << endl; return 0; Alternatif Solusi Soal-4 20/09/2013 KU1072/Pengenalan Teknologi Informasi B 33

Soal-5: LaguAnakAyam Masih ingatkah dengan lagu Anak Ayam?? Anak ayam turunlah 5 Mati satu tinggallah 4 Mati satu tinggallah 3 Mati satu tinggallah 2 Mati satu tinggal induknya generalisasi Anak ayam turunlah N Mati satu tinggallah N-1 Mati satu tinggallah N-2. Mati satu tinggallah 2 Mati satu tinggal induknya Buatlah 3 versi program yang menerima masukan sebuah integer positif > 0, misalnya N, dan menuliskan lirik lagu Anak Ayam dengan memanfaatkan pengulangan: do-while while for 20/09/2013 KU1072/Pengenalan Teknologi Informasi B 34