200 likes | 343 Views
Pertemuan 8. Struktur Kendali P ercabangan WHILE & DO-WHILE. Dasar Pemrograman Renni Angreni, S.Kom . , M.Kom. WHILE. Pernyataan while melakukan perulangan sampai syarat dari while terpenuhi atau pernyataan break dihampiri .
E N D
Pertemuan 8 StrukturKendaliPercabangan WHILE & DO-WHILE Dasar Pemrograman Renni Angreni, S.Kom., M.Kom.
WHILE • Pernyataanwhilemelakukanperulangansampaisyaratdari while terpenuhiataupernyataan break dihampiri. • Pernyataanwhilemerupakansalahsatupernyataan yang bergunauntukmemrosessuatupernyataanataubeberapapernyataanbeberapa kali.
Flowchart WHILE • while (ungkapan) pernyataan; • while (ungkapan) • { pernyataan1; • pernyataan2; • … • pernyataanN; • } kondisi Y Pernyataan T pernyataan selanjutnya @RenniAngreni, M.Kom.
Bagianpernyataanpada while akandieksekusiselamaungkapanpada while bernilaibenar. • Pengujianterhadapungkapanpada while dilakukansebelumbagianpernyataan. Olehkarenaitu, adakemungkinanbagianpernyataanpada while tidakdijalankansamasekali, yaitukalaukondisi yang pertama kali bernilaisalah. • Jikamenggunakanpernyataan while pastikanbahwasuatusaatungkapan while bernilaisalah, jikatidakmakapernyataanakandijalankanselamanya.
Contoh • Cth1 bandingkan Cth2 #include <iostream> #include <conio.h> using namespace std; void main() { inti=0; while (i <= 10) { cout<<“C++”; i = i + 1; } _getch(); } #include <iostream> #include <conio.h> using namespace std; void main() { inti=0; while (i <= 10) { cout<<“C++”; } _getch(); }
Pada Cth1, penggunaan while untukmelakukanperulanganmenampilkantulisan “C++”. Variabelibertindaksebagaipencacahuntukmengingatjumlahtulisan yang sudahditampilkan. Itulahsebabnyamula-muladiisidengannol, kemudianuntuksetiapputaranisivariabeldinaikkan (i=i+1). Olehkarenavariabelinidijadikansebagaikondisipada while, suatuketikakondisi (i <= 10) akanbernilaisalah (yaitupadaimencapainilai 11) sehingga while akanberakhir, pernyataandalam while tidakdieksekusilagi. • Padalayarakandicetaktulisan “C++” sebanyak 11 kali (kondisii=0 sampaii=10). @RenniAngreni, M.Kom.
Pada Cth2, penggunaan while samauntukmelakukanperulanganmenampilkantulisan “C++”. Variabelibertindaksebagaipencacahuntukmengingatjumlahtulisan yang sudahditampilkan. Itulahsebabnyamula-muladiisidengannol, tetapidalampernyataan while tidakadapernyataan yang dapatmembuatkondisi while (i <= 10) bernilaisalahsehinggapernyataandidalam while akandijalankanterusmenerus (nilaiiselalunol, iselalu <=10). • Padalayarakandicetaktulisan “C++” berulang-ulang (tidakberhenti). • Padacontohstruktur while diatas, pencacah (variabeli) harusdiberinilaiawal, danadapernyataan yang membuatkondisi while bernilaisalah, sertaurutanpernyataan yang akandieksekusidalam while berpengaruh.
Contoh #include <iostream> #include <conio.h> using namespace std; void main() { inti = 1; while (i<=10) { cout<<i<<endl; i = i + 1; } _getch(); } Pernyataan i = i + 1; dapatdituliskan i += 1; atau i++;
#include <iostream> #include <conio.h> using namespace std; void main() { inti = 1; while (i<=10) { i = i + 1; cout<<i<<endl; } _getch(); } Urutanpernyataandi dalam while berpengaruh.
#include <iostream> #include <conio.h> using namespace std; void main() { inti = 1; while (i <= 10) { cout<<i<<endl; i = i + 1; if (i == 8) break; } _getch(); } Strukturkendali IF didalamwhile
LATIHAN Buatlahsebuah program C++ (dengan While) untuk : • Menampilkan 20 buahhuruf C. • Menampilkanangka 1 – 20. • Menampilkanangka 20 – 1. • Menampilkanangkaganjildari 1 – 50. • Menampilkanangkagenapdari 1 – 50. • Menampilkanbilangankelipatan 3 dari 1 – 100. • Bertanyakepada user “Apakahinginmembeli?” sampaidijawab “ya”. • Menampilkanbilangankelipatan 8 darirentang 1 sampaibatasrentang yang diinput user. @RenniAngreni, M.Kom.
DO … WHILE • Pernyataando…whilesamadenganpernyataanwhilehanyasajakondisiperulangandicekdiakhirperulangan (kalau while diawalperulangan). Sehinggaperulangan do…while akandieksekusi minimal satu kali, sedangkanpada while bagianpernyataanmungkintidakakandieksekusisamasekali.
Flowchart DO…WHILE • do { • pernyataan1; • pernyataan2; • … • pernyataanN; • } while (ungkapan); Pernyataan kondisi Y T Pernyataan selanjutnya
Contoh • Cth1 bandingkan Cth2 #include <iostream> #include <conio.h> using namespace std; void main() { char abjad = 'A'; do { cout<<abjad<<" "; abjad += 1; } while (abjad<='Z'); _getch(); } #include <iostream> #include <conio.h> using namespace std; • void main() • { char abjad = 'A'; • do { • cout<<abjad<<" "; • abjad += 1; • } while (abjad<'A'); • _getch(); • }
Pada Cth1, penggunaan do…while untukmencetakhurufsampaikondisididalam while terpenuhi, yaitu (abjad<=‘Z’) samahalnyadenganpenggunaan while. Padalayarakanditampilkan A B C D E F G H I J K L M N O P Q R S T U V W X Y Z. • Sedangkanpada Cth2, penggunaan do…while tidakterjadiperulangankarenakondisipada while telahbernilaisalah, tetapipernyataandidalam do akandijalankandahulusebelumpengecekankondisi, sehinggahanyaakanmencetaksatubuahhurufsajayaitu A. Berbedadenganpenggunaan while dimanapengecekandilakukandiawalsehinggapernyataantidakakandijalankankarenatelahbernilaisalah.
Contoh #include <iostream> #include <conio.h> using namespace std; void main() { inti=0; do { cout<<"C++"<<endl; i = i + 1; } while (i<=10); _getch(); } Pernyataan i = i + 1; dapatdituliskan i += 1; atau i++;
LATIHAN Buatlahsebuah program C++ (dengan do…while) untuk : • Menampilkan 20 buahhuruf C. • Menampilkanangka 1 – 20. • Menampilkanangka 20 – 1. • Menampilkanangkaganjildari 1 – 50. • Menampilkanangkagenapdari 1 – 50. • Menampilkanbilangankelipatan 3 dari 1 – 100. • Bertanyakepada user “Apakahinginmembeli?” sampaidijawab “ya”. • Menampilkanbilangankelipatan 8 darirentang 1 sampaibatasrentang yang diinput user. @RenniAngreni, M.Kom.
Buatlahsebuah program C++ yang menerima input berupajumlahbarangdanhargabarang, yang kemudianmenampilkan total harganya. Setelah program berakhir, user ditanyaapakahmaumengulangmenjalankan program atautidak. Jikamenjawab ‘Y’ maka program diulangdariawal, jikamenjawab ‘T’ maka program selesai.
-- Sekian -- Dasar Pemrograman Renni Angreni, S.Kom., M.Kom.