“Menentukan keputusan tidak hanya ada di dalam kehidupan sehari hari saja, tetapi di dalam bahasa pemrogaman juga ada istilah penentu keputusan” -Mr.C
Assalamu’alaikum Wr.Wb
Haii sobat hidup !! SALAM HIDUP !!
Kembali lagi dengan saya, orang ganteng gatau darimana… hiyahiya…
Oke sobat hidup, pada kesempatan kali ini, kita akan membahas materi selanjutnya setelah materi relational kemarin. Uwaww materi apakah ituuu??
Yakk benar sekali, kita akan membahas materi tentang STATEMENT PENENTU KEPUTUSAN. Tapi tunggu duluu.. seperti biasa, sebelum masuk ke dalam pembahasan teori, ada tujuan yang ingin kita capai dalam belajar mengenai materi ini, sobat hidup. Apasih tujuannya?
TUJUAN dari percobaan kali ini ialah untuk mempelajari dan mengamati penggunaan statement penentu keputusan (if-else); memanfaatkan statement if-else untuk membuat proses perulangan yaitu dengan dikombinasikan dengan statement goto-label; mempelajari statement if-else bersarang (nested if); mempelajari (else-if); dan yang terakhir mempelajari penggunaan statement switch-case sebagai alternatif pengganti else-if.
Nah setelah mengetahui tujuan dari percobaan kali ini, baru deh kita masuk ke dalam pembahasan teori STATEMENT PENENTU KEPUTUSAN.
Statement if-else adalah statement yang digunakan untuk menentukan pilihan dari suatu kondisi yang diberikan. Cara kerjanya adalah melakukan perbandingan menggunakan Relational Operator dan/atau Logical Operator.
Statement else-if adalah cara lain dari bentuk if-else yang digunakan untuk menentukan satu kondisi yang benar dari beberapa kondisi yang tersedia. Struktur else-if hampir sama dengan struktur if-else, ketika sobat hidup menggunakan struktur if-else secara berulang, maka harus menggunakan struktur else-if.
Statement switch-case adalah bentuk lain dari statement else-if, dengan mendaftar kondisi secara vertical dalam satu kolom sehingga memudahkan dalam hal evaluasi program.
Nahh sobat hidup, berakhir sudah pembahasan teori dari STATEMENT PENENTU KEPUTUSAN itu, sekarang agar lebih jelas dan lebih paham, kita langsung saja melakukan percobaannya. Let’s go…
1. Membuat program untuk menentukan bilangan ganjil atau bilangan genap.
#include <stdio.h>
void main()
{
int x, sisa;printf(“Masukkan bilangan bulat = “);
scanf(“%d”, &x);sisa = x % 2 == 1;
if(sisa)
printf(“\n %d adalah bilangan GANJIL”, x);
else
printf(“\n %d adalah bilangan GENAP”, x);getch();
}
Setelah sobat hidup membuat program seperti di atas, sobat hidup klik Build and Run, maka akan muncul hasil seperti gambar di bawah.
Setelah muncul hasil seperti itu, sobat hidup disuruh untuk memasukkan bilangan bulat. Nah setelah sobat hidup memasukkan bilangan bulat (terserah) maka akan muncul hasil seperti gambar di bawah.
2. Membuat program untuk menentukan huruf kecil, huruf besar, angka dan karakter khusus (tanda baca, operator dsb).
#include <stdio.h>
void main()
{
char c;printf(“Masukkan input = “);
scanf(“%c”, &c);if (c >= ‘a’ && c <= ‘z’)
{
printf(“\nKarakter tersebut adalah HURUF KECIL\n”);
}
else if (c >= ‘A’ && c <= ‘Z’)
{
printf(“\nKarakter tersebut adalah HURUF BESAR\n”);
}
else if (c >= ‘1’ && c <= ‘9’)
{
printf(“\nKarakter tersebut adalah ANGKA\n”);
}
else if (c = 0)
{
printf(“\nKarakter tersebut adalah ANGKA\n”);
}else
{
printf(“\nKarakter tersebut termasuk KARAKTER KHUSUS\\n”);
}getch();
}
Klik Build and Run yaaa sobat hidup…
Kemudian masukkan karakter yang sobat hidup inginkan, maka hasilnya akan menentukkan kelompok karakter yang sobat hidup masukkan.
3. Membuat program kalkulator sederhana. Program harus memungkinkan user untuk mengetik ekspresi dengan bentuk :
Bilangan operator
- Operator yang digunakan adalah : * / + – % & | S E
- Operator S memerintahkan program untuk men-set “accumulator” untuk menyimpan angka yang sobat hidup ketik.
- Operator E memerintahkan program untuk mengakhiri program.
#include <stdio.h>
#include <stdlib.h>
#include <math.h>void main()
{
int valid_operator = 1;
char operator;
float bil, hasil, s = 0;printf(“\n BERHITUNG SKUYY!!\n”);
ULANG:
valid_operator = 1;
scanf(“%f %c”, &bil, &operator);switch(operator){
case ‘s’:
case ‘S’: s = bil; break;
case ‘e’:
case ‘E’: goto END; break;
case ‘*’: s *= bil; break;
case ‘-‘: s -= bil; break;
case ‘+’: s += bil; break;
case ‘/’: s /= bil; break;
case ‘%’: s = fmod(s, bil); break;
default : valid_operator = 0;
}
if(valid_operator){
printf(“= %f\n”, s);
}
else {
printf(“\nOperator SALAH! Masukkan lagi!\n”);
}goto ULANG;
END:
printf(“\n\nKALKULATOR BERHENTI”);getch();
}
Klik Build and Run gaezz…
Untuk memulai program, sobat hidup harus masukkan angka terserah kemudian di akhiri dengan [space]S
Setelah muncul hasil seperti itu, kali ini terserah sobat hidup mau diapakan bilangan tersebut, apakah dijumlah atau dikali atau dibagi atau di kurang.
Nah setelah sobat hidup selesai mengoperasikan bilangan tersebut, untuk mengakhiri pengoperasian, sobat hidup ketik ‘0 E’, maka hasilnya akan seperti ini
4. Membuat program untuk menentukan suatu tahun kabisat atau bukan (1900 < tahun < 2005)
#include <stdio.h>
void main()
{
int tahun;printf(“Masukkan tahun\n”);
ULANG:
scanf(“%d”, &tahun);if(tahun>=1900 && tahun<=2005 && tahun%4==0)
printf(“Tahun %d merupakan TAHUN KABISAT\n\n”, tahun);
else
printf(“Tahun %d bukan merupakan TAHUN KABISAT\n\n”, tahun);goto ULANG;
getch();
}
Klik Build and Run
5. Membuat program untuk menghitung determinan (D) dan mencari akar-akar dari persamaan kuadrat : Ax^2 + Bx + C= 0 dimana D = B^2 – 4AC
- Jika D = 0, maka akar-akarnya kembar, yaitu : x1=x2 = -B/2A
- Jika D > 0, maka akar akarnya berbeda, yaitu :
- Jika D < 0, maka akar-akarnya imaginer berlainan, yaitu :
#include <stdio.h>
#include <math.h>
void main()
{
float a, b, c, d, x1, x2;printf(“Masukkan nilai A\n”);
scanf(“%f”, &a);
printf(“Masukkan nilai B\n”);
scanf(“%f”, &b);
printf(“Masukkan nilai C\n”);
scanf(“%f”, &c);d = b*b – 4*a*c;
if(d == 0){
x1 = -b/2*a;
x2 = x1;
printf(“Hasil determinan adalah %.2f dan akarnya %.2f dan %.2f\n”,d ,x1, x2);
}else if(d > 0){
x1 = (-b + sqrt(-d))/2*a;
x2 = (-b – sqrt(-d))/2*a;
printf(“Hasil determinan adalah %.2f dan akarnya %.2f dan %.2f”, d, x1, x2);
}else{
x1 = (-b + sqrt(-d))/2*a;
x2 = (-b – sqrt(-d))/2*a;
printf(“Hasil determinan adalah %.2f dan akarnya %.2f dan %.2f (i = sqrt(-1))\n”,d ,x1, x2);
}
getch();
}
Klik Build and Run
ANALISA PERCOBAAN
- Cara kerja dari program percobaan nomer 1 ialah kita memasukkan angka kemudian angka tersebut diproses oleh programnya dengan prinsip sisa dari input dibagi 2 (x%2). Jika x%2 menghasilkan sisa ‘1’, maka input tersebut merupakan angka GANJIL. Jika x%2 menghasilkan sisa ‘0’, maka input tersebut merupakan angka GENAP.
- Cara kerja dari program nomer 2 ialah kita memasukkan karakter apapun dari keyboard, kemudian oleh program akan masuk ke statement if bercabang. Jika pada statement if pertama tidak terpenuhi, maka akan terprogram pada if selanjutnya (else-if). Jika pada else-if masih belum terpenuhi, maka akan masuk ke statement else.
- Cara kerja dari percobaan nomer 3 ialah kita memasukkan input dan operator ‘S’. Kemudian kita dapat memberi input baru dan operator perhitungan matematika dengan format Angka[spasi]Operator. Percobaan ini menggunakan statement switch-case untuk mengubah operator dan statement goto untuk melanjutkan perhitungan dengan input baru.
- Cara kerja dari percobaan nomor 4 ialah kita memasukkan tahun berapapun dengan range 1900 sampai 2005. Jika input yang dimasukan habis dibagi 4 maka input tersebut merupakan Tahun kabisat. Jika tidak memenuhi akan diproses pada statement else (artinya input tersebut bukan merupakan tahun kabisat).
- Cara kerja dari percobaan nomor 5 ini hampir sama seperti percobaan percobaan sebelumnya.
Wahaiii sobat hidup, selesai sudah pembahasan kita mengenai STATEMENT PENENTU KEPUTUSAN ini, kiranya pembahasan kali ini cukup sampai disini dulu sobat hidup. Sampai ketemu lagi di pembahasan selanjutnya… baaaaayyyy..
SALAM HIDUP!!!
Wassalamu’alaikum Wr.Wb
Recent Comments