PRAKTIKUM III PENGAMBILAN KEPUTUSAN


A. Tujuan Instruksional Khusus
1.   Menjelaskan tentang operator kondisi (operator relasi dan logika)
2.      Menjelaskan penggunaan pernyataan if
3.      Menjelaskan penggunaan pernyataan if-else
4.      Menjelaskan penggunaan pernyataan if dalam if
5.      Menjelaskan penggunaan pernyataan else-if
6.      Menjelaskan penggunaan pernyataan switch  

B. Dasar Teori
Statement if-else digunakan untuk menentukan pilihan dari suatu kondisi yang diberikan. Cara kerjanya adalah melakukan perbandingan menggunakan Relational Operator dan/atau Logical Operator, apabila suatu kondisi terpenuhi (benar) maka akan mengerjakan proses A dan apabila kondisi tidak
terpenuhi (salah) maka tidak akan mengerjakan proses A atau dapat juga mengerjakan proses lain misalkan proses B. Proses A dan B dapat berupa satu baris statement atau beberapa baris yang dikelompokkan (Compound Statement). Statement if-else bersarang merupakan kombinasi dari beberapa if-else, dinama  apabila ada beberapa kondisi yang harus diuji kebenarannya secara bersama (if didalam if). Statement else-if adalah cara lain dari bentuk if-else, yang digunakan untuk menentukan satu kondisi yang benar dari beberapa kondisi yang tersedia. Statement switch-case adalah bentuk lain dari statement else-if, dengan mendaftar kondisi secara vertical dalam satu kolom sehingga memudahkan dalam hal evaluasi program.

C.  Daftar Alat dan Bahan.
1.      CPU
2.      Monitor
3.      Keyboard
4.      Mouse
5.      Printer
6.      Job Sheet Praktikum
D. Langkah Kerja.
1.      Hidupkan Komputer sampai menyala dan mengeluarkan layar Windows.
2.      Pilih Start pada ujung kiri bawah monitor.
3.      Pilih Program.
4.      Pilih Program Turbo C atau TC for windows.
5.      Jika Layar Turbo C sudah keluar, Pilih File.
6.      Pilih News untuk membuka Program baru, atau open untuk membuka file program yang sudah dibuat sebelumnya.
7.      Ketik Program sesuai dengan di data program.
8.      Setelah selesai pengetikan, pilih file dan save as program tersebut dengan nama file sesuai keinginan praktikan.
9.      compile program tersebut untuk melihat kebenaran pengetikan program dan untuk mengubah file dengan extension .cpp menjadi file .hex, .bin dan. .obj.
10.  Setelah sukses dicompile maka pilih run untuk menjalankan program tersebut.
11.  Lihat hasilnya dimonitor dan catat, kemudian analisa hasil percobaan tersebut.
12.  Lakukan praktikum untuk file program berikutnya dengan cara yang sama.

E. Data Program

1. Menghitung nilai discount menggunakan if.
#include <stdio.h>
void main()
{
  double total_pembelian, discount = 0;
  printf("Total pembelian   = Rp ");
  scanf("%lf", &total_pembelian);
  if(total_pembelian >= 100.000)
  discount = 0.05 * total_pembelian;
    printf("Besarnya discount = Rp %.2lf\n", discount);
}

2. Menghitung nilai absolut suatu bilangan.
#include <stdio.h>
void main()
{
  int bil, abs;
    printf("Masukkan bilangan bulat : ");
    scanf("%d", &bil);
    if(bil < 0)
      abs = -bil;
      printf("Nilai absolut dari %d adalah %d\n\n", bil,abs);
}
1.      Mengamati penggunaan statement penentu keputusan sederhana, yaitu menentukan apakah  bilangan yang dimasukkan lebih kecil dari nol?
 #include <stdio.h>
   void main()
   {
   int bil,absolut;
   printf("Masukkan bilangan bulat: ");
   scanf("%d", &bil);
   if(bil < 0) absolut = -bil;
   printf("Nilai absolute dari %d adalah = %d", bil, absolut);
   getch();
}

2.      Suatu bilangan apabila dapat dibagi dengan bilangan yang lain, maka tidak menghasilkan suatu sisa nilai, sehingga dengan cara ini program dapat menentukan apakah suatu bilangan habis dibagi atau tidak. Program dibawah ini menghitung sisa pembagian menggunakan operator aritmatika yaitu ‘%’ (modulus).
#include <stdio.h>
   void main()
   {
   int pembilang, penyebut, sisa;
   printf("Masukkan pembilang : ");
   scanf("%d", &pembilang);
   printf("Masukkan penyebut  : ");
   scanf("%d", &penyebut);
   sisa = pembilang % penyebut;
   puts(“”);
   if(sisa)
   printf("%d tidak habis dibagi %d\n", pembilang, penyebut);
   else
   printf("%d habis dibagi %d\n", pembilang, penyebut);
   getch();
}

3.      Compound Statement adalah mengelompokkan suatu proses menjadi satu blok. Didalam if-else penggunaan Compound Statement adalah untuk mengelompokkan proses-proses yang harus dikerjakan bila kondisi terpenuh ataupun bila kondisi tidak terpenuhi
#include <stdio.h>
   void main()
   {
char tag;
printf("Masukkan tipe tag ( 2 / 4) : "); scanf("%c", &tag);
   if(tag==’2’) {
      printf("Merk sepeda motor bertipe 2 tag\n\n");
      printf("   1. YA MAHA");
      printf("   2. YA SUZUKI");
      printf("   3. YA HONDA");
   } else {
      printf("Merk sepeda motor bertipe 4 tag\n\n");
      printf("   1. HONDA");
      printf("   2. SUZUKI");
      printf("   3. YAMAHA");
   }
   getch();
}
4.            Statement if-else tidak dapat digunakan untuk menentukan satu pilihan yang benar diantara beberapa pilihan yang ada, oleh karena itu dapat digunakan statement else-if dimana dapat digunakan untuk menguji kondisi yang benar diantara beberapa beberapa kondisi yang diberikan. Program dibawah ini adalah digunakan untuk menentukan satu pilihan diantara beberapa pilihan yaitu memilih satu operator (dimasukkan dari keyboard) yang sesuai diantara 4 Arithmetic Operator yaitu (+, -, / dan *). Bila suatu operator dikenal maka dilanjutkan proses perhitungan sesuai dengan operator yang dikenal tersebut, sedangkan bila tidak dikenal maka diberikan komentar “Operator SALAH!”. Pengujian operator dilakukan secara bertahap dari operator ‘*’, ‘/’, ‘+’ dan ‘-‘, bila keempat operator tidak ditemukan maka pada statement penujian cukup dituliskan else tanpa if, yang menandakan pengujian selesai dan tidak ditemukan operator yang sesuai.
#include <stdio.h>
   void main()
   {
   int  valid_operator = 1;
   char  operator;
   float  bil1, bil2, hasil;
   printf("Masukkan 2 bilangan dan sebuah operator.\n\n");
   printf("Dengan format:\n\n");
   printf("= bilangan-1 operator bilangan-2\n\n");
   printf("= ");
   scanf("%f %c %f", &bil1, &operator, &bil2);
   if(operator == '*') {
      hasil = bil1 * bil2;
   } else if(operator == '/')
      hasil = bil1 / bil2;
   else if(operator == '+')
      hasil = bil1 + bil2;
   else if(operator == '-')
      hasil = bil1 - bil2;
   else
      valid_operator = 0;
   if(valid_operator) {
      printf("\nHasil perhitungan\n\n");
      printf("%g %c %g = %g\n",bil1,operator,bil2,hasil);
   } else {
      printf("\nOperator SALAH!\n");
      printf(“\nGunakan operator +, -, / dan * saja!”);
   }
   getch();
}

F.  SOAL

1.   Buatlah program untuk menerima 2 buah bilangan bulat masukan.  Tampilkan hasil dari pembagian bilangan pertama dengan bilangan kedua, dengan ketelitian 3 desimal.

     Input   : bil1 dan bil2
     Output : hasil bagi bil1 dengan bil2

     Nilai tambah : program bisa mengecek pembagian dengan nol, yaitu jika bilangan kedua adalah nol, maka tidak dilakukan proses pembagian, namun ditampilkan pesan kesalahannya (division by zero).

2. Buatlah program untuk menghitung determinan dan mencari akar-akar dari persamaan kuadrat :  ax2 + bx + c = 0 , dengan ketentuan sbb :

D = b2 - 4ac
·         Jika D = 0 , maka terdapat 2 akar real yang kembar, yaitu  :  x1 = x2 = -b / 2a
·         Jika D > 0 , maka terdapat 2 akar real yang berlainan, yaitu  : 
                x1 = (-b + sqrt(D)) / 2a
                x2 = (-b - sqrt(D)) / 2a
·         Jika D < 0 , maka terdapat 2 akar imaginair yang berlainan, yaitu : 
                x1 = -b / 2a + (sqrt(-D) / 2a) i
                x2 = -b / 2a  - (sqrt(-D) / 2a) i

Input    : a, b, c (float)
Output : Nilai Determinan serta nilai akar-akar persamaan tsb (x1& x2).

Petunjuk : - untuk mencari akar dari x, gunakan : sqrt(x) yang didefinisikan pada <math.h>.
                 - gunakan else if

3.  Buatlah program untuk menampilkan menu dan melakukan proses sbb :
Menu  :       1. Menghitung volume kubus
                   2. Menghitung luas lingkaran
                   3. Menghitung volume silinder.
Input : pilihan user (1, 2 atau 3)
Jika pilihan = 1, maka :
Input    : panjang sisi kubus
Output : Volume kubus (vol = sisi3)
Jika pilihan = 2, maka :
Input    : panjang jari-jari lingkaran
Output : Luas lingkaran (luas = 3.14 * r2)
Jika pilihan = 3, maka :
Input    : panjang jari-jari lingkaran & tinggi silinder
Output : Volume silinder (vol = 3.14 * r2 * t)
Jika pilihan selain 1, 2 & 3 (default) : Tampilkan pesan kesalahan.

Petunjuk :  gunakan switch-case

Tidak ada komentar:

Posting Komentar

Terima kasih sudah membaca blog saya, silahkan tinggalkan komentar anda

Silinder penggerak tunggal

Silinder penggerak tunggal Pada silinder ini udara bertekanan yang diberikan pada silinder hanya satu arah saja, sehingga jenis ini menghasi...