SlideShare a Scribd company logo
Modul06
PERCABANGAN
Kondisi merupakan hal yang menentukan didalam mengambil keputusan
mengenai tindakan yang diambil. Didalam pemrograman kondisi dikenal
dalam bentuk IF, CASE ataupun yang setara.
6.1 Pernyataan If
Adapun pernyataan yang pertama berbentuk :
IF kondisi(-kondisi) yang harus dipenuhi
Pernyataan
Pernyataan
……
……
Bagan alurnya adalah sebagai berikut :
True (benar) False (Salah)
Dasar pemrograman/ Modul_06_Percabangan 1
6
Kondisi
Pernyataan
Pada bentuk if, pernyataan hanya akan dijalankan kalau kondisi bernilai benar.
Yang terpenting dari bagan alur diatas adalah kondisinya. Kodisilah yang menentukan
apakah sebuah pernyataan program akan dieksekusi atau tidak
Contoh pseudocode dari bentuk pernyataan if adalah :
Variabel :
Suhu : bilangan nyata
Mulai
Masukkan suhu tubuh pada variable suhu
Jika Suhu > 37 maka nyatakan panas
Selesai
Pernyataan tersebut bisa dterjemahkan kedalam bahasa pemrograman dibawah ini :
C++ Pascal
Include <iostream.h>
void main (void)
{
float suhu;
cout << “Masukkan Suhu : ”;
cin >> suhu;
if (suhu > 37)
{ cout << “Panas”;}
cout << “Selesai”
}
Var
Suhu : Real;
Begin
Write (‘Masukkan Suhu : ’);
Readln(Suhu);
If Suhu > 37 then
writeln(‘Panas’);
Writeln(‘Selesai’)
End.
Dasar pemrograman/ Modul_06_Percabangan 2
Pada pernyataan diatas “Panas” tidak selalu ditampilkan tergantung kepada
nilai yang dimasukkan oleh user. Tetapi pernyataan ‘Selesai’ akan selalu ditampilkan
karena tidak tergantung kepada kondisi if.
6.2 Pernyataan If....Else
Pernyataan if..else digunakan untuk menguji sebuah kondisi. Bila kondisi yang
diuji terpenuhi, program akan menjalankan pernyuataan-pernyataan tertentu; dan bila
kondisi yang diuji salah, program akan menjalankan pernyatan-pernyataan yang lain.
Bentuk umum pernyataan if..else adalah sebagai berikut:
IF kondisi(-kondisi) yang harus dipenuhi
Pernyataan
Pernyataan
……
……
ELSE
Pernyataan
Pernyataan
……
……
Kondisi sendiri merupakan suatu ekspresi bertipe boolean, artinya hanya dapat
bernilai benar (true) atau salah (false).
Bagan alurnya adalah sebagai berikut :
True (benar) False (Salah)
Dasar pemrograman/ Modul_06_Percabangan 3
Kondisi
Pernyataan
Pernyataan
Pada bentuk ini :
1. Pernyataan sesudah if akan dieksekusi kalau kondisi bernilai benar
2. Pernyataan sesudah else akan dieksekusi kalau kondisi bernilai salah
Sebagai contoh diinginkan tampilan :
1. Suhu tinggi jika bernilai lebih dari 37
2. Suhu tidak tinggi kalau kurang atau sama dengan 37
Maka contoh pseudocodenya adalah sebagai berikut :
Variabel :
Suhu : bilangan nyata
Mulai
Masukkan suhu tubuh pada variable suhu
Jika Suhu > 37 maka nyatakan panas
Selain itu nyatakan tidak panas
Selesai
Dasar pemrograman/ Modul_06_Percabangan 4
Pernyataan tersebut bisa diterjemahkan kedalam bahasa pemrograman dibawah ini :
C++ Pascal
Include <iostream.h>
void main (void)
{
float suhu;
cout << “Masukkan Suhu : ”;
cin >> suhu;
if (suhu > 37)
{ cout << “Panas”;}
else
{ cout << “Tidak Panas”;}
cout << “Selesai”
}
Var
Suhu : Real;
Begin
Write (‘Masukkan Suhu : ’);
Readln(Suhu);
If Suhu > 37 then
writeln(‘Panas’)
Else
WriteLn(‘Tidak Panas’)
Writeln(‘Selesai’)
End.
6.3Pernyataan if..else if
Dalam kasus-kasus tertentu, sebuah konstruksi if dan else dapat terdapat
bentuk bersarang (nested). Bentuk bersarang merupakan contoh bentuk dari sebuah
atau beberapa buah pernyataan if dan else yang terdapat didalam bentuk if dan else
yang lainnya. Nested IF dan ELSE merupakan pernyataan yang lebih rumit
dibandingkan dengan pernyataan IF dan ELSE sederhana.
Berikut ini adalah contoh bentuk pernyataan tersebut :
Dasar pemrograman/ Modul_06_Percabangan 5
Dasar pemrograman/ Modul_06_Percabangan 6
Jumlah Buku >= 50
Diskon 20% Diskon 15 % Diskon 10 %
Tdk Ada
Diskon
Jumlah Buku >= 35
Jumlah Buku >= 20
Harga Buku = 2500
Contoh dari pemrograman dengan menggunakan nested if adalah sebagai berikut :
Bahasa C++ Bahasa Pascal
#include <iostream.h>
void main(void)
{
int Jumlah_Buku;
float harga;
cout << “Jumlah Buku: “<< endl ;
cin >> Jumlah_Buku;
if (Jumlah_Buku >= 50)
{
harga= Jumlah_Buku * 0.8 * 2500;
cout<< “Total harga: ”<< harga;
}
else
{
if (Jumlah_Buku >= 35)
{
harga= Jumlah_Buku * 0.85 * 2500;
cout<< “Total harga: ”<< harga;
}
else
{
if (Jumlah_Buku >= 20
{
harga= Jumlah_Buku * 0.9 * 2500;
cout << “Total harga: ”<< harga;
}
else
{
harga= Jumlah_Buku * 2500;
cout<< ”Total Harga: ”<< harga;
}
}
}
}
Var
Jumlah_Buku : integer;
Harga_Buku : real;
Begin
Write (‘Jumlah Buku = ‘);
ReadLn(Jumlah_Buku);
IF Jumlah_Buku >= 50 then
Begin
Harga:= Jumlah_Buku * 0.8 * 2500;
WriteLn(‘Total Harga= ‘, Harga);
End
Else
IF Jumlah_Buku >= 35 then
Begin
Harga:= Jumlah_Buku * 0.85 *
2500;
WriteLn(‘Total Harga= ‘, Harga);
End
Else
IF Jumlah_Buku >= 20
Begin
Harga:= Jumlah_Buku * 0.9 *
2500;
WriteLn(‘Total Harga= ‘, Harga);
End
Else
Begin
Harga:= Jumlah_Buku * 2500;
WriteLn(‘Total Harga= ‘, Harga);
End;
End.
Dasar pemrograman/ Modul_06_Percabangan 7
6.4 Pernyataan Case
Pernyataan Case digunakan untuk menyederhanakan konstruksi if..else if yang
terlalu banyak. Sebagai contoh, program berikut:
If ( x = 0) then
Writeln(‘X bernilai 0’)
Else if (x = 1) then
Writeln(‘X bernilai 1’)
Else if (x = 2) then
Writeln(‘X bernilai 2’)
Else if (x = 3) then
Writeln(‘X bernilai 3’)
Else
Writeln(‘X tidak bernilai 0, 1, 2, ataupun 3’);
Dapat diganti menjadi lebih ringkas dan mudah dibaca dengan program berikut:
Case x of
0 : Writeln(‘X bernilai 0’);
1 : Writeln(‘X bernilai 1’);
2 : Writeln(‘X bernilai 2’);
3 : Writeln(‘X bernilai 3’);
else
Writeln(‘X tidak bernilai 0, 1, 2, ataupun 3’);;
End;
Jika dilihat pada contoh di atas bahwa meskipun hasil dari kedua program
tersebut sama tetapi penulisan dengan case lebih mudah dibaca.
Contoh-contoh soal:
1. Tulislah algoritma dan program yang menampilkan ’Genap’ jika suatu bilangan
adalah bilangan genap atau ’Ganjil’ jika bilangan tersebut adalah bilangan ganjil.
Nilai masukan adalah bilangan bulat, yaitu x, dimana 0 ≤ x ≤ 65535. keluaran dari
program ini adalah ’Bilangan Genap’ atau ’Bilangan ganjil’.
Jawab:
Dasar pemrograman/ Modul_06_Percabangan 8
Suatu bilangan dikatakan bilangan genap jika habis dibagi 2. dengan demikian
algoritma pengecekan bilangan genap atau ganjil dapat dituliskan sebagai berikut:
1. Masukkan x.
2. jika (x habis dibagi 2 ) maka kerjakan baris 3; jika tidak kerjakan baris 4.
3. tulis ’Bilangan genap’. Selesai.
4. tulis ’Bilangan ganjil’. Selesai.
Contoh program dalam Pascal untuk mengecek suatu bilangan termasuk bilangan
ganjil atau genap:
Var
x: word;
begin
write (‘Masukkan suatu bilangan bulat sembarang: ‘);
readln(x);
if (x mod 2 = 0) then
writeln (‘Bilangan genap’)
else
writeln (‘Bilangan ganjil’);
end.
Keluaran dari program tersebut adalah sebagai berikut:
Masukkan suatu bilangan bulat sembarang: 25
Bilangan ganjil
Masukkan suatu bilangan bulat sembarang: 4
Bilangan genap
2. Tulislah algoritma dan program yang meminta masukan bilangan bulat dari
pengguna. Jika pengguna memasukkan 0, program menampilkan ’Minggu’; jika
pengguna memasukkan 1, program menampilkan ’Senin’, dan seterusnya sampai
dengan ’Sabtu’. Jika pengguna memasukkan nilai di luar jangkauan 0 sampai
dengan 6, program menuliskan ’Hari tidak Valid’.
Jawab:
Algoritma untuk menampilkan hari dapat dituliskan sebagai berikut:
Dasar pemrograman/ Modul_06_Percabangan 9
1. Masukkan x.
2. Jika (x = 0) Tulis ’Minggu’. Selesai.
3. Jika (x = 1) Tulis ’Senin’. Selesai.
4. Jika (x = 2) Tulis ’Selasa’. Selesai.
5. Jika (x = 3) Tulis ’Rabu’. Selesai.
6. Jika (x = 4) Tulis ’Kamis’. Selesai.
7. Jika (x = 5) Tulis ’Jumat’. Selesai.
8. Jika (x = 6) Tulis ’Sabtu’. Selesai.
9. Tulis ’Hari tidak Valid’
Jika ditulis dalam program Pascal sebagai berikut:
Var
x : byte;
begin
write (’ Masukkan bilangan bulat (0 – 6): ’);
readln (x);
case (x) of
0: writeln (’Minggu’);
1: writeln (’Senin’);
2: writeln (’Selasa’);
3: writeln (’Rabu’);
4: writeln (’Kamis’);
5: writeln (’Jumat’);
6: writeln (’Sabtu’);
else
writeln (’Hari tidak Valid’);
end;
end.
Keluaran dari program di atas adalah sebagai berikut:
Masukkan bilangan bulat (0 – 6) : 5
Jumat
  
Dasar pemrograman/ Modul_06_Percabangan 10

More Related Content

What's hot

Algoritma pemrograman 8
Algoritma pemrograman 8Algoritma pemrograman 8
Algoritma pemrograman 8
ZainalAbidin909479
 
Ayo membuat program pascal
Ayo membuat program pascalAyo membuat program pascal
Ayo membuat program pascalHary Purwoko
 
Pascal tutorialtpascal701
Pascal tutorialtpascal701Pascal tutorialtpascal701
Pascal tutorialtpascal701
Alvin Setiawan
 
Algoritma pemrograman 7
Algoritma pemrograman 7Algoritma pemrograman 7
Algoritma pemrograman 7
ZainalAbidin909479
 
Pascal 4-aturan-penulisan-pascal
Pascal 4-aturan-penulisan-pascalPascal 4-aturan-penulisan-pascal
Pascal 4-aturan-penulisan-pascal
adealfarisi
 
Algoritma dan pemrograman 1
Algoritma dan pemrograman 1Algoritma dan pemrograman 1
Algoritma dan pemrograman 1
Javra Ketoprak
 
Algoritma pemrograman 10
Algoritma pemrograman 10Algoritma pemrograman 10
Algoritma pemrograman 10
ZainalAbidin909479
 
Modul pascal lengkap
Modul pascal lengkapModul pascal lengkap
Modul pascal lengkapsmk2kuripan
 
Materi dasar-pascal
Materi dasar-pascalMateri dasar-pascal
Materi dasar-pascal
Maruf das Trifat
 
Algoritma pemrograman 6
Algoritma pemrograman 6Algoritma pemrograman 6
Algoritma pemrograman 6
ZainalAbidin909479
 
Algoritma dan Pemrograman C++ (Perulangan)
Algoritma dan Pemrograman C++ (Perulangan)Algoritma dan Pemrograman C++ (Perulangan)
Algoritma dan Pemrograman C++ (Perulangan)
Nabil Muhammad Firdaus
 
Pertemuan 4
Pertemuan 4Pertemuan 4
Pertemuan 4
Syaiful Ahdan
 
Algoritma pemrograman 9
Algoritma pemrograman 9Algoritma pemrograman 9
Algoritma pemrograman 9
ZainalAbidin909479
 
Pertemuan 3
Pertemuan 3Pertemuan 3
Pertemuan 3
Syaiful Ahdan
 
C04 struktur percabangan_22
C04 struktur percabangan_22C04 struktur percabangan_22
C04 struktur percabangan_22shintiatrie
 
Algoritma pemrograman 11
Algoritma pemrograman 11Algoritma pemrograman 11
Algoritma pemrograman 11
ZainalAbidin909479
 
Algoritma pemrograman 14
Algoritma pemrograman 14Algoritma pemrograman 14
Algoritma pemrograman 14
ZainalAbidin909479
 
3 pemrograman matlab
3 pemrograman matlab3 pemrograman matlab
3 pemrograman matlab
Simon Patabang
 
Materi Pelajaran Program Pascal
Materi Pelajaran Program PascalMateri Pelajaran Program Pascal
Materi Pelajaran Program Pascal
Simon Patabang
 

What's hot (19)

Algoritma pemrograman 8
Algoritma pemrograman 8Algoritma pemrograman 8
Algoritma pemrograman 8
 
Ayo membuat program pascal
Ayo membuat program pascalAyo membuat program pascal
Ayo membuat program pascal
 
Pascal tutorialtpascal701
Pascal tutorialtpascal701Pascal tutorialtpascal701
Pascal tutorialtpascal701
 
Algoritma pemrograman 7
Algoritma pemrograman 7Algoritma pemrograman 7
Algoritma pemrograman 7
 
Pascal 4-aturan-penulisan-pascal
Pascal 4-aturan-penulisan-pascalPascal 4-aturan-penulisan-pascal
Pascal 4-aturan-penulisan-pascal
 
Algoritma dan pemrograman 1
Algoritma dan pemrograman 1Algoritma dan pemrograman 1
Algoritma dan pemrograman 1
 
Algoritma pemrograman 10
Algoritma pemrograman 10Algoritma pemrograman 10
Algoritma pemrograman 10
 
Modul pascal lengkap
Modul pascal lengkapModul pascal lengkap
Modul pascal lengkap
 
Materi dasar-pascal
Materi dasar-pascalMateri dasar-pascal
Materi dasar-pascal
 
Algoritma pemrograman 6
Algoritma pemrograman 6Algoritma pemrograman 6
Algoritma pemrograman 6
 
Algoritma dan Pemrograman C++ (Perulangan)
Algoritma dan Pemrograman C++ (Perulangan)Algoritma dan Pemrograman C++ (Perulangan)
Algoritma dan Pemrograman C++ (Perulangan)
 
Pertemuan 4
Pertemuan 4Pertemuan 4
Pertemuan 4
 
Algoritma pemrograman 9
Algoritma pemrograman 9Algoritma pemrograman 9
Algoritma pemrograman 9
 
Pertemuan 3
Pertemuan 3Pertemuan 3
Pertemuan 3
 
C04 struktur percabangan_22
C04 struktur percabangan_22C04 struktur percabangan_22
C04 struktur percabangan_22
 
Algoritma pemrograman 11
Algoritma pemrograman 11Algoritma pemrograman 11
Algoritma pemrograman 11
 
Algoritma pemrograman 14
Algoritma pemrograman 14Algoritma pemrograman 14
Algoritma pemrograman 14
 
3 pemrograman matlab
3 pemrograman matlab3 pemrograman matlab
3 pemrograman matlab
 
Materi Pelajaran Program Pascal
Materi Pelajaran Program PascalMateri Pelajaran Program Pascal
Materi Pelajaran Program Pascal
 

Viewers also liked

Standard 2.1 Flipchart
Standard 2.1 FlipchartStandard 2.1 Flipchart
Standard 2.1 Flipchart
TierneyRex
 
Pertemuan 1 algoritma
Pertemuan 1 algoritmaPertemuan 1 algoritma
Pertemuan 1 algoritma
Braga Rezpect
 
1 job description of medical rep.
1 job description of medical rep.1 job description of medical rep.
1 job description of medical rep.
Tamer Hassan
 
Dasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliahDasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliah
Braga Rezpect
 
Voice over On internet wipeout
Voice over On internet wipeoutVoice over On internet wipeout
Voice over On internet wipeout
Grant Denney
 
Prof 1
Prof 1Prof 1
Prof 1
school853
 
Women led business beehive & Torrington
Women led business beehive & TorringtonWomen led business beehive & Torrington
Women led business beehive & Torrington
Get up to Speed
 
Benefits of superfast and day in life buy with confidence - plymouth 29.10
Benefits of superfast and day in life   buy with confidence - plymouth 29.10Benefits of superfast and day in life   buy with confidence - plymouth 29.10
Benefits of superfast and day in life buy with confidence - plymouth 29.10
Get up to Speed
 
Study question project 2
Study question project 2Study question project 2
Study question project 2
Grant Denney
 
Communication Theories and Models Final Paper
Communication Theories and Models Final PaperCommunication Theories and Models Final Paper
Communication Theories and Models Final Paper
poncemarie
 
independent Study question project 2
independent Study question project 2independent Study question project 2
independent Study question project 2
Grant Denney
 
Dasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliahDasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliah
Braga Rezpect
 
Dasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliahDasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliah
Braga Rezpect
 
Educación en un Mundo Conectado
Educación en un Mundo ConectadoEducación en un Mundo Conectado
Educación en un Mundo Conectado
Clara Yáñez
 
Dasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliahDasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliah
Braga Rezpect
 
03 ottobre2014
03 ottobre201403 ottobre2014
03 ottobre2014
Alessandro Brigato
 
Essential tools and tips for selling online bridgewater 12.06.15
Essential tools and tips for selling online   bridgewater 12.06.15Essential tools and tips for selling online   bridgewater 12.06.15
Essential tools and tips for selling online bridgewater 12.06.15
Get up to Speed
 
Get up to speed getting the most out of online marketing Plymouth Chamber 18...
Get up to speed getting the most out of online marketing  Plymouth Chamber 18...Get up to speed getting the most out of online marketing  Plymouth Chamber 18...
Get up to speed getting the most out of online marketing Plymouth Chamber 18...
Get up to Speed
 
Latihan bikin soal
Latihan bikin soalLatihan bikin soal
Latihan bikin soal
Oktavia Ningtyas
 
Lucero Montserrat red LAN
Lucero Montserrat red LANLucero Montserrat red LAN
Lucero Montserrat red LAN
Luzeriin
 

Viewers also liked (20)

Standard 2.1 Flipchart
Standard 2.1 FlipchartStandard 2.1 Flipchart
Standard 2.1 Flipchart
 
Pertemuan 1 algoritma
Pertemuan 1 algoritmaPertemuan 1 algoritma
Pertemuan 1 algoritma
 
1 job description of medical rep.
1 job description of medical rep.1 job description of medical rep.
1 job description of medical rep.
 
Dasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliahDasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliah
 
Voice over On internet wipeout
Voice over On internet wipeoutVoice over On internet wipeout
Voice over On internet wipeout
 
Prof 1
Prof 1Prof 1
Prof 1
 
Women led business beehive & Torrington
Women led business beehive & TorringtonWomen led business beehive & Torrington
Women led business beehive & Torrington
 
Benefits of superfast and day in life buy with confidence - plymouth 29.10
Benefits of superfast and day in life   buy with confidence - plymouth 29.10Benefits of superfast and day in life   buy with confidence - plymouth 29.10
Benefits of superfast and day in life buy with confidence - plymouth 29.10
 
Study question project 2
Study question project 2Study question project 2
Study question project 2
 
Communication Theories and Models Final Paper
Communication Theories and Models Final PaperCommunication Theories and Models Final Paper
Communication Theories and Models Final Paper
 
independent Study question project 2
independent Study question project 2independent Study question project 2
independent Study question project 2
 
Dasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliahDasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliah
 
Dasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliahDasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliah
 
Educación en un Mundo Conectado
Educación en un Mundo ConectadoEducación en un Mundo Conectado
Educación en un Mundo Conectado
 
Dasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliahDasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliah
 
03 ottobre2014
03 ottobre201403 ottobre2014
03 ottobre2014
 
Essential tools and tips for selling online bridgewater 12.06.15
Essential tools and tips for selling online   bridgewater 12.06.15Essential tools and tips for selling online   bridgewater 12.06.15
Essential tools and tips for selling online bridgewater 12.06.15
 
Get up to speed getting the most out of online marketing Plymouth Chamber 18...
Get up to speed getting the most out of online marketing  Plymouth Chamber 18...Get up to speed getting the most out of online marketing  Plymouth Chamber 18...
Get up to speed getting the most out of online marketing Plymouth Chamber 18...
 
Latihan bikin soal
Latihan bikin soalLatihan bikin soal
Latihan bikin soal
 
Lucero Montserrat red LAN
Lucero Montserrat red LANLucero Montserrat red LAN
Lucero Montserrat red LAN
 

Similar to Dasar Pemrograman materi kuliah

Part 36 if then
Part 36 if thenPart 36 if then
Part 36 if then
Syaiful Ahdan
 
Pertemuan 5
Pertemuan 5Pertemuan 5
Pertemuan 5
Syaiful Ahdan
 
Modul iv
Modul ivModul iv
Modul iv
Fisma Ananda
 
Percabangan.pptx
Percabangan.pptxPercabangan.pptx
Percabangan.pptx
SyafrilAndrew
 
Bahasa pemrograman pascal
Bahasa pemrograman pascalBahasa pemrograman pascal
Bahasa pemrograman pascal
Nadya Olivia
 
listiati univ bung hata (1110013211051) Bahasa pemrograman pascal
listiati univ bung hata (1110013211051) Bahasa pemrograman pascallistiati univ bung hata (1110013211051) Bahasa pemrograman pascal
listiati univ bung hata (1110013211051) Bahasa pemrograman pascal
Maryanto Sumringah SMA 9 Tebo
 
Slide Percabangan
Slide Percabangan Slide Percabangan
Slide Percabangan
Dantik Puspita
 
4 fungsi if
4  fungsi   if4  fungsi   if
4 fungsi if
Simon Patabang
 
Pengantar Pemrograman Chapter 5
Pengantar Pemrograman Chapter 5Pengantar Pemrograman Chapter 5
Pengantar Pemrograman Chapter 5
Dede Kurniadi
 
Java (Netbeans) - Looping - Object Oriented Programming
Java (Netbeans) - Looping - Object Oriented ProgrammingJava (Netbeans) - Looping - Object Oriented Programming
Java (Netbeans) - Looping - Object Oriented Programming
Melina Krisnawati
 
Laporan praktikum iv.2 visual
Laporan praktikum iv.2 visualLaporan praktikum iv.2 visual
Laporan praktikum iv.2 visual
rahmi wahyuni
 
Dasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliahDasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliah
Braga Rezpect
 
Buku c
Buku cBuku c
2. teknik pemilihan dalam_pemrograman
2. teknik pemilihan dalam_pemrograman2. teknik pemilihan dalam_pemrograman
2. teknik pemilihan dalam_pemrogramanRoziq Bahtiar
 
Program Pascal
Program PascalProgram Pascal
Program Pascal
Simon Patabang
 
02.19 Java SE_else if statement
02.19 Java SE_else if statement02.19 Java SE_else if statement
02.19 Java SE_else if statement
Jefri Fahrian
 
Algoritma 1 pertemuan 5
Algoritma 1 pertemuan 5Algoritma 1 pertemuan 5
Algoritma 1 pertemuan 5
adekurnia solihin
 
Pascal - Kontrol.txt - Notepad.pdf
Pascal - Kontrol.txt - Notepad.pdfPascal - Kontrol.txt - Notepad.pdf
Pascal - Kontrol.txt - Notepad.pdf
Jurnal IT
 
Modul praktikum-algo-pemro
Modul praktikum-algo-pemroModul praktikum-algo-pemro
Modul praktikum-algo-pemroFaisal Amir
 
Prokom raw
Prokom rawProkom raw
Prokom raw
Agus Gunawan
 

Similar to Dasar Pemrograman materi kuliah (20)

Part 36 if then
Part 36 if thenPart 36 if then
Part 36 if then
 
Pertemuan 5
Pertemuan 5Pertemuan 5
Pertemuan 5
 
Modul iv
Modul ivModul iv
Modul iv
 
Percabangan.pptx
Percabangan.pptxPercabangan.pptx
Percabangan.pptx
 
Bahasa pemrograman pascal
Bahasa pemrograman pascalBahasa pemrograman pascal
Bahasa pemrograman pascal
 
listiati univ bung hata (1110013211051) Bahasa pemrograman pascal
listiati univ bung hata (1110013211051) Bahasa pemrograman pascallistiati univ bung hata (1110013211051) Bahasa pemrograman pascal
listiati univ bung hata (1110013211051) Bahasa pemrograman pascal
 
Slide Percabangan
Slide Percabangan Slide Percabangan
Slide Percabangan
 
4 fungsi if
4  fungsi   if4  fungsi   if
4 fungsi if
 
Pengantar Pemrograman Chapter 5
Pengantar Pemrograman Chapter 5Pengantar Pemrograman Chapter 5
Pengantar Pemrograman Chapter 5
 
Java (Netbeans) - Looping - Object Oriented Programming
Java (Netbeans) - Looping - Object Oriented ProgrammingJava (Netbeans) - Looping - Object Oriented Programming
Java (Netbeans) - Looping - Object Oriented Programming
 
Laporan praktikum iv.2 visual
Laporan praktikum iv.2 visualLaporan praktikum iv.2 visual
Laporan praktikum iv.2 visual
 
Dasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliahDasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliah
 
Buku c
Buku cBuku c
Buku c
 
2. teknik pemilihan dalam_pemrograman
2. teknik pemilihan dalam_pemrograman2. teknik pemilihan dalam_pemrograman
2. teknik pemilihan dalam_pemrograman
 
Program Pascal
Program PascalProgram Pascal
Program Pascal
 
02.19 Java SE_else if statement
02.19 Java SE_else if statement02.19 Java SE_else if statement
02.19 Java SE_else if statement
 
Algoritma 1 pertemuan 5
Algoritma 1 pertemuan 5Algoritma 1 pertemuan 5
Algoritma 1 pertemuan 5
 
Pascal - Kontrol.txt - Notepad.pdf
Pascal - Kontrol.txt - Notepad.pdfPascal - Kontrol.txt - Notepad.pdf
Pascal - Kontrol.txt - Notepad.pdf
 
Modul praktikum-algo-pemro
Modul praktikum-algo-pemroModul praktikum-algo-pemro
Modul praktikum-algo-pemro
 
Prokom raw
Prokom rawProkom raw
Prokom raw
 

More from Braga Rezpect

Dasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliahDasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliah
Braga Rezpect
 
Dasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliahDasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliah
Braga Rezpect
 
Dasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliahDasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliah
Braga Rezpect
 
Dasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliahDasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliah
Braga Rezpect
 
Dasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliahDasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliah
Braga Rezpect
 
Materi Kuliah : Dasar pemrograman 1
Materi Kuliah : Dasar pemrograman 1Materi Kuliah : Dasar pemrograman 1
Materi Kuliah : Dasar pemrograman 1
Braga Rezpect
 

More from Braga Rezpect (6)

Dasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliahDasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliah
 
Dasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliahDasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliah
 
Dasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliahDasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliah
 
Dasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliahDasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliah
 
Dasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliahDasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliah
 
Materi Kuliah : Dasar pemrograman 1
Materi Kuliah : Dasar pemrograman 1Materi Kuliah : Dasar pemrograman 1
Materi Kuliah : Dasar pemrograman 1
 

Dasar Pemrograman materi kuliah

  • 1. Modul06 PERCABANGAN Kondisi merupakan hal yang menentukan didalam mengambil keputusan mengenai tindakan yang diambil. Didalam pemrograman kondisi dikenal dalam bentuk IF, CASE ataupun yang setara. 6.1 Pernyataan If Adapun pernyataan yang pertama berbentuk : IF kondisi(-kondisi) yang harus dipenuhi Pernyataan Pernyataan …… …… Bagan alurnya adalah sebagai berikut : True (benar) False (Salah) Dasar pemrograman/ Modul_06_Percabangan 1 6 Kondisi Pernyataan
  • 2. Pada bentuk if, pernyataan hanya akan dijalankan kalau kondisi bernilai benar. Yang terpenting dari bagan alur diatas adalah kondisinya. Kodisilah yang menentukan apakah sebuah pernyataan program akan dieksekusi atau tidak Contoh pseudocode dari bentuk pernyataan if adalah : Variabel : Suhu : bilangan nyata Mulai Masukkan suhu tubuh pada variable suhu Jika Suhu > 37 maka nyatakan panas Selesai Pernyataan tersebut bisa dterjemahkan kedalam bahasa pemrograman dibawah ini : C++ Pascal Include <iostream.h> void main (void) { float suhu; cout << “Masukkan Suhu : ”; cin >> suhu; if (suhu > 37) { cout << “Panas”;} cout << “Selesai” } Var Suhu : Real; Begin Write (‘Masukkan Suhu : ’); Readln(Suhu); If Suhu > 37 then writeln(‘Panas’); Writeln(‘Selesai’) End. Dasar pemrograman/ Modul_06_Percabangan 2
  • 3. Pada pernyataan diatas “Panas” tidak selalu ditampilkan tergantung kepada nilai yang dimasukkan oleh user. Tetapi pernyataan ‘Selesai’ akan selalu ditampilkan karena tidak tergantung kepada kondisi if. 6.2 Pernyataan If....Else Pernyataan if..else digunakan untuk menguji sebuah kondisi. Bila kondisi yang diuji terpenuhi, program akan menjalankan pernyuataan-pernyataan tertentu; dan bila kondisi yang diuji salah, program akan menjalankan pernyatan-pernyataan yang lain. Bentuk umum pernyataan if..else adalah sebagai berikut: IF kondisi(-kondisi) yang harus dipenuhi Pernyataan Pernyataan …… …… ELSE Pernyataan Pernyataan …… …… Kondisi sendiri merupakan suatu ekspresi bertipe boolean, artinya hanya dapat bernilai benar (true) atau salah (false). Bagan alurnya adalah sebagai berikut : True (benar) False (Salah) Dasar pemrograman/ Modul_06_Percabangan 3 Kondisi Pernyataan Pernyataan
  • 4. Pada bentuk ini : 1. Pernyataan sesudah if akan dieksekusi kalau kondisi bernilai benar 2. Pernyataan sesudah else akan dieksekusi kalau kondisi bernilai salah Sebagai contoh diinginkan tampilan : 1. Suhu tinggi jika bernilai lebih dari 37 2. Suhu tidak tinggi kalau kurang atau sama dengan 37 Maka contoh pseudocodenya adalah sebagai berikut : Variabel : Suhu : bilangan nyata Mulai Masukkan suhu tubuh pada variable suhu Jika Suhu > 37 maka nyatakan panas Selain itu nyatakan tidak panas Selesai Dasar pemrograman/ Modul_06_Percabangan 4
  • 5. Pernyataan tersebut bisa diterjemahkan kedalam bahasa pemrograman dibawah ini : C++ Pascal Include <iostream.h> void main (void) { float suhu; cout << “Masukkan Suhu : ”; cin >> suhu; if (suhu > 37) { cout << “Panas”;} else { cout << “Tidak Panas”;} cout << “Selesai” } Var Suhu : Real; Begin Write (‘Masukkan Suhu : ’); Readln(Suhu); If Suhu > 37 then writeln(‘Panas’) Else WriteLn(‘Tidak Panas’) Writeln(‘Selesai’) End. 6.3Pernyataan if..else if Dalam kasus-kasus tertentu, sebuah konstruksi if dan else dapat terdapat bentuk bersarang (nested). Bentuk bersarang merupakan contoh bentuk dari sebuah atau beberapa buah pernyataan if dan else yang terdapat didalam bentuk if dan else yang lainnya. Nested IF dan ELSE merupakan pernyataan yang lebih rumit dibandingkan dengan pernyataan IF dan ELSE sederhana. Berikut ini adalah contoh bentuk pernyataan tersebut : Dasar pemrograman/ Modul_06_Percabangan 5
  • 6. Dasar pemrograman/ Modul_06_Percabangan 6 Jumlah Buku >= 50 Diskon 20% Diskon 15 % Diskon 10 % Tdk Ada Diskon Jumlah Buku >= 35 Jumlah Buku >= 20 Harga Buku = 2500
  • 7. Contoh dari pemrograman dengan menggunakan nested if adalah sebagai berikut : Bahasa C++ Bahasa Pascal #include <iostream.h> void main(void) { int Jumlah_Buku; float harga; cout << “Jumlah Buku: “<< endl ; cin >> Jumlah_Buku; if (Jumlah_Buku >= 50) { harga= Jumlah_Buku * 0.8 * 2500; cout<< “Total harga: ”<< harga; } else { if (Jumlah_Buku >= 35) { harga= Jumlah_Buku * 0.85 * 2500; cout<< “Total harga: ”<< harga; } else { if (Jumlah_Buku >= 20 { harga= Jumlah_Buku * 0.9 * 2500; cout << “Total harga: ”<< harga; } else { harga= Jumlah_Buku * 2500; cout<< ”Total Harga: ”<< harga; } } } } Var Jumlah_Buku : integer; Harga_Buku : real; Begin Write (‘Jumlah Buku = ‘); ReadLn(Jumlah_Buku); IF Jumlah_Buku >= 50 then Begin Harga:= Jumlah_Buku * 0.8 * 2500; WriteLn(‘Total Harga= ‘, Harga); End Else IF Jumlah_Buku >= 35 then Begin Harga:= Jumlah_Buku * 0.85 * 2500; WriteLn(‘Total Harga= ‘, Harga); End Else IF Jumlah_Buku >= 20 Begin Harga:= Jumlah_Buku * 0.9 * 2500; WriteLn(‘Total Harga= ‘, Harga); End Else Begin Harga:= Jumlah_Buku * 2500; WriteLn(‘Total Harga= ‘, Harga); End; End. Dasar pemrograman/ Modul_06_Percabangan 7
  • 8. 6.4 Pernyataan Case Pernyataan Case digunakan untuk menyederhanakan konstruksi if..else if yang terlalu banyak. Sebagai contoh, program berikut: If ( x = 0) then Writeln(‘X bernilai 0’) Else if (x = 1) then Writeln(‘X bernilai 1’) Else if (x = 2) then Writeln(‘X bernilai 2’) Else if (x = 3) then Writeln(‘X bernilai 3’) Else Writeln(‘X tidak bernilai 0, 1, 2, ataupun 3’); Dapat diganti menjadi lebih ringkas dan mudah dibaca dengan program berikut: Case x of 0 : Writeln(‘X bernilai 0’); 1 : Writeln(‘X bernilai 1’); 2 : Writeln(‘X bernilai 2’); 3 : Writeln(‘X bernilai 3’); else Writeln(‘X tidak bernilai 0, 1, 2, ataupun 3’);; End; Jika dilihat pada contoh di atas bahwa meskipun hasil dari kedua program tersebut sama tetapi penulisan dengan case lebih mudah dibaca. Contoh-contoh soal: 1. Tulislah algoritma dan program yang menampilkan ’Genap’ jika suatu bilangan adalah bilangan genap atau ’Ganjil’ jika bilangan tersebut adalah bilangan ganjil. Nilai masukan adalah bilangan bulat, yaitu x, dimana 0 ≤ x ≤ 65535. keluaran dari program ini adalah ’Bilangan Genap’ atau ’Bilangan ganjil’. Jawab: Dasar pemrograman/ Modul_06_Percabangan 8
  • 9. Suatu bilangan dikatakan bilangan genap jika habis dibagi 2. dengan demikian algoritma pengecekan bilangan genap atau ganjil dapat dituliskan sebagai berikut: 1. Masukkan x. 2. jika (x habis dibagi 2 ) maka kerjakan baris 3; jika tidak kerjakan baris 4. 3. tulis ’Bilangan genap’. Selesai. 4. tulis ’Bilangan ganjil’. Selesai. Contoh program dalam Pascal untuk mengecek suatu bilangan termasuk bilangan ganjil atau genap: Var x: word; begin write (‘Masukkan suatu bilangan bulat sembarang: ‘); readln(x); if (x mod 2 = 0) then writeln (‘Bilangan genap’) else writeln (‘Bilangan ganjil’); end. Keluaran dari program tersebut adalah sebagai berikut: Masukkan suatu bilangan bulat sembarang: 25 Bilangan ganjil Masukkan suatu bilangan bulat sembarang: 4 Bilangan genap 2. Tulislah algoritma dan program yang meminta masukan bilangan bulat dari pengguna. Jika pengguna memasukkan 0, program menampilkan ’Minggu’; jika pengguna memasukkan 1, program menampilkan ’Senin’, dan seterusnya sampai dengan ’Sabtu’. Jika pengguna memasukkan nilai di luar jangkauan 0 sampai dengan 6, program menuliskan ’Hari tidak Valid’. Jawab: Algoritma untuk menampilkan hari dapat dituliskan sebagai berikut: Dasar pemrograman/ Modul_06_Percabangan 9
  • 10. 1. Masukkan x. 2. Jika (x = 0) Tulis ’Minggu’. Selesai. 3. Jika (x = 1) Tulis ’Senin’. Selesai. 4. Jika (x = 2) Tulis ’Selasa’. Selesai. 5. Jika (x = 3) Tulis ’Rabu’. Selesai. 6. Jika (x = 4) Tulis ’Kamis’. Selesai. 7. Jika (x = 5) Tulis ’Jumat’. Selesai. 8. Jika (x = 6) Tulis ’Sabtu’. Selesai. 9. Tulis ’Hari tidak Valid’ Jika ditulis dalam program Pascal sebagai berikut: Var x : byte; begin write (’ Masukkan bilangan bulat (0 – 6): ’); readln (x); case (x) of 0: writeln (’Minggu’); 1: writeln (’Senin’); 2: writeln (’Selasa’); 3: writeln (’Rabu’); 4: writeln (’Kamis’); 5: writeln (’Jumat’); 6: writeln (’Sabtu’); else writeln (’Hari tidak Valid’); end; end. Keluaran dari program di atas adalah sebagai berikut: Masukkan bilangan bulat (0 – 6) : 5 Jumat    Dasar pemrograman/ Modul_06_Percabangan 10