Menghitung Jumlah Hari C++


Seiring dengan perkembangan ilmu pengetahuan dan teknologi, saat ini tidak sedikit penyedia jasa yang menawarkan layanan kursus programming. Namun bagi yang ingin belajar sendiri, telah banyak tutorial belajar pemrograman (programming) di internet, salah satunya dalam artikel ini.

Tutorial Belajar Pemrograman Menghitung Jumlah Hari C++
Berikut ini adalah source code program C++ untuk mengetahui jumlah hari dalam suatu bulan. Dengan nilai masukan variable bebas angka bulan dan angka tahun. Angka bulan merepresentasikan bulan mulai 1 untuk Januari sampai 12 untuk Desember. Angka tahun digunakan untuk mengetahui apakah tahun tersebut merupakan tahun kabisat atau bukan. Bila tahun kabisat maka jumlah hari pada Bulan Februari akan lebih banyak.
Berikut ini adalah gambar eksekusi programnya.

<img src="execute.jpg" alt="execute">

Sedangkan dibawah ini source code program menghitung jumlah hari.

#include <iostream>
using namespace std;
int year, month, day;
void input();
void errorYear();
void errorMonth();
void again();
int main()
{
    cout<<"Program menghitung hari dalam satu bulan."<<endl;
    input();
}
void input()
{
    cout<<"Masukkan angka tahun:"<<endl;
    cin>>year;
    cout<<"Masukkan angka bulan:"<<endl;
    cin>>month;
    if (year <= 0)
    errorYear();
    switch (month)
    {
        case 1:
        cout<<"Bulan Januari tahun "<<year<<" ada 31 hari."<<endl;
        break;
        case 2:
        if (year % 4 == 0)
        cout<<"Bulan Februari tahun "<<year<<" ada 29 hari."<<endl;
        else
        cout<<"Bulan Februari tahun "<<year<<" ada 28 hari."<<endl;
        break;
        case 3:
        cout<<"Bulan Maret tahun "<<year<<" ada 31 hari."<<endl;
        break;
        case 4:
        cout<<"Bulan April tahun "<<year<<" ada 30 hari."<<endl;
        break;
        case 5:
        cout<<"Bulan Mei tahun "<<year<<" ada 31 hari."<<endl;
        break;
        case 6:
        cout<<"Bulan Juni tahun "<<year<<" ada 30 hari."<<endl;
        break;
        case 7:
        cout<<"Bulan Juli tahun "<<year<<" ada 31 hari."<<endl;
        break;
        case 8:
        cout<<"Bulan Agustus tahun "<<year<<" ada 31 hari."<<endl;
        break;
        case 9:
        cout<<"Bulan September tahun "<<year<<" ada 30 hari."<<endl;
        break;
        case 10:
        cout<<"Bulan Oktober tahun "<<year<<" ada 31 hari."<<endl;
        break;
        case 11:
        cout<<"Bulan November tahun "<<year<<" ada 30 hari."<<endl;
        break;
        case 12:
        cout<<"Bulan Desember tahun "<<year<<" ada 31 hari."<<endl;
        break;
        default :
        errorMonth();
        break;
    }
    again();
}
void errorYear()
{
    cout<<"Masukkan data tahun tidak valid."<<endl;
    again();
    main();
}
void errorMonth()
{
    cout<<"Masukkan data bulan tidak valid."<<endl;
    again();
    main();
}
void again()
{
    char answer;
    cout<<endl<<"Tekan Y untuk mencoba lagi."<<endl<<"Mau mencoba lagi?"<<endl;
    cin>>answer;
    if (answer == 'Y' || answer == 'y')
    {
        main();
    }
    else
    {
        return;
    }
}