Rabu, 26 Oktober 2011

OPERATOR DELETE

Apabila kita menggunakan pernyataan new untuk mengalokasikan memori, suatu saat bisa terjadi memori tersebut tidak bisa digunakan. Untuk membebaskan memori kita gunakan perintah delete. Pernyataan :

delete y;
delete []x;

akan membebaskan memori yang dialokasikan oleh *y dan array satu dimensi x.

FUNGSI TEMPLATE - STRUKTUR DATA

Misalkan kita menginginkan fungsi lain menghitung ekspresi yang sama, namun parameternya bertipe float, maka contoh programnya sebagai berikut.

[sourcecode language="cpp"]
#include <iostream.h>


float ABC (float a, float b, float c)
{return a+b+b*c+(a+b-c)/(a+b)+4;}


void main()
{cout << ABC(2, 3, 4) << endl; }
[/sourcecode]

Daripada menulis berulang - ulang kali fungsi tersebut untuk berbagai macam tipe data, lebih baik kita membuat fungsi generik yang tipe datanya ditentukan oleh kompilator. Kode generik seperti ini di tulis dengan menggunakan pernyataan template sebagaimana diperlihatkan pada program di bawah ini.

[sourcecode language="cpp"]
#include <iostream.h>


template<class T>
T ABC(Ta, Tb, Tc)
{return a+b+b*c(a+b-c)/(a+b)+4;}


void main()
{cout << ABC(2, 3, 4) << endl;}
[/sourcecode]

Dari fungsi generik ini kompilator akan mengganti int untuk T untuk mengkontruksikan program, dan mengganti float untuk T pada program.

FUNGSI REKURSIF DUA PARAMETER : PERKALIAN DUA BUAH INTEGER

Definisi interatif untuk kasus perkalian dua buah integer adalah sebagai berikut :

Definisi : (iteratif)
a x b =
1. a + a +...+ a (b kali), untuk b > 0
2. (-a) + (-a) +...+ (-a) (b kali), untuk b < 0

Dalam definisi diatas dapat dilihat bahwa perulangan selalu dipertahankan bernilai positif, terutama untuk kasus b yang negatif, yaitu dengan cara mengalihkan nilai negatif ke a. Implementasi definisi tersebut menggunakan fungsi sebagai berikut :

#include <iostream.h>
#include <math.h>


int kali_interatif(int a, int b)
{
int i, hasil = 0; //nilai awal
for (i = 1; i <= abs(b); i++)
hasil = hasil + a;
if (b < 0) return - hasil;
else return hasil;
}


void main()
{
cout << "3x(-5) = " << kali_iteratif(3, -5) << endl;
}

Fungsi absolut (abs) digunakan untuk perulangan yang selalu positif (7). Fungsi abs prototip fungsinya berada pada math.h (2). Sementara bila b bernilai negatif dari perhitungan semula untuk b positif (9). Dalam implementasi menggunakan fungsi rekursif, nilai awal pada kasus iteratif digunakan sebagai kasus basis (penyetop). Sementara dua kasus yang ada pada definisi interatif digunakan dan dimodifikasi untuk kasus rekursif. Definisi rekursif dari kasus perkalian dua integer adalah sebagai berikut:

Definisi : (rekursif)
a x b =
1. 0, untuk b = 0
2. a + (a x (b-1)), untuk b > 0
3. -a + (a x (b + 1)), untuk b < 0

Implementasi deari rekursif diatas adalah sebagai berikut :

#include <iostream.h>


int kali_rekursif(int a, int b)
{
if (b==0)
return 0;
else if (b > 0)
return a + kali_rekursif(a, b - 1);
else 
return (-a) + kali_rekursif(a, b+1);
}


void main()
{
cout << " 3 x(-5) = " << kali_rekursif(3, -5) << endl;
}

FUNGSI FIBONANCCI SEQUENCE

Fibonancci Sequence adalah 1, 1, 2, 3, 4, 5, 13, 21, 34, 55, .... .Setiap bilangan setelah bilangan kedua merupakan jumlah dari dua bilangan sebelumnya. Dengan demikian 2 dari 1 + 1, 3 dari 2 + 1, 5 dari 3 +1 demikian seterusnya yang merupakan definisi rekursif.

Implementasi dari fungsi fibonancci secara logik ekuivalen dengan translasi langsung dari defini matematik. Karena Fn = n untuk n < 2, kita dapat sederhanakan dengan satu pernyataan if.

Itulah sedikit penjelasan tentang apa rekursif itu sendiri, sekarang langsung contoh implementasi rekursif dari fungsi fibonancci tersebut.

#include <conio>
#include <iostream>


using namespace std;


long fib(int);


int main()
{
for (int n = 0; n < 5; n++)
  cout << "fib(" << n << ") = " << fib(n) << endl;
getch(); return 0;
}


long fib(int n)
{
if (n < 2) return n; //basis
return fib(n - 1)+ fib(n - 2) //rekursif
}


Output program:

Fungsi Fibonancci
fib(0) = 0
fib(1) = 1
fib(2) = 1
fib(3) = 2
fib(4) = 3

Install Pemutar Musik Audacious di Linux

Musik adalah hal yang sangat terpenting bagi kehidupan kita. Disini saya akan sharing cara Install pemutar musik audacious di linux, kenpa saya memilih audacious sebagai pemutar musik di backtrack 5 saya. Karena tampilan audacious sendiri yang sangat mirip dengan winamp yang ada di Windows.


Cara install nya sangat mudah, buka terminal lalu ketikkan

apt-get install audacious 


Dan tunggu sampai proses instalasinya selesai. Setelah selesai audacious bisa langsung temen - temen gunakan.

My Visitor

free counters
 
Candra Personal Blog powered by blogger.com
Design by Free7 Blogger Templates Simple Clean