Dasar Pemrograman XI

Download Report

Transcript Dasar Pemrograman XI

Dasar Pemrograman
Pertemuan 11
Function
Erna Sri Hartatik
Definisi
• Merupakan blok dari kode program yang
dirancang untuk melaksanakan tugas khusus.
Tujuan
• Program menjadi lebih terstruktur, sehingga
mudah dipahami dan mudah dikembangkan.
• Dapat mengurangi pengulangan kode.
Cara Pemanggilan
Dengan menulis nama fungsinya itu sendiri.
Beberapa fungsi pustaka dalam bahasa C
Fungsi Operasi String <string.h>
• strcpy()
Berfungsi untuk menyalin suatu string asal ke variable
string tujuan.
Bentuk umum : strcpy(var_tujuan, string_asal);
• strlen()
Berfungsi untuk memperoleh jumlah karakter dari suatu
string.
Bentuk umum : strlen(string);
#include "stdio.h"
#include "conio.h"
#include "string.h"
void main()
{
char nama[25];
strcpy(nama, "Amethyst aiko");
printf("Nama : %s", nama);
printf("\nBanyaknya karakter nama Anda adalah :
%i", strlen(nama));
getch();
}
• strcat()
Digunakan untuk menambahkan string sumber ke
bagian akhir dari string tujuan.
Bentuk umum : strcat(tujuan, sumber);
• strupr()
Digunakan untuk mengubah setiap huruf dari suatu
string menjadi huruf capital.
Bentuk umum : strupr(string);
• strlwr()
Digunakan untuk mengubah setiap huruf dari suatu
string menjadi huruf kecil semua.
Bentuk umum : strlwr(string);
#include "stdio.h"
#include "conio.h"
#include "string.h"
void main()
{ char satu[30] = "Fakultas Teknik";
char dua[30] = "\tUniversitas Trunojoyo";
clrscr();
strcat(satu, dua);
printf("Hasil penggabungannya : %s\n", satu);
printf("\nkapital nya :\n");
printf("%s", strupr(satu));
printf("\n\nhuruf kecilnya :\n");
printf("%s", strlwr(satu));
getch();
}
Fungsi Operasi Karakter <ctype.h>
• islower()
Fungsi akan menghasilkan nilai benar (bukan nol) jika
karakter merupakan huruf kecil.
Bentuk umum : islower(char);
• isupper()
Fungsi akan menghasilkan nilai benar (bukan nol) jika
karakter merupakan huruf kapital.
Bentuk umum : isupper(char);
• isdigit()
Fungsi akan menghasilkan nilai (bukan nol) jika
karakter merupakan sebuah digit.
Bentuk umum : isdigit(char);
• tolower()
Fungsi akan mengubah huruf capital menjadi huruf
kecil.
Bentuk umum : tolower(char);
• toupper()
Fungsi akan mengubah huruf kecil menjadi huruf
kapital.
Bentuk umum : toupper(char);
Contoh penerapan
Fungsi Operasi Matematik (“math.h” dan
“stdlib.h”)
• sqrt()
Digunakan untuk menghitung akar dari sebuah
bilangan.
Bentuk umum : sqrt(bilangan);
• pow()
Digunakan untuk menghitung pemangkatan suatu
bilangan.
Bentuk umum : pow(bilangan, pangkat);
• sin(), cos(), tan()
Masing-masing digunakan untuk menghitung nilai
sinus, cosinus dan tangens dari suatu sudut.
Bentuk umum :
sin(sudut);
cos(sudut);
tan(sudut);
Contoh penerapan
• Div()
Digunakan untuk menghitung hasil pembagian dan
sisa pembagian.
Bentuk umum : div_t div(int x, int y)
• max()
Digunakan untuk menentukan nilai maksimal dari
dua buah bilangan.
Bentuk umum : max(bilangan1, bilangan2);
• min()
Digunakan untuk menentukan bilangan terkecil
dari dua buah bilangan.
Bentuk umum : min(bilangan1, bilangan2);
Struktur sebuah fungsi sederhana
tipe nama fungsi (parameter)
{
deklarasi variabel lokal
pernyataan - pernyataan
return (ungkapan)
}
Nama fungsi mempunyai ketentuan yang serupa
dengan nama variabel.
Dengan ketentuan:
• Parameter diletakkan diantara tanda (), di
belakang nama fungsi.
• Parameter boleh diisi dengan data atau dibiarkan
kosong.
• Bila diisi dengan data maka data tsb akan
dikirimkan ke fungsi yang bersangkutan untuk
diolah.
• Jika fungsi ybs tidak memerlukan data dari luar ,
maka parameter dibiarkan kosong.
• Pernyataan pada fungsi harus diletakkan diantara
tanda { }
Contoh:
#include<conio.h>
#include<stdio.h>
garis()
{
printf("\n----------------------\n");
}
/* program utama */
main()
{
clrscr();
garis();
printf("Belajar function c");
garis();
getch();
}
Hal yg perlu diperhatikan dalam
penggunaan fungsi :
• Kalau tipe fungsi tidak disebutkan, maka akan
dianggap sebagai fungsi dengan nilai keluaran bertipe
integer.
• Untuk fungsi yang memiliki keluaran bertipe bukan
integer, maka diperlukan pendefinisian penentu tipe
fungsi.
• Untuk fungsi yang tidak mempunyai nilai keluaran
maka dimasukkan ke dalam tipe void
• Pernyataan yang diberikan untuk memberikan nilai
akhir fungsi berupa pernyataan return.
• Suatu fungsi dapat menghasilkan nilai balik bagi fungsi
pemanggilnya.
Fungsi Bertipe void
• Merupakan sekumpulan kode program yang
bekerja sesuai dengan parameter yang diberikan.
• Tidak mempunyai nilai balik
Contoh tanpa parameter
void TampilNama()
{
printf(“Nama Saya : Amethyst Aiko\n\r”);
printf(“Alamat
: Bangkalan”);
printf(“Telepon
: 628600000\n\r”);
}
main()
{
TampilNama();
TampilNama();
}
Contoh dengan parameter
void tukar(int *px, int *py);
void main()
{
//isi dari main
}
void tukar(int *px, int *py)
{ int z; /* variabel sementara */
z = *px;
*px = *py;
*py = z;
printf("Nilai di akhir fungsi tukar()\n");
printf("*px = %i *py = %i\n\n", *px, *py);
}
Pengiriman Data Konstanta Ke Fungsi.
• Mengirimkan suatu nilai data konstanta ke suatu
fungsi yang lain.
Pengiriman data variabel ke fungsi
•
Sama seperti halnya pengiriman suatu nilai data
konstanta ke suatu fungsi, hanya saja nilai yang
dikirimkan tersebut senantiasa dapat berubahubah
#include<conio.h>
#include<stdio.h>
luas(float sisi);
main()
{
float luas_bs, sisi_bs;
clrscr();
printf("\n Menghitung Luas Bujur Sangkar");
printf("\n Masukan Nilai Sisi Bujur Sangkar : ");
scanf("%f", &sisi_bs);
luas_bs = luas(sisi_bs);
printf("\nLuas Bujur Sangkar %f
getch();
}
luas(float sisi)
{
return(sisi*sisi);
}
\n",luas_bs," Cm");
Fungsi Rekursif.
Fungsi rekursif adalah fungsi yang memanggil dirinya
sendiri
long int faktorial(int N);
void main()
{ int N;
printf("Berapa factorial ? "); scanf("%i", &N);
printf("Faktorial dari %i = %ld\n", N, faktorial(N));
getch();
}
long int faktorial(int N)
{
if(N==0)
return(1);
else
return(N * faktorial(N - 1));
}
Latihan
• Buat fungsi untuk menentukan apakah suatu
bilangan bulat bersifat ganjil atau genap. Jika
genap maka fungsi menghasilkan nilai 1, dan 0
untuk selainnya