Materi-4 Alpro (Struktur Pemilihan)

Unduh sebagai pptx, pdf, atau txt
Unduh sebagai pptx, pdf, atau txt
Anda di halaman 1dari 34

PERTEMUAN #4

 Kontrak Perkuliahan & Pengantar Algoritma


dan Pemrograman
 Algoritma, Flowchart dan Pseudocode
 Pengantar Bahasa Pemrograman (dengan
Bahasa C++)
 Input & Output pada Bahasa C++
 Struktur Kontrol Percabangan & Percabangan
Bertingkat
 Struktur Kontrol Perulangan & Perulangan
Bertingkat
 Modular Programming
 Function by value
 Array
 Operator adalah tanda yang digunakan untuk melakukan operasi-operasi tertentu
didalam program.
 Dengan operator, kita dapat melakukan operasi perhitungan, perbandingan,
manipulasi, dan lain-lain.

Jenis Operator Pengertian Contoh


Unary Digunakan dalam operasi yang hanya x++;
melibatkan satu buah operand a = -b;
Binary Digunakan dalam operasi yang melibatkan x = y + z;
dua buah operand a = 2 * 0;
Ternary Digunakan dalam operasi yang melibatkan x = (12 % 5) + 7;
tiga buah operand

3
 Misal ada statemen seperti berikut (di C++):
X=5+7

 Maka:
o X disebut variabel
o = disebut operator assignment (penugasan)
o 5 dan 7 disebut operand
o 5 + 7 disebut ekspresi
o + disebut operator aritmatika (penambahan)

o x = 5 + 7 disebut statemen aritmatika


4
 Operator dengan level yang lebih tinggi akan dieksekusi lebih dahulu dari
pada operan dengan level yang lebih rendah.

 Operator-operator yang memiliki level yang sama akan dieksekusi menurut


urutan penulisan (dari kiri ke kanan)

 Contoh urutan operator aritmatika sebagai berikut :


!=

Urutan
1

4
Struktur Kontrol Pemilihan
(Penyeleksian / Percabangan)
 Struktur pemilihan adalah struktur program
yang melakukan proses pengujian untuk
mengambil suatu keputusan apakah suatu baris
atau blok instruksi akan diproses atau tidak

 Biasanyasebuah pernyataan pemilihan terdiri


dari operand-operand yang dihubungkan
dengan operator relasi dan digabungkan
dengan operator logika.
 Pada C++ jenis struktur yang digunakan
untuk mengimplementasikan suatu
pemilihan atau percabangan ada dua
yaitu: struktur if dan struktur switch.
Struktur IF
 Struktur ini merupakan struktur yang paling sederhana karena hanya
melibatkan satu buah ekspresi akan diperiksa.

If kondisi then
Statement
End If

 Pada variasi ini, apabila kondisi bernilai benar maka Statement dikerjakan
dan apabila kondisi bernilai salah maka Statement tidak dikerjakan.
Algoritma Kelulusan Siswa 1

Diketahui seorang siswa dikatakan lulus jika


nilainya >= 60.

Deskripsi :
1. Mulai
2. Baca nilai_siswa
3. Jika nilai_siswa >= 60 maka kerjakan
langkah 4
4. Cetak “Siswa tersebut lulus”
5. selesai

Dari flowchart diatas dapat dijelaskan bahwa setelah nilai_siswa dimasukkan maka akan diuji apakah
nilai_siswa lebih besar atau sama dengan 60?

Jika benar maka akan dicetak “Siswa tersebut lulus” kemudian selesai, jika tidak maka selesai.
 Jika pemakaian if diikuti dengan pernyataan tunggal, bentuk
penulisannya boleh sebagai berikut :

 Jika pemakaian if diikuti dengan pernyataan majemuk, bentuk


penulisannya sebagai berikut :
Pseudocode Bahasa C++
{ Judul } #include <iostream.h>
Algoritma_Kelulusan_Siswa_1
int nilai_siswa;
{ Kamus }
main()
nilai_siswa : integer {

{ Algoritma } cout<<"Masukan Nilai : ";


Input(nilai_siswa); cin>>nilai_siswa;

If nilai_siswa >= 60 Then if (nilai_siswa >= 60)


Output(“Siswa tersebut lulus”) {
cout<<"Siswa tersebut Lulus";
End if
}

}
 Menentukan besarnya diskon dari pembelian
barang yang diberikan seorang pembeli, dengan
kriteria :
- Tidak ada diskon jika total pembelian kurang dari Rp.
100.000,-
- Jika total pembelian lebih dari atau sama dengan Rp.
100.000,- diskon yang diterima sebesar 15% dari total
pembelian.

16
//nama file : ContohIF1.cpp
//pembuat program : Nama Anda
//deskripsi : Program Berisi IF satu kondisi

#include <stdio.h>

main()
{
float tot_beli, disc, tot_bayar;

printf("Total Pembelian Rp. : ");


scanf("%f",&tot_beli);

if (tot_beli >= 100000)


disc = 0.15 * tot_beli;
printf("Besarnya Potongan Rp. %10.2f ",disc);
printf("\n");

tot_bayar = tot_beli - disc;


printf("Jumlah yang harus dibayarkan Rp. %10.2f",tot_bayar);

}
 if-else, struktur ini perlu memiliki 2 kasus untuk melanjutkan instruksinya.

If kondisi then
Statement 1
Else
Statement 2
End If

 Pada variasi ini, apabila kondisi bernilai benar maka Statement-1 yang
dikerjakan dan apabila kondisi bernilai salah maka Statement-2 yang
dikerjakan (tidak pernah 2 statement ini dikerjakan semua)
Algoritma Kelulusan Siswa 2

Diketahui seorang siswa dikatakan lulus jika


nilainya >= 60, dan jika nilainya < 60 maka
siswa tidak lulus.

Deskripsi :
1. Mulai
2. Baca nilai_siswa
3. Jika nilai_siswa >= 60 maka kerjakan
langkah 4, selain itu kerjakan langkah 5
4. Cetak “Siswa tersebut lulus”
5. Cetak “Siswa tidak lulus”
6. Selesai

Dari flowchart diatas dapat dijelaskan bahwa setelah nilai_siswa dimasukkan maka akan diuji apakah
nilai_siswa lebih besar atau sama dengan 60?

Jika benar maka akan dicetak “Siswa tersebut lulus” kemudian selesai,
Jika salah maka akan dicetak “Siswa tidak lulus” kemudian selesai
 Bentuk umum dari
pernyataan if :
 Perintah-1 dan perintah-2
dapat berupa sebuah
pernyataan tunggal,
pernyataan majemuk atau
pernyataan kosong.
 Jika pemakaian if-else
diikuti dengan pernyataan
majemuk, bentuk
penulisannya sebagai
berikut :
Pseudocode Bahasa C++
{ Judul } #include <iostream.h>
Algoritma_Kelulusan_Siswa_2
int nilai_siswa;
{ Kamus }
main()
nilai_siswa : integer {

{ Algoritma } cout<<"Masukan Nilai : ";


Input(nilai_siswa); cin>>nilai_siswa;

If nilai_siswa >= 60 Then if (nilai_siswa >= 60)


Output(“Siswa tersebut lulus”) cout<<"Siswa tersebut Lulus";
else
Else
cout<<"Siswa tidak Lulus";
Output(“Siswa tidak lulus”)
End if }
 Menentukan besarnya diskon dari pembelian
barang yang diberikan seorang pembeli, dengan
kriteria :
- Jika total pembelian kurang dari Rp. 75.000,- diskon yang
diterima sebesar 5% dari total pembelian.
- Jika total pembelian lebih dari atau sama dengan Rp.
75.000,- diskon yang diterima sebesar 10% dari total
pembelian.

22
/*nama file : ContohIF2.cpp
pembuat program : Nama Anda
deskripsi : Program Berisi IF satu kondisi */

#include <stdio.h>

main()
{
float tot_beli, disc, tot_bayar;
printf("Total Pembelian Rp. : ");
scanf("%f",&tot_beli);

if (tot_beli >= 75000)


{
disc = 0.1 * tot_beli;
printf("Besarnya Potongan 10 persen : Rp. %9.2f ",disc);
}
else
{
disc = 0.05 * tot_beli;
printf("Besarnya Potongan 5 persen : Rp. %9.2f ",disc);
}

printf("\n");

tot_bayar = tot_beli - disc;


printf("Jumlah yang harus dibayarkan Rp. %9.2f",tot_bayar);
}
 Struktur yang akan memeriksa N kasus.
If kondisi-1 then
Statement-1
Else if kondisi-2 then
Statement-2
Else if kondisi-3 then
Statement-3
Else
Statement-4
End if
 Pada variasi, apabila kondisi-1 bernilai benar
maka Statement-1 yang dikerjakan dan
selesai, tetapi apabila kondisi-1 bernilai salah
maka dilanjutkan memeriksa kondisi-2.

 Apabila kondisi-2 bernilai benar maka


Statement-2 yang dikerjakan dan selesai,
tetapi apabila kondisi-2 bernilai salah maka
dilanjutkan memeriksa kondisi-3.

 Apabila kondisi-3 bernilai benar maka


Statement-3 yang dikerjakan, tetapi apabila
kondisi-3 bernilai salah maka Statement-4
yang dikerjakan.
(dari 4 statement yang ada hanya salah satu
yang dikerjakan).
 Bentuk Umum :
if (kondisi1)
{
statemen_jika_kondisi1_terpenuhi;
}
else if (kondisi2)
{
statemen_jika_kondisi2_tidak_terpenuhi;
}
else if (kondisi3)
{
statemen_jika_kondisi3_tidak_terpenuhi;
}
....
else
{
statemen_jika_semua_kondisi_tidak_terpenuhi;
}
Pseudocode Bahasa C++
{ Judul } #include <iostream.h>
Menentukan_indeks_nilai main()
{
float nilai;
{ Kamus } char indeks;
nilai: Real cout<<"Masukan Nilai yang diperoleh : ";
indeks: Char cin>>nilai;

{ Algoritma } if (nilai > 80) {


Input(nilai); indeks ='A‘; }
else if (nilai > 70) {
If nilai > 80 Then indeks ='B‘; }
indeks  'A’ else if (nilai > 60) {
indeks ='C‘; }
ElseIf nilai > 70 Then
else if (nilai > 50) {
indeks  'B‘ indeks ='D‘; }
ElseIf nilai > 60 Then else {
indeks  'C’ indeks ='E';
ElseIf nilai > 50 Then }
indeks 'D‘ cout<<endl;
Else cout<<"NIlai indeks dari nilai "<<nilai<<"
adalah "<<indeks;
indeks  'E'
}
Output(indeks)
1. PDAM menerapkan pembayaran air minum perumahan
dengan cara perhitungan sebagai berikut :
 Tarif per m3 untuk 10 m3 pertama (I-10) adalah 10.000
 Tarif per m3 untuk 10 m3 kedua (II-20) adalah 5.000
 Tarif per m3 untuk 10 m3 ketiga (21-30) adalah 4.000
 Tarif per m3 untuk 10 m3 selanjutnya (31 ke atas) adalah 3.000
 Pemakaian air dihitung minimal 10 m3 (kurang dari 10
m3 dianggap 10 m3)
 Biaya administrasi bulanan sebesar 12.000
 Bagaimana membuat algoritma dan implementasi
program untuk menghitung biaya tersebut?
Ketentuan :
 Simpan program dengan nama file
tugas4.1_Kelas-B_Nama Anda
 Gunakan Fungsi IF
 Untuk NPM Ganjil : gunakan printf dan scanf
 Untuk NPM Genap : gunakan cout dan cin
2. Buatlah Algoritma dan Implementasi Program untuk mengitung
kasus berikut :
Suatu perusahaan memberikan komisi kepada para selesman
dengan ketentuan sebagai berikut:
• Bila salesman dapat menjual barang hingga Rp. 1.000.000 ,- , akan
diberikan uang jasa sebesar Rp. 25.000 ditambah dengan uang komisi Rp.
10% dari pendapatan yang diperoleh hari itu.
• Bila salesman dapat menjual barang diatas Rp. 1.500.000 ,- , akan diberikan
uang jasa sebesar Rp. 50.000 ditambah dengan uang komisi Rp. 15% dari
pendapatan yang diperoleh hari itu.
• Bila salesman dapat menjual barang diatas Rp. 2.000.000 ,- , akan diberikan
uang jasa sebesar Rp. 75.000 ditambah dengan uang komisi Rp. 20% dari
pendapatan yang diperoleh hari itu
 Simpan program dengan nama file :
tugas4.2_Kelas-A_Nama Anda
 Gunakan Fungsi IF
 Untuk NPM Ganjil : gunakan cout dan cin
 Untuk NPM Genap : gunakan printf dan scanf
Struktur Switch

Anda mungkin juga menyukai