SOAL UAS (semester 1)
UAS
FUNGSI
Suatu
fungsi adalah suatu bagian dari program yang dimaksud untuk
mengerjakan suatu tugas tertendtu dan letaknya dipisahkan dari bagian
program yang menggunakannya.
B
Fungsi
Fungsi
Tipe
nama_fungsi(argumen1, argumen2,…)
{
...
...
}
Definisi fungsi
U:
statemen fungsi
Contoh:
Listing
program:
#include
<stdio.h>
#include
<conio.h>
#include
<iostream.h>
#include
<iomanip.h>
/*sub
program*/
garis()
// nama fungsinya adalah garis
{
printf("\n---------------------------\n");
}
/*
Program utama */
main()
{
clrscr();
garis();
cout<<"PIKSI GANESHA - Woltermonginsidi"<<endl;
garis();
getche();
}
Hasil setelah dirun
----------------------------------------
PIKSI GANESHA – Woltermonginsidi
----------------------------------------
PENGIRIMAN
PARAMETER
- Pengiriman Parameter Secara Nilai
Pengiriman
parameter secara nilai adalah pengirman secara searah, yaitu dari
bagian program yang memanggil fungsi ke fungsi yang dipanggil.
Contoh
Listing
Program:
/*-------------------------*/
/*Penggunaan
Call By Value*/
/*Program
Pertuakan Nilai*/
/*------------------------*/
#include
<conio.h>
#include
<stdio.h>
#include
<iostream.h>
tukar(int
x,int y);
main()
{
int
a, b;
a=88;
b=77;
clrscr();
cout<<"Nilai
Sebelum Pemanggilan Fungsi";
cout<<"\na
="<<a<<" b ="<<b;
tukar(a,
b);
cout<<"\nNilai
Setelah Pemanggilan Fungsi";
cout<<"\na=
"<<a<<" b ="<<b;
getch();
}
tukar(int
x,int y)
{
int
z;
z=x;
x=y;
y=z;
cout<<"\n\nNilai
di dalam Fungsi Tukar()";
cout<<"\nx
="<<x<<" y ="<<y;
cout<<endl;
}
Hasil setelah di run
Nilai
sebelum pemanggilan fungsi
a
= 88
b = 77
Nilai
di dalam Fungsi Tukar()
x
= 77 y = 88
Nilai
setelah pemanggilan fungsi
a
= 88 b = 77
2. Pengiriman Parameter Secara
Acuan
Pengiriman parametersecara acuan
adalah pengiriman dua arah, yaitu dari bagian program yang memanggil
fungsi ke fungsi yang dipanggil dan sebaliknya
Contoh
Listing
Program
/*Penggunaan
Call By Reference*/
/*Program
Pertukaran Nilai*/
/*---------------------------*/
#include
<conio.h>
#include
<stdio.h>
#include
<iostream.h>
tukar(int
*x,int *y);
main()
{
int
a,b;
a=88;
b=77;
clrscr();
cout<<"Nilai
Sebelum Pemanggilan fungsi";
cout<<"\na
="<<a<<" b ="<<b;
tukar(&a,&b);
cout<<endl;
cout<<"\nNilai
Setelah Pemanggilan Fungsi";
cout<<"\na
= "<<a<<" b ="<<b;
getch();
}
tukar(int
*x, int *y)
{
int
z;
z=*x;
*x=*y;
*y=z;
cout<<endl;
cout<<"\nNilai
di Akhir Funsi Tukar()";
cout<<"\nx
= "<<*x<<" y = "<<*y;
}
Hasil setelah di run
Nilai
sebelum pemanggilan fungsi
a
= 88 b = 77
Nilai
di akhir Fungsi Tukar()
x
= 77 y = 88
Nilai
setelah pemanggilan fungsi
a
= 77 b = 88
Pengiriman
Data Konstanta
Listing
Program
/*--------------------------*/
/*Pengiriman
data konstanta*/
/*--------------------------*/
#include
<conio.h>
#include
<stdio.h>
#include
<iostream.h>
luas(float
sisi);
main()
{
float
luas_bs;
clrscr();
luas_bs=luas(4.25);
cout<<"\nLuas
Bujur Sangkar = "<<luas_bs;
getch();
}
luas(float
sisi)
{
return(sisi*sisi);
}
Hasil setelah di run
Luas
bujur sangkar = 18
Pengiriman
Data Varibel ke Fungsi
Listing
programnya
/*-------------------------*/
/*Pengiriman
Data Variabel*/
/*------------------------*/
#include
<conio.h>
#include
<stdio.h>
#include
<iostream.h>
luas(float
sisi);
main()
{
float
luas_bs,sisi_bs;
clrscr();
cout<<"\nMenghitung
Luas Bujur Sangkar"<<endl;
cout<<"\nMasukan
Nilai Sisi Bujur Sangkar :";cin>>sisi_bs;
luas_bs=luas(sisi_bs);
cout<<"\nLuas
bujur sangkar = "<<luas_bs<< "cm";
getch();
}
luas(float
sisi)
{return(sisi*sisi);
}
Hasil setelah di run
Menghitung
luas Bujur Sangkar
Masukan
Nilai Sisi Bujur Sangkar = 5
Luas
Bujur Sangkar = 25 cm
Comments