Archives

gravatar

Menentukan Tahun Kabisat atau Bukan (Function dan Class)

Kali ini saya akan menampilkan bagaimana cara menentukan apakah Tahun yang diinput oleh user adalah Tahun Kabisat atau Bukan Tahun Kabisat. Dalam hal ini saya akan menggunakan Function Method dan Class Overloading beserta dengan Flowchartnya.







Function Method

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include <cstdlib>
#include <iostream>
 
using namespace std;
 
void proses(int tahun){
    char *hasil;   
 
    if(tahun%4==0){
          hasil = "Tahun Kabisat";
    }else hasil = "Bukan Tahun Kabisat";
 
    cout << "Tahun " << tahun << " adalah " << hasil << endl;
}
 
int main(int argc, char *argv[])
{
    int tahun;
 
    cout << "Menentukan Tahun Kabisat" << endl;
    cout << "Masukkan Tahun = ";
    cin  >> tahun;
 
    proses(tahun);
 
    system("PAUSE");
    return EXIT_SUCCESS;
}

Class Overloading

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#include <cstdlib>
#include <iostream>
 
using namespace std;
 
class Kabisat{
      friend ostream& operator<<(ostream&, Kabisat&);
      friend istream& operator>>(istream&, Kabisat&);
 
      public:
             Kabisat(){};
 
             void proses(){
                 if(tahun%4==0){
                       hasil    = "Tahun Kabisat";
                 }else hasil    = "Bukan Tahun Kabisat";
             }
 
      private:
              int tahun;
              char *hasil;
};
 
istream& operator>>(istream& in, Kabisat& masukkan){
    cout<<"Masukkan Tahun = ";
    in  >>masukkan.tahun;
 
    return in;
}
 
ostream& operator<<(ostream& out, Kabisat& keluaran){
    cout<<"Tahun "<<keluaran.tahun<<" adalah "<<keluaran.hasil;
 
    return out;
}
 
int main(int argc, char *argv[])
{
    Kabisat tahun;
    cin >> tahun;
    tahun.proses();
    cout<< tahun;
    cout<< endl;
 
    system("PAUSE");
    return EXIT_SUCCESS;
}

Read More...