SlideShare a Scribd company logo
Pengambilan Keputusan
DASAR PEMROGRAMAN
2
TUJUAN
Menjelaskan tentang operator kondisi (operator
relasi dan logika)
Menjelaskan penggunaan pernyataan if
Menjelaskan penggunaan pernyataan if-else
Menjelaskan penggunaan pernyataan if dalam if
Menjelaskan penggunaan pernyataan else-if
Menjelaskan penggunaan pernyataan switch
3
Pengambilan Keputusan
Pernyataan-pernyataan yang dapat digunakan
dalam pengambilan keputusan:
Pernyataan if
Pernyataan if-else
Pernyataan switch
Pernyataan-pernyataan diatas memerlukan suatu
kondisi dibentuk dengan operator relasi
dan/atau operator logika.
4
Operator Relasi
Operator Makna
>
>=
<
<=
==
!=
Lebih dari
Lebih dari atau sama dengan
Kurang dari
Kurang dari atau sama dengan
Sama dengan
Tidak sama dengan
Operator relasi menghasilkan kondisi
BENAR atau SALAH.
5
Operator Relasi
Contoh :
6
Operator Logika
Operator Makna
&&
||
!
dan (AND)
atau (OR)
tidak (NOT)
7
Operator Logika
Bentuk umum penggunaan operator logika
‘&&’ dan ‘||’:
operand1 operator operand2
Bentuk umum penggunaan operator logika
‘!’:
!operand
Hasil operasi ! bernilai :
Benar jika operand bernilai salah
Salah jika operand bernilai benar
8
Operator Logika
Hasil
Operand1 Operand2
|| &&
Salah
Salah
Benar
Benar
Salah
Benar
Salah
Benar
0
1
1
1
0
0
0
1
9
Prioritas Operator Logika
dan Relasi
Prioritas Operator
Tertinggi !
> >= < <=
== !=
&&
Terendah ||
10
Latihan
Berikut benar atau salah :
2 > 1 || 3 <= 4 && 4 < 1
2 >1 && 3 <= 4 || 4 < 1
!(2 > 1) && (3 <= 4)
(5 > 1 || 3 != 2) && ((2 > 1) || (4 == 2))
11
Pernyataan if
Sintak:
if (kondisi)
pernyataan;
Jika kondisi benar maka
pernyataan dilakukan.
pernyataan bisa satu statement
atau beberapa statement
Jika pernyataan lebih dari satu
gunakan tanda ‘{‘ dan ‘}’ untuk
mengelompokkan pernyataan2 itu.
12
Contoh penggunaan if
// Program discount - discount.c
#include <stdio.h>
main()
{
float total_pembelian, discount = 0;
printf("Total pembelian = Rp ");
scanf("%f", &total_pembelian);
if(total_pembelian >= 100000)
discount = 0.05 * total_pembelian;
printf("Besarnya discount = Rp %6.2fn",
discount);
}
13
Pernyataan if-else
Sintak:
if (kondisi)
pernyataan1;
else
pernyataan2;
Jika kondisi benar maka
pernyataan1 dilakukan.
Jika kondisi salah maka
pernyataan2 dilakukan.
14
Contoh penggunaan if-else
// Program perbandingan 2 buah nilai
#include <stdio.h>
main()
{
int minim,nilai1,nilai2;
printf ("Masukkan 2 buah nilai n");
scanf ("%d %d",&nilai1, &nilai2);
if (nilai1 < nilai2)
minim = nilai1;
else
minim = nilai2;
printf ("Nilai minimalnya adalah :%dn",minim);
}
15
Nested-if
Di dalam pernyataan if (atau if-else) bisa terdapat pernyataan if
(atau if-else) yang lain.
Bentuk umum:
if (kondisi-1)
if (kondisi-2)
.
.
if(kondisi-n)
pernyataan;
else
pernyataan;
.
.
else
pernyataan;
else
pernyataan;
16
Contoh penggunaan if-else
// Program penentuan bil positif / negatif
#include <stdio.h>
{
int x,y;
printf ("Masukkan 2 buah nilai n");
scanf ("%d %d",&x, &y);
if (x > 0)
if (y > 0)
printf ("Nilai x dan y adalah positifn");
else
printf ("Nilai x positif dan y negatifn");
else
printf ("Nilai x negatifn");
}
17
Contoh penggunaan if-else
// Program kalkulator Sederhana - kalukalor1.c
#include <stdio.h>
main()
{
int valid_operator = 1;
char operator;
float number1, number2, result;
printf("Masukkan 2 buah bilangan dan sebuah operatorn");
printf("dengan format : number1 operator number2nn");
scanf("%f %c %f", &number1, &operator, &number2);
if(operator == '*')
result = number1 * number2;
else if(operator == '/')
result = number1 / number2;
else if(operator == '+')
result = number1 + number2;
else if(operator == '-')
result = number1 - number2;
else
valid_operator = 0;
if(valid_operator)
printf("n%g %c %g is %gn", number1, operator,
number2, result );
else
printf("Invalid operator!n");
}
18
TERNARY OPERATOR
Bentuk umum :
kondisi1 ? ungkapan1 : ungkapan2;
Jika kondisi bernilai benar,
maka nilai ungkapan kondisi berupa ungkapan1
Jika kondisi bernilai salah,
maka nilai ungkapan kondisi berupa ungkapan2
Hasil sama :
if (nilai1 > nilai2)
max = nilai1;
else max = nilai2
19
CONTOH PROGRAM
#include <stdio.h>
main()
{
float nilai1, nilai2, max;
printf("Masukkan dua buah nilai : ");
scanf("%f %f", &nilai1, &nilai2);
max = (nilai1 > nilai2) ? nilai1 : nilai2;
printf("Nilai terbesar = %gn", max);
}
20
switch
switch (ekspresi)
{
case konstanta-1:
pernyataan-11;
......
break;
case konstanta-2:
.
.
case konstanta-n:
pernyataan-n1;
.......
break;
default:
.......
break;
}
Sebagai pengganti pernyataan if bertingkat
(else-if)
21
Contoh penggunaan switch
#include <stdio.h>
main()
{
int valid_operator = 1; char operator;
float number1, number2, result;
printf("Masukkan 2 buah bilangan dan sebuah operatorn");
printf("dengan format : number1 operator number2nn");
scanf("%f %c %f", &number1, &operator, &number2);
switch(operator)
{
case '*' :
result = number1 * number2;
break;
case '/' :
result = number1 / number2;
break;
case '+' :
result = number1 + number2;
break;
case '-' :
result = number1 - number2;
break;
default :
valid_operator = 0;
}
if(valid_operator)
printf("%g %c %g is %gn", number1, operator, number2,result);
else printf("Invalid operator!n");
}
22
Tugas
1. Buat algoritma, flowchart, dan program untuk
menghitung diskriminan dan akar-akar dari persamaan
kuadrat ax2 + bx + c = 0
D = b2 - 4ac D adalah deskriminan
Jika D = 0 2 akar real kembar : x1 = x2 = -b / 2a
Jika D > 0 2 akar real yang berlainan, yaitu :
x1 = (-b + sqrt(D)) / 2a
x2 = (-b - sqrt(D)) / 2a
Jika D < 0 , maka terdapat 2 akar imaginer yang
berlainan, yaitu :
x1 = -b / 2a + (sqrt(-D) / 2a) i
x2 = -b / 2a - (sqrt(-D) / 2a) i
23
2. Buatkan program untuk melakukan konversi berikut
ini, dengan inputan berupa nilai antara 0 – 100.
3. Buatkan flowchart dan program untuk memasukkan
3 buah bilangan (x,y,z), dan program memberikan
keluaran nilai terbesar sampai nilai terkecilnya.

More Related Content

PDF
M05a pengambilan keputusan
PPT
05 for-dowhile-while
PPTX
Pertemuan ke 4
PPT
Pertemuan iv
PDF
Tugas kelompok
PDF
Function c++
PDF
2. teknik pemilihan dalam_pemrograman
DOCX
Algoritma Pemrograman - For and Nested For
M05a pengambilan keputusan
05 for-dowhile-while
Pertemuan ke 4
Pertemuan iv
Tugas kelompok
Function c++
2. teknik pemilihan dalam_pemrograman
Algoritma Pemrograman - For and Nested For

What's hot (18)

PPTX
Pertemuan ke 3
PDF
Struktur data chapter_10
PPTX
Algoritma pemrograman 8
DOCX
Interaksi antar objek
PPTX
PPT
PPTX
Algoritma pemrograman 7
PPTX
Pertemuan 7+
PDF
DOCX
Prokom raw
PDF
Pemrograman Web - Statement Javascript
PDF
PDF
Bab II - Pernyataan Kondisi Bercabang
PPT
6. subrutin
PDF
Praktikum 6B
PDF
Pemrograman C++ - Pemilihan keputusan
PPTX
Fungsi part 3
PPTX
Algoritma pemrograman 6
Pertemuan ke 3
Struktur data chapter_10
Algoritma pemrograman 8
Interaksi antar objek
Algoritma pemrograman 7
Pertemuan 7+
Prokom raw
Pemrograman Web - Statement Javascript
Bab II - Pernyataan Kondisi Bercabang
6. subrutin
Praktikum 6B
Pemrograman C++ - Pemilihan keputusan
Fungsi part 3
Algoritma pemrograman 6
Ad

Similar to Mod 4 pengambilan keputusan (20)

PPTX
Asistensi Praktikum Pemrograman 2
PPTX
Rangkuman Pemograman Dasar.pptx
PPTX
Presentasi workshop cvavr
PPTX
Pertemuan 5C.pptx
PPSX
Pengantar Pemrograman Chapter 5
PPTX
Algoritma&Pemrograman C++ Pertemuan 5
PPT
04 if-ifelse-switch-break
PPTX
Pertemuan 5b.pptx
PPT
Pengenalan c++ bagian 3
PPTX
Percabangan c++
PPTX
04. pengambilan keputusan
PPTX
MENTORING KODING PERTEMUAN 3 oleh M.Farhan GHIFARI, S.Kom
PPTX
Operasi string dan kondisi if
PDF
Review Operator, Boolean, Selection, Repetition
PDF
Modul simulasi pemograman mikrokontroler
DOC
Praktikum Decision + Output
PDF
DOC
670426587f8d8102a1eb712c3a13d9e5.doc
DOC
Dasar Pemrograman materi kuliah
PPT
Flowchart
Asistensi Praktikum Pemrograman 2
Rangkuman Pemograman Dasar.pptx
Presentasi workshop cvavr
Pertemuan 5C.pptx
Pengantar Pemrograman Chapter 5
Algoritma&Pemrograman C++ Pertemuan 5
04 if-ifelse-switch-break
Pertemuan 5b.pptx
Pengenalan c++ bagian 3
Percabangan c++
04. pengambilan keputusan
MENTORING KODING PERTEMUAN 3 oleh M.Farhan GHIFARI, S.Kom
Operasi string dan kondisi if
Review Operator, Boolean, Selection, Repetition
Modul simulasi pemograman mikrokontroler
Praktikum Decision + Output
670426587f8d8102a1eb712c3a13d9e5.doc
Dasar Pemrograman materi kuliah
Flowchart
Ad

Recently uploaded (20)

PPTX
Materi-Geografi-Pendekatan-Konsep-dan-Prinsip-Geografi-Kelas-10.pptx
PPTX
SISTEM POLITIK DAN PEMERINTAHAN INDONESIA.pptx
PPTX
Paparan Penyesuaian Juknis BOSP Tahun 2025
PPTX
PROGRAM KOKURIKULER KELAS 9 TEMA 1_20250811_075823_0000.pptx
PPTX
!!!!Bahan Tayang Kompetensi Manajerial-AKUNTABILITAS KINERJA-DR Asep Iwa.pptx
PDF
Tren dan Isu Kebutuhan Soft Skill dan Hard Skill Tenaga Kesehatan di RS - dr....
PDF
System Requirement Enterprise Resource Planning Peternakan Ayam dan Daftar Ju...
PPTX
Materi Besaran, Satuan, Pengukuran.pptx
PPTX
1. Bhn Tayang,Kebijaka,Deep Learning,AI & Koding.pptx
PPTX
Sejarah-Kelahiran-Pancasila kelas 8.pptx
DOCX
Modul Ajar Pembelajaran Mendalam PJOK Kelas X Terbaru 2025
PDF
RPP PEMBELAJARAN MENDALAM BAHASA INDONESIA _SariIndah_DEWI SINTA (1).pdf
PPTX
PPT Akidah Akhlak Kelompok 1 X-8 (4).pptx
PDF
LK Modul 3 - Menentukan Pengalaman Belajar Herpina Indah Permata Sari (2).pdf
DOCX
Modul Ajar Deep Learning Prakarya Kerajinan Kelas 12 SMA Terbaru 2025
DOCX
Modul Ajar Deep Learning Prakarya Budidaya Kelas 12 SMA Terbaru 2025
PPTX
Saint Maximilian Kolbe, Polish friar, priest, missionary and martyr (indonesi...
PDF
2021 KREATIFITAS DNA INOVASI DALAM BERWIRAUSAHA.pdf
PDF
Laporan On The Job TRaining PM KS Siti Hikmah.pdf
PPTX
Pembelajaran-Mendalam-RTL-dan-Umpan-Baliknya.pptx
Materi-Geografi-Pendekatan-Konsep-dan-Prinsip-Geografi-Kelas-10.pptx
SISTEM POLITIK DAN PEMERINTAHAN INDONESIA.pptx
Paparan Penyesuaian Juknis BOSP Tahun 2025
PROGRAM KOKURIKULER KELAS 9 TEMA 1_20250811_075823_0000.pptx
!!!!Bahan Tayang Kompetensi Manajerial-AKUNTABILITAS KINERJA-DR Asep Iwa.pptx
Tren dan Isu Kebutuhan Soft Skill dan Hard Skill Tenaga Kesehatan di RS - dr....
System Requirement Enterprise Resource Planning Peternakan Ayam dan Daftar Ju...
Materi Besaran, Satuan, Pengukuran.pptx
1. Bhn Tayang,Kebijaka,Deep Learning,AI & Koding.pptx
Sejarah-Kelahiran-Pancasila kelas 8.pptx
Modul Ajar Pembelajaran Mendalam PJOK Kelas X Terbaru 2025
RPP PEMBELAJARAN MENDALAM BAHASA INDONESIA _SariIndah_DEWI SINTA (1).pdf
PPT Akidah Akhlak Kelompok 1 X-8 (4).pptx
LK Modul 3 - Menentukan Pengalaman Belajar Herpina Indah Permata Sari (2).pdf
Modul Ajar Deep Learning Prakarya Kerajinan Kelas 12 SMA Terbaru 2025
Modul Ajar Deep Learning Prakarya Budidaya Kelas 12 SMA Terbaru 2025
Saint Maximilian Kolbe, Polish friar, priest, missionary and martyr (indonesi...
2021 KREATIFITAS DNA INOVASI DALAM BERWIRAUSAHA.pdf
Laporan On The Job TRaining PM KS Siti Hikmah.pdf
Pembelajaran-Mendalam-RTL-dan-Umpan-Baliknya.pptx

Mod 4 pengambilan keputusan

  • 2. 2 TUJUAN Menjelaskan tentang operator kondisi (operator relasi dan logika) Menjelaskan penggunaan pernyataan if Menjelaskan penggunaan pernyataan if-else Menjelaskan penggunaan pernyataan if dalam if Menjelaskan penggunaan pernyataan else-if Menjelaskan penggunaan pernyataan switch
  • 3. 3 Pengambilan Keputusan Pernyataan-pernyataan yang dapat digunakan dalam pengambilan keputusan: Pernyataan if Pernyataan if-else Pernyataan switch Pernyataan-pernyataan diatas memerlukan suatu kondisi dibentuk dengan operator relasi dan/atau operator logika.
  • 4. 4 Operator Relasi Operator Makna > >= < <= == != Lebih dari Lebih dari atau sama dengan Kurang dari Kurang dari atau sama dengan Sama dengan Tidak sama dengan Operator relasi menghasilkan kondisi BENAR atau SALAH.
  • 6. 6 Operator Logika Operator Makna && || ! dan (AND) atau (OR) tidak (NOT)
  • 7. 7 Operator Logika Bentuk umum penggunaan operator logika ‘&&’ dan ‘||’: operand1 operator operand2 Bentuk umum penggunaan operator logika ‘!’: !operand Hasil operasi ! bernilai : Benar jika operand bernilai salah Salah jika operand bernilai benar
  • 8. 8 Operator Logika Hasil Operand1 Operand2 || && Salah Salah Benar Benar Salah Benar Salah Benar 0 1 1 1 0 0 0 1
  • 9. 9 Prioritas Operator Logika dan Relasi Prioritas Operator Tertinggi ! > >= < <= == != && Terendah ||
  • 10. 10 Latihan Berikut benar atau salah : 2 > 1 || 3 <= 4 && 4 < 1 2 >1 && 3 <= 4 || 4 < 1 !(2 > 1) && (3 <= 4) (5 > 1 || 3 != 2) && ((2 > 1) || (4 == 2))
  • 11. 11 Pernyataan if Sintak: if (kondisi) pernyataan; Jika kondisi benar maka pernyataan dilakukan. pernyataan bisa satu statement atau beberapa statement Jika pernyataan lebih dari satu gunakan tanda ‘{‘ dan ‘}’ untuk mengelompokkan pernyataan2 itu.
  • 12. 12 Contoh penggunaan if // Program discount - discount.c #include <stdio.h> main() { float total_pembelian, discount = 0; printf("Total pembelian = Rp "); scanf("%f", &total_pembelian); if(total_pembelian >= 100000) discount = 0.05 * total_pembelian; printf("Besarnya discount = Rp %6.2fn", discount); }
  • 13. 13 Pernyataan if-else Sintak: if (kondisi) pernyataan1; else pernyataan2; Jika kondisi benar maka pernyataan1 dilakukan. Jika kondisi salah maka pernyataan2 dilakukan.
  • 14. 14 Contoh penggunaan if-else // Program perbandingan 2 buah nilai #include <stdio.h> main() { int minim,nilai1,nilai2; printf ("Masukkan 2 buah nilai n"); scanf ("%d %d",&nilai1, &nilai2); if (nilai1 < nilai2) minim = nilai1; else minim = nilai2; printf ("Nilai minimalnya adalah :%dn",minim); }
  • 15. 15 Nested-if Di dalam pernyataan if (atau if-else) bisa terdapat pernyataan if (atau if-else) yang lain. Bentuk umum: if (kondisi-1) if (kondisi-2) . . if(kondisi-n) pernyataan; else pernyataan; . . else pernyataan; else pernyataan;
  • 16. 16 Contoh penggunaan if-else // Program penentuan bil positif / negatif #include <stdio.h> { int x,y; printf ("Masukkan 2 buah nilai n"); scanf ("%d %d",&x, &y); if (x > 0) if (y > 0) printf ("Nilai x dan y adalah positifn"); else printf ("Nilai x positif dan y negatifn"); else printf ("Nilai x negatifn"); }
  • 17. 17 Contoh penggunaan if-else // Program kalkulator Sederhana - kalukalor1.c #include <stdio.h> main() { int valid_operator = 1; char operator; float number1, number2, result; printf("Masukkan 2 buah bilangan dan sebuah operatorn"); printf("dengan format : number1 operator number2nn"); scanf("%f %c %f", &number1, &operator, &number2); if(operator == '*') result = number1 * number2; else if(operator == '/') result = number1 / number2; else if(operator == '+') result = number1 + number2; else if(operator == '-') result = number1 - number2; else valid_operator = 0; if(valid_operator) printf("n%g %c %g is %gn", number1, operator, number2, result ); else printf("Invalid operator!n"); }
  • 18. 18 TERNARY OPERATOR Bentuk umum : kondisi1 ? ungkapan1 : ungkapan2; Jika kondisi bernilai benar, maka nilai ungkapan kondisi berupa ungkapan1 Jika kondisi bernilai salah, maka nilai ungkapan kondisi berupa ungkapan2 Hasil sama : if (nilai1 > nilai2) max = nilai1; else max = nilai2
  • 19. 19 CONTOH PROGRAM #include <stdio.h> main() { float nilai1, nilai2, max; printf("Masukkan dua buah nilai : "); scanf("%f %f", &nilai1, &nilai2); max = (nilai1 > nilai2) ? nilai1 : nilai2; printf("Nilai terbesar = %gn", max); }
  • 20. 20 switch switch (ekspresi) { case konstanta-1: pernyataan-11; ...... break; case konstanta-2: . . case konstanta-n: pernyataan-n1; ....... break; default: ....... break; } Sebagai pengganti pernyataan if bertingkat (else-if)
  • 21. 21 Contoh penggunaan switch #include <stdio.h> main() { int valid_operator = 1; char operator; float number1, number2, result; printf("Masukkan 2 buah bilangan dan sebuah operatorn"); printf("dengan format : number1 operator number2nn"); scanf("%f %c %f", &number1, &operator, &number2); switch(operator) { case '*' : result = number1 * number2; break; case '/' : result = number1 / number2; break; case '+' : result = number1 + number2; break; case '-' : result = number1 - number2; break; default : valid_operator = 0; } if(valid_operator) printf("%g %c %g is %gn", number1, operator, number2,result); else printf("Invalid operator!n"); }
  • 22. 22 Tugas 1. Buat algoritma, flowchart, dan program untuk menghitung diskriminan dan akar-akar dari persamaan kuadrat ax2 + bx + c = 0 D = b2 - 4ac D adalah deskriminan Jika D = 0 2 akar real kembar : x1 = x2 = -b / 2a Jika D > 0 2 akar real yang berlainan, yaitu : x1 = (-b + sqrt(D)) / 2a x2 = (-b - sqrt(D)) / 2a Jika D < 0 , maka terdapat 2 akar imaginer yang berlainan, yaitu : x1 = -b / 2a + (sqrt(-D) / 2a) i x2 = -b / 2a - (sqrt(-D) / 2a) i
  • 23. 23 2. Buatkan program untuk melakukan konversi berikut ini, dengan inputan berupa nilai antara 0 – 100. 3. Buatkan flowchart dan program untuk memasukkan 3 buah bilangan (x,y,z), dan program memberikan keluaran nilai terbesar sampai nilai terkecilnya.