Nama :
Empianus Eko Putra
49013009
No.Reg % 4 = 1 (Soal 7)
Deskripsi Singkat Video :
Listing program diatas merupakan
kalkulator sederhana yang memanfaatkan fungsi dalam mengeksekusi operasi
kalkulator yang tersedia dalam program tersebut. Adapun operasi yang bisa
dioperasikan diantaranya : operasi perkalian, pengurangan, pertambahan, pembagian, cos, sin,
tan, exp, luas segitiga, luas lingkaran, luas segi empat, akar kuadrat,
pembulatan.
Dalam melakukan perhitungan operasi tersebut kita membutuhkan library
math.h dimana library ini berfungsi untuk bisa melakukan perhitungan
matematika.
Dalam pembuatan program ini juga
menggunakan fungsi, tujuannya agar
program yang dibuat lebih terstruktur. Adapun fungsi yang dibuat dalam program
ini diantaranya :
1.
Fungsi untuk menu dengan nama
“void menu()”, pada fungsi ini terdapat menu – menu yang bisa dilakukan operasi
perhitungan dalam program kalkulator tersebut.
2.
Fungsi untuk memproses
perhitungan dari masing-masing operasi yang ada pada program kalkulator. Nama
fungsi yang dibuat “ void
proses(int pil); ”. Variabel “int pil” disini berfungsi
untuk menampung pilihan yang diiinputkan oleh user, setelah itu program akan
meneruskan pengecekan pada sintax – sintax yang terdapat dalam fungsi proses
ini, jika ada yang sesuai dengan pilihan yang diinputkan oleh user, maka
program akan memulai melakukan perhitungan dari operasi yang dipilih tersebut.
Misalnya user memilih menu 1 (perkalian), maka program akan menampilkan proses
perhitungan dari perkalian tersebut.
Untuk bisa
melakukan pengecekan menu yang dipilih oleh user, maka ditambahkan sintax “switch
case” dalam fungsi proses tersebut. Selain itu fungsi proses ini akan
bisa berjalan apabila telah dilakukan pemanggilan fungsi tersebut pada program
utama. Untuk lebih jelas silahkan dilihat pada program
Source Code :
/*
Kasus Soal 7 :
Kalkulator yang Dapat melakukan perkalian,
pengurangan, pertambahan,
pembagian, cos, sin, tan, exp, luas
segitiga, luas lingkaran,
luas segi empat, akar kuadrat, pembulatan,
dengan menggunakan math.h
Writer
: Empianus Eko Putra */
#include <stdio.h>
// library untuk input - output
#include <stdlib.h> //
library untuk system pause (fungsi jeda)
#include <math.h>
// library untuk menggunakan rumus matematika
#include <conio.h>
void menu(); // prototype fungsi menu
void proses(int pil); // prototype
fungsi proses kalkulator
float
x,y,hasil,atas,bawah; // deklarasi variabel float
global
int main(void){
int
pil,ulang; //
deklarasi variabel integer private
// Judul
Program
printf (" =============================\n");
printf ("
PROGRAM\n");
printf (" KALKULATOR
SEDERHANA\n");
printf (" Writer : Empianus
Eko Putra\n");
printf ("
=============================\n\n");
menu();
// pemanggilan fungsi menu
printf("\n\nMasukan
Pilihan Anda : ");
scanf("%i",&pil);
proses(pil); // pemanggilan
fungsi proses kalkulator
printf ("Apakah
Anda Ingin Melakukan Operasi Yang Lain (1=YES , 2=NO)?");
scanf
("%i",&ulang); // meminta input pengulangan operasi lain jika 1=Yes, 2=No
// sintax untuk
melakukan pengulangan menu dan proses
if(ulang==1){
while
(ulang==1){
menu(); // pemanggilan
fungsi menu pada saat pengulangan
printf("\n\nMasukan
Pilihan Anda : ");
scanf("%i",&pil);
proses(pil); // pemanggilan
fungsi proses kalkulator pada saat pengulangan
printf ("Apakah
Anda Ingin Melakukan Operasi Yang Lain (1 = Yes , 2 = No)?");
scanf ("%i",&ulang);
/*meminta input pengulangan operasi lain pada
saat pengulangan telah dilakukan
sebelumnya*/
}
}else{
printf("====Terima
Kasih====\n");
}
system ("pause");
return 0;
}
//
fungsi Menu
void menu(){
printf ("\n
==============\n");
printf (" MENU OPERASI\n");
printf ("
==============\n\n");
printf ("1. Hitung Perkalian\n");
printf ("2. Hitung Pengurangan\n");
printf ("3. Hitung Penambahan\n");
printf ("4. Hitung Pembagian\n");
printf ("5. Hitung COS(x)\n");
printf ("6. Hitung SIN(x)\n");
printf ("7. Hitung TAN(x)\n");
printf ("8. Hitung Exponen\n");
printf ("9. Hitung Luas Segitiga\n");
printf ("10.
Hitung Luas Lingkaran\n");
printf ("11.
Hitung Luas SegiEmpat\n");
printf ("12.
Hitung Akar Kuadrat\n");
printf ("13.
Hitung Pembulatan\n");
}
//
Fungsi Untuk Proses Kalkulator
void proses(int pil){
switch
(pil){
case
1:{
printf ("\n\nProses Perkalian Di
Mulai\n");
printf ("=========================\n");
printf ("\nMasukan Angka 1:");
scanf ("%f",&x);
printf ("Masukan Angka 2:");
scanf ("%f",&y);
hasil=x*y; // proses perhitungan perkalian
printf ("Hasil %.2f * %.2f =
%.2f\n\n\n",x,y,hasil);
break;
}
case 2:{
printf ("\n\nProses Pengurangan Di
Mulai\n");
printf ("===========================\n");
printf ("Masukan Angka 1:");
scanf ("%f",&x);
printf ("Masukan Angka 2:");
scanf ("%f",&y);
hasil=x-y; // proses perhitungan pengurangan
printf ("Hasil %.2f - %.2f =
%.2f\n\n\n",x,y,hasil);
break;
}
case 3:{
printf ("\n\nProses Penambahan Di
Mulai\n");
printf ("==========================\n");
printf ("Masukan Angka 1:");
scanf ("%f",&x);
printf ("Masukan Angka 2:");
scanf ("%f",&y);
hasil=x+y; // proses perhitungan penambahan
printf ("Hasil %.2f + %.2f =
%.2f\n\n\n",x,y,hasil);
break;
}
case 4:{
printf ("\n\nProses Pembagian Di
Mulai\n");
printf ("=========================\n");
printf ("Masukan Angka 1:");
scanf ("%f",&x);
printf ("Masukan Angka 2:");
scanf ("%f",&y);
hasil=x/y; // proses perhitungan pembagian
printf ("Hasil %.2f / %.2f =
%.2f\n\n\n",x,y,hasil);
break;
}
case 5:{
printf ("\n\nProses Hitung COS Di
Mulai\n");
printf ("==========================\n");
printf ("Masukan Angka :");
scanf ("%f",&x);
hasil=cos((3.14*x)/180); // proses perhitungan
cos
printf ("COS %.2f = %f\n\n\n",x,hasil);
break;
}
case 6:{
printf ("\n\nProses Hitung SIN Di
Mulai\n");
printf ("==========================\n");
printf ("Masukan Angka :");
scanf ("%f",&x);
hasil= sin((3.14*x)/180); // proses
perhitungan sin
printf ("SIN %.2f = %f\n\n\n",x,hasil);
break;
}
case 7:{
printf ("\n\nProses Hitung TAN Di
Mulai\n");
printf ("==========================\n");
printf ("Masukan Angka :");
scanf ("%f",&x);
hasil=tan((3.14*x)/180); // proses perhitungan
tan
printf ("TAN %.2f = %.2f\n\n\n",x,hasil);
break;
}
case 8:{
printf ("\n\nProses Hitung Exponent Di
Mulai\n");
printf ("===============================\n");
printf ("Masukan Bilangan :");
scanf ("%f",&x);
hasil= exp(x); // proses perhitungan Exponen
printf ("Exponent dari %.2f =
%.2f\n\n\n",x,hasil);
break;
}
case 9:{
printf ("\n\nProses Hitung Luas
Segitiga Di Mulai\n");
printf ("====================================\n");
printf ("Masukan Alas Segitiga:");
scanf ("%f",&x);
printf ("Masukan Tinggi Segitiga
:");
scanf ("%f",&y);
hasil= (x*y)/2; // proses perhitungan Luas
Segitiga
printf ("Luas Segitiga dengan %.2f dan
%.2f = %.2f\n\n\n",x,y,hasil);
break;
}
case 10:{
printf ("\n\nProses Hitung Luas
Lingkaran Di Mulai\n");
printf ("=====================================\n");
printf ("Masukan Jari-Jari
Lingkaran:");
scanf ("%f",&x);
hasil= 3.14*pow(x,2); // proses perhitungan
Luas Lingkaran
printf ("Luas Lingkaran dengan
Jari-Jari %.2f = %.2f\n\n\n",x,hasil);
break;
}
case 11:{
printf ("\n\nProses Hitung Luas
SegiEmpat Di Mulai\n");
printf ("=====================================\n");
printf ("Masukan Nilai Sisi:");
scanf ("%f",&x);
hasil= x*x; // proses perhitungan Luas
Segiempat
printf ("Luas Segiempat dengan Sisi
%.2f = %.2f\n\n\n",x,hasil);
break;
}
case 12:{
printf ("\n\nProses Hitung Akar Kuadrat
Di Mulai\n");
printf ("=====================================\n");
printf ("Masukan Angka:");
scanf ("%f",&x);
hasil= sqrt(x); // proses perhitungan Akar
Kuadrat
printf ("Akar Kuadrat dari %.2f =
%.2f\n\n\n",x,hasil);
break;
}
case 13:{
printf ("\n\nProses Pembulatan Bilangan
Di Mulai\n");
printf ("===================================\n");
printf ("Masukan Bilangan
Pecahan:");
scanf ("%f",&x);
atas = ceil(x); // proses
pembulatan bilangan keatas
bawah = floor(x); // proses pembulatan
bilangan kebawah
printf ("Hasil Pembulatan Keatas dari
%.2f = %.2f\n",x,atas);
printf ("Hasil Pembulatan Kebawah dari
%.2f = %.2f\n\n\n",x,bawah);
break;
}
default :
printf ("Anda
Belum Memilih Operasi\n\n\n"); /*pernyataan
yang
ditampilkan jika memilih selain
menu yang ada*/
}
}
Running Program :