Archive

Archive for May, 2011

Overloading Operator C++

May 25, 2011 3 comments

Salah satu keunikan C++ yang tidak ada pada bahasa pemrograman lain adalah overloading operator ( as far as i know 🙂 ) .
Overloading operator bertujuan untuk memudahkan operasi berbagai type data sesuai dengan kebutuhan kita misalkan yang melibatkan operasi yang melibatkan suatu object class. Dalam melakukan overloading operator tetap patuhi konvensi yang sudah berlaku. Misalnya jika operasi string_1 + string_2 = string_1string2 ( menggabungkan / concat ). Tapi jika operasi  seperti string_1 * string_2 = ( Ini artinya apa ya 😀 ), jangan dilakukan dan tidak disarankan walaupun itu bisa.
Berikut ini operator yang dapat dilakukan overloading.

Operator Name Type
, Comma Binary
! Logical NOT Unary
!= Inequality Binary
% Modulus Binary
%= Modulus assignment Binary
& Bitwise AND Binary
& Address-of Unary
&& Logical AND Binary
&= Bitwise AND assignment Binary
( ) Function call
( ) Cast Operator Unary
* Multiplication Binary
* Pointer dereference Unary
*= Multiplication assignment Binary
+ Addition Binary
+ Unary Plus Unary
++ Increment1 Unary
+= Addition assignment Binary
Subtraction Binary
Unary negation Unary
–– Decrement1 Unary
–= Subtraction assignment Binary
–> Member selection Binary
–>* Pointer-to-member selection Binary
/ Division Binary
/= Division assignment Binary
< Less than Binary
<< Left shift Binary
<<= Left shift assignment Binary
<= Less than or equal to Binary
= Assignment Binary
== Equality Binary
> Greater than Binary
>= Greater than or equal to Binary
>> Right shift Binary
>>= Right shift assignment Binary
[ ] Array subscript
^ Exclusive OR Binary
^= Exclusive OR assignment Binary
| Bitwise inclusive OR Binary
|= Bitwise inclusive OR assignment Binary
|| Logical OR Binary
~ One’s complement Unary
delete Delete
new New
conversion operators conversion operators Unary

Berikut ini contoh overloading operator binary +

#include<iostream>
using std::cout;

class Buah
{
private:
int apel;
int jeruk;

public:
Buah( int jumlah_apel=0, int jumlah_jeruk=0);
void displayBuah();
Buah operator + ( Buah b2);
};

int main()
{   Buah buah_1(10,5);
Buah buah_2(1,3);
Buah buah_3;
buah_3 = buah_2 + buah_1;

cout<< “object buah_3 : ” ;
buah_3.displayBuah();
return 0;
}

Buah::Buah(int jumlah_apel, int jumlah_jeruk)
{
apel = jumlah_apel;
jeruk = jumlah_jeruk;
}
Buah Buah::operator +(Buah b2)
{
Buah temp;
temp.apel = apel + b2.apel;
temp.jeruk = jeruk + b2.jeruk;
return temp;
}

void Buah::displayBuah()
{
cout<< “Jumlah Apel :” << apel;
cout <<” Jumlah Jeruk:” << jeruk;
}

Contoh overloading operator <


#include<iostream>
using std::cout;
using std::endl;

class Harga
{
private:
double harga_barang;
double diskon_barang;

public:
Harga( double harga, double diskon);
void info_harga();
int operator < ( Harga);
};

int main()
{
Harga barang_1(1000, 5);
Harga barang_2(12500, 7.5);

if( barang_1 < barang_2 )
cout<<” barang_1 lebih murah” << endl;
else
cout<< ” barang_2 lebih murah” << endl;
}

Harga::Harga(double harga, double diskon)
{
harga_barang = harga;
diskon_barang = diskon;
}
int Harga::operator < ( Harga x)
{

int harga = harga_barang – diskon_barang /100 * harga_barang;
int harga_x = x.harga_barang – x.diskon_barang / 100 * x.harga_barang;

return ( (harga< harga_x)? 1:0 ) ;
}

Terdapat beberapa operator yang tidak dapat dilakukan overloading yaitu :

  • . ( operator dot ), .* ( operator pointer ke anggota )
  • :: ( operator resolusi lingkup )
  • ?: ( operator ungkapan kondisi )
  •  sizeof ( operator untuk memperoleh ukuran data).

Walaupun suatu operator telah dilakukan overloading, ada sifat yang tidak berubah yaitu kaidah pemakain operator dan prioritas operator.

Semoga bermanfaat

Referensi : dari berbagai sumber

Advertisements

Algoritma Perfect Number dengan C++

May 25, 2011 Leave a comment

Perfect Number merupakan bilangan bulat positif atau integer yang jumlah pembaginya sama dengan bilangan tersebut ( gimana ya menjelaskannya? bingung sendiri 😀 )

Langsung aja deh contohnya perfect number.

6 = 1 + 2 + 3

28 = 1 + 2 + 4 + 7 + 14

Berikut ini program untuk memeriksa apakah suatu bilangan bulat positif tersebut merupakan perfect number yang ditulis dengan bahasa C++.

#include<iostream>
int perfect(int n);

using std::cin;
using std::cout;

int main()
{   int no;

    cout << “Input angka yang akan di-check “;

    cin >> no;
    if(perfect(no))
    {
        cout << no << ” adalah Perfect Number….\n”;
    }
    else
    {
        cout << no << ” bukan Perfect Number….\n”;
    }
    return 0;
}

int perfect( int n)
{
  int sum=0;
  for( int i=1; i<n; i++)
     {
         if(n%i==0)
         {
             sum=sum+i;
         }
     }
  if( sum==n)
    {
     return 1;
    }
  return 0;
}

Semoga bermanfaat. 😀

Referensi  : dari berbagai sumber

Algoritma Kelipatan Persekutuan Terkecil dengan C++

May 21, 2011 Leave a comment

Kelipatan Persekutuan Terkecil (KPK) dari dua bilangan adalah bilangan bulat positif terkecil yang dapat dibagi oleh kedua bilangan tersebut. Dalam bahasa Inggris KPK dikenal dengan Least Common Multiple (LCM), sering dijuga disebut sebagai Lowest Common Multiple (LCM) atau Smallest Common Multiple (SCM).
Contoh
Tentukan KPK dari 3 dan 4
Kelipatan 3 = 3, 6, 9, 12, 15, dst…
Kelipatan 4 = 4, 8, 12, 16, 20, dst…
Jadi KPK dari 3 dan 4 adalah 12.

berikut ini algoritma sederhana untuk mencari KPK dengan menggunakan bahasa pemrograman C++.

#include <iostream>
using namespace std;

int KPK(int a, int b);

int main() {
    int bilanganSatu, bilanganDua;
    cout<<“Input bilangan pertama:” ;
    cin >> bilanganSatu;
    cout<<“Input bilangan kedua:” ;
    cin >> bilanganDua;
    cout<<“KPK dari kedua bilangan tersebut adalah:”<< KPK( bilanganSatu, bilanganDua )<<“\n”;

    return 0;
}
int KPK(int a, int b)
{
    if((a>b)&& (a!=0) && (b!=0))
    {
        for(int i=a; i<a*b; i++)
        {
            if((i%a==0)&& (i%b==0))
            {
                return i;
            }
        }
    }
    else if((b>a)&& (a!=0) && (b!=0))
    {
        for(int i=b; i<a*b; i++)
        {
            if((i%a==0)&& (i%b==0))
            {
                return i;
            }
        }
    }
    else
    {
     return 0;
    }

}

Semoga bermanfaat.
Referensi : dari berbagai sumber 😀

Pocari Sweat ( Youth Sweat Beautiful )

May 21, 2011 2 comments

Mungkin iklan Pocari Sweat dengan bintang utama iklannya  Aelke Mariska menjadi salah satu iklan yang paling menarik dan disukai pemirsa televisi saat ini, terutama buat pemirsa pria 😀 . Pertama lihat iklan Pocari Sweat ini, mungkin banyak yang berpikir jika iklan ini di buat oleh Pocari Sweat Jepang dan termasuk saya yang berpikir begitu. Mungkin karena modelnya yang mirip orang asia timur ( Jepang ) dan tempat pengambilan gambar yang menyebabkan kebanyakan pemirsa televisi berpikir seperti itu. Ternyata setelah browsing ternyata iklan tersebut adalah buatan dari Pocari Sweat Indonesia dimana tempat pengambilan gambar tersebut dilakukan di Cape Town South Afrika. Pocari Sweat Youth Sweat Beautiful yang berdurasi sekitar 3o detik  menjadi iklan yang menarik menurut saya karena beberapa hal antara lain Jingle lagunya dengan penyanyinya Ryutaro Makino , konsep iklan tersebut yang bagus dan sederhana, dan tentu saja bintang iklanya yang cantik banget ( menurut saya lho, karena kata orang kecantikan dan ketampanan itu relatif ).  Yang belum lihat iklannya, silahkan lihat dulu.

Tentu saja yang paling menarik dalam iklan tersebut tentu saja bintang iklannya, terutama Aelke Mariska :D.

Siapa sih Aelke Mariska? berikut ini biodata yang saya peroleh dari salah satu forum terbesar di Indonesia.

Artist name:

Aelke Mariska

Birthdate:

17 November 1988

Height:

168 cm

Interests:

Design, Photography, World History, Crafts, Myth, Journal.

College

Trisakti University Class of 2007

Visual Communication Design Major

High School :

IPEKA Tomang Christian School Class of 2004

Relationship Status:

In a relationship

Sex:

Female

Favourite movie:

The Trojan War, The Lord of Magic, Kingdom of Heaven, Alexander, Red Cliff

Favourite band or musician:

Camui Gackt, Enigma, Era, Alice Nine, Kaggra, Naitomea.

Berikut ini beberapa photo dari Aelke Mariska:

Aelke Mariska_1

Aelke Mariska_1

Aelke Mariska_2

Aelke Mariska_2

Aelke Mariska_3

Aelke Mariska_3

Aelke Mariska_4

Aelke Mariska_4

Aelke Mariska_5

Aelke Mariska_5

She is so Beautiful. 😀

Betulkan?

Fan Facebook Page Aelke Mariska
Aelke Mariska on Twitter
Aelke Mariska on Facebook

Maafkan Saya

May 9, 2011 Leave a comment

Setelah membaca beberapa artikel yang menarik, saya akhirnya sadar ( lebih baik terlambat daripada tidak sama sekali ) betapa banyaknya perkataan dan perbuatan saya yang PASTI menyakiti hati teman2 dan semua orang yang mengenal saya.
Dengan segala kerendahan hati saya memohon maaf yang sebesar besarnya atas semua perkataan dan perbuatan yang menyakiti hati teman teman dan semua orang yang mengenal saya.

Maaf

Regards

Kukuh Utama

@Ren’s room

Categories: Ren's Notes Tags:

Shortcut Keyboard yang Perlu Untuk Diketahui

May 9, 2011 Leave a comment

Tiba tiba ingin memposting shortcut keyboard, hanya untuk saling mengingatkan saja. Kadang saya juga sering lupa, malah hanya mengetahui shortcut keyboard yang dasar dasar saja. 😀

Berikut ini shortcut yang sepertinya perlu untuk diketahui.

  • Tombol CTRL + SHIFT + Delete berfungsi untuk menghapus file secara permanen.
  • Tombol Windows + D berfungsi untuk minimize semua program yang sedang berjalan dan kembali ke dekstop komputer
  • Tombol Windows + F berfungsi untuk mencari file atau folder yang ada di komputer
  • Tombol CTRL + S berfungsi untuk save / menyimpan dokumen
  • Tombol CTRL + C berfungsi untuk copy / menyalin dokumen
  • Tombol CTRL + X berfungsi untuk cut
  • Tombol CTRL + V berfungsi untuk paste
  • Tombol CTRL + Z berfungsi untuk undo
  • Tombol CTRL + Y berfungsi untuk redo
  • Tombol Windows + L berfungsi untuk lock PC
  • Tombol Alt + Tab berfungsi untuk pindah antar program yang sedang berjalan di PC
  • Tombol CTRL + T berfungsi untuk membuka tab baru pada browser
  • Tombol CTRL + SHIFT + T berfungsi untuk membuka tab yang terakhir ditutup
  • Tombol CTRL + T berfungsi untuk membuka tab baru pada browser
  • Tombol CTRL + D berfungsi bookmarks halaman web
  • Tombol CTRL + R atau F5 berfungsi untuk mereload halaman web pada browser
  • Tombol CTRL + Enter berfungsi menambahkan “http://www” kedalam address bar di browser anda
  • Tombol CTRL + Esc berfungsi untuk menampilkan start menu Windows
  • Tombol CTRL + W berfungsi untuk exit program
  • Tombol CTRL + Scroll mouse berfungsi untuk zoom pada word dan browser
  • Tombol CTRL + N berfungsi untuk membuka window baru pada browser

Semoga bermanfaat.

Referensi: dari berbagai sumber.

Algoritma Faktor Persekutuan Terbesar dengan C++

May 7, 2011 Leave a comment

Dalam matematika, Faktor Persekutuan Terbesar (FPB) dari dua bilangan adalah bilangan positif terbesar yang dapat membagi habis kedua bilangan itu.Dalam bahasa inggris  FPB dikenal dengan Greatest Common Divisor (GCD), sering djiuga disebut sebagai Greatest Common Factor (GCF) atau Highest Common Factor (HCF).

Contoh :

Mencari FPB 16 dan 24:

Faktor 16 : 1,2,4,8,16

Faktor 24: 1,2,4,6,8,12,24

Jadi FPB dari kedua bilangan tersebut adalah 8.

Sekarang bagaimana mengimplementasikan algoritma untuk FPB tersebut kedalam bahasa pemrograman C++.

#include <iostream>
using namespace std;

int FPB(int a, int b);

int main() {
int bilanganSatu, bilanganDua;
cout<<"Input bilangan pertama:" ;
cin >> bilanganSatu;
cout<<"Input bilangan kedua:" ;
cin >> bilanganDua;
cout<<"FPB dari kedua bilangan tersebut adalah:"<< FPB( bilanganSatu, bilanganDua )<<"\n";

return 0;
}
int FPB(int a, int b)
{
if( b==0)
{
return a;
}
else
{
FPB(b, a%b);
}

}

Semoga bermanfaat. 😀

Referensi : dari berbagai sumber.