MODUL 2 FUNCTION / FUNGSI

LAPORAN PRAKTIKUM MODUL II
STRUKTUR DATA

FUNCTION / FUNGSI


ANDIKA PRATAMA
20160910005

UNIVERSITAS KUNINGAN



Dasar Teori :




Yang dimaksuddengan fungsi atau function adalah sejumlah instruksi yang dikelompokan menjadi satu, dan berdiri sendiri untuk menyelasikan suatu pekerjaan tertentu.setiap fungsi mempunyai nama. Bahasa C/C++ minimal memiliki satu buah nama yang disebut fungsi main(). Nama main () adalah nama fungsi yang ditentukan dalam bahasa C/C++ yang tidak boleh diganti dengan nama lain, fungsi-fungsi lain dapat dibuat sesuaidengan keperluannya dan nama fungsinya dapat dikarang.

Fungsi merupakan blok dari kode yang dirancang untuk melakukan tugas khusus. Adapun tujuan dari pembuatan fungsi ini adalah :

1. Program menjadi terstruktur
2. Dapat mengurang duplikasi kode
3. Fungsi dapat dipanggil dari program atau fungsi yang lain

Adapun bentuk umum definisi sebuah fungsi adalah sebagai berikut :
Penentu-tipe nama_fungsi (daftar parameter)
Deklarasi parameter
{ tubuh fungsi
)
sebuah fungsi sederhana mempunyai bentuk penulisan sebagai berikut :
nama_fungsi(argumen)
...pernyataan/perintah
...pernyataan/perintah ...pernyataan/perintah
}

Praktikum 2.1

  • script 
#include <iostream.h>
#include <conio.h>
int tambah (int a, int b)
{
 int hasil1;
 hasil1=a+b;
 return hasil1;
}

 int kali (int a, int b)
{
 int hasil2;
 hasil2= a*b;
 return hasil2;
}
 void main()
{
 int hasil1, hasil2, a, b;
 cout<<"Nilai a = "; cin>>a;
 cout<<"Nilai b = "; cin>>b;
 hasil1=tambah(a,b);
 cout<<"Hasil Tambah : "<<hasil1<<endl;
 getch();
 hasil2=kali(a,b);
 cout<<"Hasil Kali : "<<hasil2<<endl;
 getch();
}
  • hasil run 

  • analisis
Program diatas adalah program yang dibuat untuk melakukan operasi dua operator penjumlahan dan perkalian dengan memasukan dua buah variabel tanpa ada nilai variabel yang dipindahkan ke variabel yang baru dan ditempatkan pada dua variabel keluaran. proses operasi tersebut dilakukan pada sebuah instruksi yang dinamakan function atau fungsi : 
{
 int hasil1;
 hasil1=a+b;
 return hasil1;
}

 int kali (int a, int b)
{
 int hasil2;
 hasil2= a*b;
 return hasil2;
}

yang paling utama dalam proses program diatas adalah dalam penulisan sebuah rumus :
hasil1=tambah(a,b);
hasil2=kali(a,b);


Praktikum 2.2


  • script 
#include <iostream.h>
#include <conio.h>
int volume(int &l)
{
 int t;
 cout<<"\nMasukan Nilai Tinggi Balok :\t";
 cin>>t;
 l =l*t;
 return l;
}
 int luas(int p, int l)
{
 int x;
 x=p*l;
 cout<<"\nTampilkan Nilai Luas Balok :\t"<<x<<endl;
 volume(x);
 return x;
}
 void main ()
{
 int p,l,j;
 cout<<"Masukan Nilai Panjang Balok :\t";
 cin>>p;endl;
 cout<<"\nMasukan Nilai Lebar Balok :\t";
 cin>>l;endl;
 j=luas(p,l);
 cout<<"\nVolume balok adalah : "<<j<<endl;
 getch();

  • hasil run 

  • analisis
Program ini dibuat untuk menghitung sebuah luas balok serta langsung menghitung tinggi balok tersebut. proses perhitung perhitungan tersebut dilakukan pada instruksi function dan dalam program ini dalam memasukan nilai panjang lebar tinggi dilakukan secara manual melalui proses : 

cout<<"Masukan Nilai Panjang Balok :\t";
 cin>>p;endl;
 cout<<"\nMasukan Nilai Lebar Balok :\t";
 cin>>l;endl;
 cout<<"\nMasukan Nilai Tinggi Balok :\t";
 cin>>t;
proses perubahan nilai :
{
 int t;
 cout<<"\nMasukan Nilai Tinggi Balok :\t";
 cin>>t;
 l =l*t;
 return l;
}
 int luas(int p, int l)
{
 int x;
 x=p*l;
 cout<<"\nTampilkan Nilai Luas Balok :\t"<<x<<endl;
 volume(x);
 return x;
}


Praktikum 2.3


  • script
#include<stdio.h>
#include<iostream.h>
#include<conio.h>
float b = 85;
float pertama(float a)
{
 float km1; km1 = (a / 100) * b;
 return km1;
}
 float kedua(float c)
{
 float km2;
 km2 = (c / 100) * b;
 return km2;
}
 float ketiga(float d)
{
 float km3;
 km3 = (d / 100) * b;
 return km3;
}
 main()
{
 float a,c,d,h;
 printf("Mengitung Jarak Tempuh Kendaraan dalam waktudinamis 3 Jam\n");
 cout<<"\nMasukan Kecepatan pada Jam Pertama %: ";
 cin>>a;
 cout<<"\nMasukan Kecepatan pada Jam Kedua % : ";
 cin>>c;
 cout<<"\nMasukan Kecepatan pada Jam Ketiga % : ";
 cin>>d;
 h = pertama(a) + kedua(c) + ketiga(d);
 printf("\nJarak yang ditempuh kendaraan tersebut sejauh %.2f Kilometer",h);
 return 0;
}
  • hasil run 

  • analisis 
Program diatas adalah program yang mencari sebuah jarak yang ditempuh oleh sebuah kendaraan dengan memasukan persentase nilai kecepatan kendaraan setiap satu jam dari kecepatan maksimum. program diatas akan memasukan nilai persentase secara manual melalui instruksi :  

cout<<"\nMasukan Kecepatan pada Jam Pertama %: "; cin>>a;
cout<<"\nMasukan Kecepatan pada Jam Kedua % : "; cin>>c;
cout<<"\nMasukan Kecepatan pada Jam Ketiga % : "; cin>>d;

dan pada program diatas terdapat instruksi function yang berfungsi untuk menentukan kecepatan jam pertama,kedua dan ketiga :

float pertama(float a)
{
 float km1; km1 = (a / 100) * b;
 return km1;
}
 float kedua(float c)
{
 float km2;
 km2 = (c / 100) * b;
 return km2;
}
 float ketiga(float d)
{
 float km3;
 km3 = (d / 100) * b;
 return km3;
}

LATIHAN
latihan 2.1

Seorang tukang cat tembok mempunyai ukuran dalam pengecatan yang terbagi dalam 3 kategori kualitas yaitu kualitas tinggi, kualitas sedang dan kualitas rendah.Untuk kualitas tingggi 5 Kg cat tembok dapat menutupi bidang dengan baik seluas 3 X 4 m2 atau seluas 12 m2 dan kualitas sedang 5 Kg cat tembok dapat menutupi bidaang seluas 4 X 5 m2 atau seluas 20 m2 serta kualitas rendah 5 Kg cat tembok dapat menutupi seluas 6 X 11 m2 atau seluas 66 m2 .Lengkapilah program dibawah ini untuk menyelesaikan kasus diatas.

  • script
#include<stdio.h>
#include<iostream.h>
#define kilo 5000;
float tinggi(float l_bidang)
{
 float temp1,nilai;
 nilai = (l_bidang / 12) * kilo;
 temp1 = nilai / 1000;
 return temp1;
}

float sedang(float l_bidang)
{
 float temp2,nilai;
 nilai = (l_bidang / 20) * kilo;
 temp2 = nilai / 1000;
 return temp2;
}

float rendah(float l_bidang)
{
 float temp3, nilai;
 nilai = (l_bidang / 66) * kilo;
 temp3 = nilai / 1000;
 return temp3;
}
int main()
{
 int i,pilih;
 float l_bidang, hasil;
 printf(" PROGRAM PERHITUNGAN JUMLAH CAT \n");
 for (i= 0;i < 33;i++)printf("=");printf("\n");
 printf(" 1.Kualitas Tinggi\n 2. Kualitas Sedang\n 3. Kualitas Rendah\n");
 printf("Masukan Nomor Pilihan Kualitas :");
 scanf("%d",&pilih);
 switch(pilih)
{
 case 1:
{
 cout<<"Kualitas Tinggi"<<endl;
 cout<<"Luas Bidang\t= ";
 cin>>l_bidang;
 hasil = tinggi(l_bidang);
 printf("Jumlah cat yang dibutuhkan = %.1f Kg",hasil);
 break;
}
 case 2:
{
 cout<<"Kualitas Sedang"<<endl;
 cout<<"Luas Bidang\t= ";
 cin>>l_bidang;
 hasil = sedang(l_bidang);
 printf("Jumlah cat yang dibutuhkan = %.1f Kg",hasil);
 break;
}
 case 3:
{
 cout<<"Kualitas Sedang"<<endl;
 cout<<"LuasBidang\t= ";
 cin>>l_bidang;
 hasil = rendah(l_bidang);
 printf("Jumlah cat yang dibutuhkan = %.1f Kg",hasil);
 break;
}
   default : printf ("Yang anda masukan salah : ");

}
return 0;
}
  • hasil run


  • analisis
Program tersebut mencari jumlah cat dengan adanya tiga kategori kualitas yaitu tinggi,sedang, dan rendah setiap kategori mempunyai luas bidangnya masing masing dan untuk mencari berapa kilogram jumlah cat yang dipakai kita bisa menggunakan rumus :

- untuk kualitas tinggi

 nilai = (l_bidang / 12) * kilo;
 temp1 = nilai / 1000;

- untuk kualitas sedang
nilai = (l_bidang / 20) * kilo;

 temp2 = nilai / 1000;
- untuk kualitas rendah
nilai = (l_bidang / 66) * kilo;

 temp3 = nilai / 1000;

Program diatas menggunakan structur control pemilihan switch case yang mana kita bisa memilih kualitas mana yang kita operasikan terlebih dahulu :


switch(pilih)
{
 case 1:
{
 cout<<"Kualitas Tinggi"<<endl;
 cout<<"Luas Bidang\t= ";
 cin>>l_bidang;
 hasil = tinggi(l_bidang);
 printf("Jumlah cat yang dibutuhkan = %.1f Kg",hasil);
 break;
}
 case 2:
{
 cout<<"Kualitas Sedang"<<endl;
 cout<<"Luas Bidang\t= ";
 cin>>l_bidang;
 hasil = sedang(l_bidang);
 printf("Jumlah cat yang dibutuhkan = %.1f Kg",hasil);
 break;
}
 case 3:
{
 cout<<"Kualitas Sedang"<<endl;
 cout<<"LuasBidang\t= ";
 cin>>l_bidang;
 hasil = rendah(l_bidang);
 printf("Jumlah cat yang dibutuhkan = %.1f Kg",hasil);
 break;
}
   default : printf ("Yang anda masukan salah : ");


}

latihan 2.2


Tabel diatas menujukan biaya pengiriman barang dengan menggunakan kendaraan truk dengan asumsi bahwa konsumsi BBM kendaraan 1:3 berapakah rasio BBM terhadap tarif tersebut dalam prosentase (%)yang diinput jarak dan tarif Lengkapilah program dibawah ini untuk menyelesaikan studi kasus diatas.

  • script
#include<iostream.h>
#include<stdio.h>
#include<conio.h>
long rasio(float tarif, float km)
{
 float olah, pros;
 olah = 6700 * (km / 3);
 pros = (olah / tarif) * 100;
 return pros;
}

int main()
{
 float km,hasil,tarif;
 cout<<"Program Perhitungan Rasio Tarif"<<endl;
 cout<<"Masukan Jarak Tempuh KM = ";
 cin>>km;
 cout<<"Masukan Tarif : ";
 cin>>tarif;
 hasil = rasio(tarif, km);
 printf("Prosentase rasio BBM dan Tarif adalah :%.2f%", hasil);
 return 0;
}
  • hasil run

  • analisis
Program diatas adalah program untuk menemukan sebuah persentase rasio BBM terhadap tarif yang berada didalam tabel,dalam proses untuk menemukan sebuah hasil program diatas menggunakan intruksi function :

long rasio(float tarif, float km)
{
 float olah, pros;
 olah = 6700 * (km / 3);
 pros = (olah / tarif) * 100;
 return pros;
}
serta dalam memasukan sebuah nilai kepada variabel program diatas menggunakan masukan secara manual yaitu melalui proses cout dan cin :

cout<<"Masukan Jarak Tempuh KM = ";
 cin>>km;
 cout<<"Masukan Tarif : ";
 cin>>tarif;
untuk perumusan hasil yang diperoleh program diatas menggunakan sebuah rumus :
hasil = rasio(tarif, km);

Comments

Post a Comment

Popular Posts