contoh Program Aplikasi Rental DVD C++

Program Aplikasi Rental DVD C++

Berikut adalah contoh program aplikasi rental DVD c++ lengkap beserta penjelasan lengkap fungsi yang digunakan

C++
#include <iostream>
#include <string>
#include <vector>

using namespace std;

// Struktur data untuk menyimpan informasi DVD
struct DVD {
    string judul;
    string genre;
    int tahun;
    bool dipinjam;
};

// Fungsi untuk menampilkan menu
void tampilkanMenu() {
    cout << "========== MENU ==========" << endl;
    cout << "1. Tampilkan Daftar DVD" << endl;
    cout << "2. Pinjam DVD" << endl;
    cout << "3. Kembalikan DVD" << endl;
    cout << "4. Keluar" << endl;
    cout << "==========================" << endl;
    cout << "Pilih menu: ";
}

// Fungsi untuk menampilkan daftar DVD
void tampilkanDaftarDVD(const vector<DVD>& daftarDVD) {
    cout << "========== DAFTAR DVD ==========" << endl;
    for (const DVD& dvd : daftarDVD) {
        cout << "Judul: " << dvd.judul << endl;
        cout << "Genre: " << dvd.genre << endl;
        cout << "Tahun: " << dvd.tahun << endl;
        cout << "Status: " << (dvd.dipinjam ? "Dipinjam" : "Tersedia") << endl;
        cout << "===============================" << endl;
    }
}

// Fungsi untuk meminjam DVD
void pinjamDVD(vector<DVD>& daftarDVD) {
    string judul;
    cout << "Masukkan judul DVD yang ingin dipinjam: ";
    cin.ignore();
    getline(cin, judul);

    for (DVD& dvd : daftarDVD) {
        if (dvd.judul == judul) {
            if (dvd.dipinjam) {
                cout << "DVD sudah dipinjam." << endl;
            } else {
                dvd.dipinjam = true;
                cout << "DVD berhasil dipinjam." << endl;
            }
            return;
        }
    }

    cout << "DVD tidak ditemukan." << endl;
}

// Fungsi untuk mengembalikan DVD
void kembalikanDVD(vector<DVD>& daftarDVD) {
    string judul;
    cout << "Masukkan judul DVD yang ingin dikembalikan: ";
    cin.ignore();
    getline(cin, judul);

    for (DVD& dvd : daftarDVD) {
        if (dvd.judul == judul) {
            if (dvd.dipinjam) {
                dvd.dipinjam = false;
                cout << "DVD berhasil dikembalikan." << endl;
            } else {
                cout << "DVD sudah tersedia." << endl;
            }
            return;
        }
    }

    cout << "DVD tidak ditemukan." << endl;
}

int main() {
    vector<DVD> daftarDVD = {
        {"Avengers: Endgame", "Action", 2019, false},
        {"Parasite", "Drama", 2019, false},
        {"Joker", "Thriller", 2019, true},
        {"The Lion King", "Animation", 2019, false},
        {"Frozen II", "Animation", 2019, true}
    };

    int pilihan;
    do {
        tampilkanMenu();
        cin >> pilihan;

        switch (pilihan) {
            case 1:
                tampilkanDaftarDVD(daftarDVD);
                break;
            case 2:
                pinjamDVD(daftarDVD);
                break;
            case 3:
                kembalikanDVD(daftarDVD);
                break;
            case 4:
                cout << "Terima kasih telah menggunakan aplikasi rental DVD." << endl;
                break;
            default:
                cout << "Pilihan tidak valid." << endl;
                break;
        }
    } while (pilihan != 4);

    return 0;
}
C++

Contoh lain

C++
#include <iostream>
#include <stdlib.h>
using namespace std;
main()
{
	int jatuhhari, jatuhbulan, jatuhtahun;
	int lamapeminjam, terlambat;
	int denda=0;
	int banyakpeminjamandvd;
	int tanggalmasuk, bulanmasuk, tahunmasuk, tanggalpengembalian, tahunpengembalian, bulanpengembalian;
	int pilihan, menupilihan, total,a;
	string nama;
	char alamat[40];
	int usia;
	int jenis[20], gaji[20], ktmv[20], atersedia[20], ftersedia[20], htersedia[20], ktms[20], rtersedia[20], ctersedia[20], jtersedia[20], harga[20], jumlah, pembayaran;
	string musik[50], film[50];

	menu:
	cout<<">>:::::::::::::::::>APLIKASI RENTAL DVD<:::::::::::::::::<<"<<endl;
	cout<<endl;
	cout<<"Rental DVD"<<endl;
	cout<<"_______________________________________________"<<endl;
	cout<<":::::::::::::::::::::::MENU::::::::::::::::::::"<<endl;
	cout<<"1. Data Peminijam"<<endl;
	cout<<"2. Peminjaman Dvd"<<endl;
	cout<<"3. Pengembalian Dvd"<<endl;
	cout<<"4. Informasi"<<endl;
	cout<<"Masukan Pilihan Anda = ";
	cin>>pilihan;
	system ("cls");
	switch (pilihan)
	{
	case 1 :
		y:
		cout<<"1. Data Peminjam"<<endl;
		cout<<":::::::::::::::::::::::::::::::"<<endl<<endl;
		cout<<endl;
		cout<<"Masukan Nama Anda = ";
		cin>>nama;
		cout<<endl;
		cout<<"Masukan Alamat Anda = ";
		cin>>alamat;
		cout<<endl;
		cout<<"Masukan Usia Anda = ";
		cin>>usia;
		cout<<endl;

		cout<<" ||      Menu Pilihan      ||"<<endl;
		cout<<" ****************************"<<endl;
		cout<<"1. Ke Menu Selanjutnya "<<endl;
		cout<<"2. Kembali Ke Menu Utama "<<endl;
		cout<<"Masukan Menu Pilihan Anda [1/2] = ";
		cin>>menupilihan;
		if (menupilihan == 1)
		{
			goto ad;
		}
		else if (menupilihan == 2)
		{
			goto menu;
		}
		else
		{
			goto z;
		}
		break;
	case 2:
		ad:
		system ("cls");
		cout<<"2. Peminjaman Dvd"<<endl;
		cout<<":::::::::::::::::::::::::::::::"<<endl<<endl;
		cout<<endl;
		cout<<"Masukkan Jumlah DVD Yang Ingin Dipinjam = ";
		cin>>banyakpeminjamandvd;
		i:
		for(int a=1; a<=banyakpeminjamandvd; a++)
		{

			cout<<"jenis DVD"<<endl;
			cout<<"1. Movie Dengan Harga Rp. 15.000 / 5 Hari"<<endl;
			cout<<"2. Musik Dengan Harga Rp. 10.000 / 5 Hari"<<endl;
			cout<<endl;

			cout<<"Pilih Jenis DVD [1/2] = ";
			cin>>jenis[a];
			system ("cls");
			switch (jenis [a])
			{
				d:
			case 1:

				cout<<"       Kode Untuk Kategori Movie      "<<endl;
				cout<<"______________________________________"<<endl;
				cout<<"11. Action"<<endl;
				cout<<"12. Fantasi"<<endl;
				cout<<"13. Horor"<<endl;
				cout<<endl;

				cout<<"Pilih Kategori Movie [11/12/13] = ";
				cin>>ktmv[a];
				system ("cls");
				switch (ktmv [a])
				{
					a:
				case 11:
					cout<<"      Daftar DVD Yang Tersedia      "<<endl;
					cout<<"___________________________________"<<endl;
					cout<<"Kode DVD Untuk Kategori Action Yang Tersedia"<<endl;
					cout<<"111. Fant4stic"<<endl;
					cout<<"112. The Hobbit"<<endl;
					cout<<"113. Jurassic World"<<endl;
					cout<<endl;

					cout<<"Pilih Kode Action Movie [111/112/113] = ";
					cin>>atersedia[a];
					system ("cls");
					switch (atersedia[a])
					{
					case 111:
						film[a] = "fant4stic";
						harga[a] = 15000;
						break;
					case 112:
						film[a] = "the hobbit";
						harga[a] = 15000;
						break;
					case 113:
						film[a] = "jurassic world";
						harga[a] = 15000;
						break;
					default:
						goto a;
						break;
					}
					break;
					b:
				case 12:
					cout<<"           Daftar DVD Yang Tersedia          "<<endl;
					cout<<"_____________________________________________"<<endl;
					cout<<"Kode DVD Untuk Kategori Fantasi Yang Tersedia"<<endl;
					cout<<"121. Final Fantasy"<<endl;
					cout<<"122. The Lord Of The Rings"<<endl;
					cout<<"123. Star Wars"<<endl;
					cout<<endl;

					cout<<"Pilih Kode Fantasi Movie [121/122/123] = ";
					cin>>ftersedia[a];
					system ("cls");
					switch (ftersedia[a])
					{
					case 121:
						film[a] = "final fantasy";
						harga[a] = 15000;
						break;
					case 122:
						film[a] = "the lord of the rings";
						harga[a] = 15000;
						break;
					case 123:
						film[a] = "star wars";
						harga[a] = 15000;
						break;
					default:
						goto b;
						break;
					}
					break;
					c:
				case 13:
					cout<<"           Daftar DVD Yang Tersedia        "<<endl;
					cout<<"___________________________________________"<<endl;
					cout<<"Kode DVD Untuk Kategori Horor Yang Tersedia"<<endl;
					cout<<"131. The Conjuring"<<endl;
					cout<<"132. Annabele"<<endl;
					cout<<"133. Kuntilanak 3"<<endl;
					cout<<endl;

					cout<<"Pilih Kode Horor Movie [11/22/33] = ";
					cin>>htersedia[a];
					system ("cls");
					switch (htersedia[a])
					{
					case 131:
						film[a] = "conjuring";
						harga[a] = 15000;
						break;
					case 132:
						film[a] = "annabele";
						harga[a] = 15000;
						break;
					case 133:
						film[a] = "kuntilanak 3";
						harga[a] = 15000;
						break;
					default:
						goto c;
						break;
					}
					break;
				default:
					goto d;
					break;
				}


				break;
				e:
			case 2:
				cout<<"   Kode Uuntuk Kategori Musik   "<<endl;
				cout<<"________________________________"<<endl;
				cout<<"21. Rock"<<endl;
				cout<<"22. Classic"<<endl;
				cout<<"23. Jazz"<<endl;
				cout<<endl;

				cout<<"Pilih Kategori Movie [11/12/13] = ";
				cin>>ktms[a];
				system ("cls");
				switch (ktms [a])
				{
					f:
				case 21:
					cout<<"             Daftar DVD Yang Tersedia           "<<endl;
					cout<<"________________________________________________"<<endl;
					cout<<"Kode DVD Untuk Kategori Musik Rock Yang Tersedia"<<endl;
					cout<<"211. Avenged Sevenfold"<<endl;
					cout<<"221. Secondhand Serenade"<<endl;
					cout<<"231. Bring me the horizon"<<endl;
					cout<<endl;

					cout<<"Pilih Kode Musik Rock Anda [111/112/113] = ";
					cin>>rtersedia[a];
					system ("cls");
					switch (rtersedia[a])
					{
					case 211:
						musik[a] = "avenged sevenfold";
						harga[a] = 10000;
						break;
					case 221:
						musik[a] = "secondhand serenade";
						harga[a] = 10000;
						break;
					case 231:
						musik[a] = "bring me the horizon";
						harga[a] = 10000;
						break;
					default:
						goto f;
						break;
					}
					break;
					g:
				case 22:
					cout<<"               Daftar DVD Yang Tersedia            "<<endl;
					cout<<"___________________________________________________"<<endl;
					cout<<"Kode DVD Untuk Kategori Musik Classic Yang Tersedia"<<endl;
					cout<<"221. Crisye"<<endl;
					cout<<"222. Ismail Marzuki"<<endl;
					cout<<"223. Gesang Marthohartono"<<endl;
					cout<<endl;

					cout<<"Pilih Kode Musik Classic Anda [221/222/223] = ";
					cin>>ctersedia[a];
					system ("cls");
					switch (ctersedia[a])
					{
					case 221:
						musik[a] = "crisye";
						harga[a] = 10000;
						break;
					case 222:
						musik[a] = "Ismail Marzuki";
						harga[a] = 10000;
						break;
					case 223:
						musik[a] = "gesang marthohartono";
						harga[a] = 10000;
						break;
					default:
						goto g;
						break;
					}
					break;
					h:
				case 23:
					cout<<"             Daftar DVD Yang Tersedia            "<<endl;
					cout<<"_________________________________________________"<<endl;
					cout<<"Kode DVD Untuk Kategori Musik Jazz Yang Tersedia"<<endl;
					cout<<"231. Louis Armstrong"<<endl;
					cout<<"232. John Coltrane"<<endl;
					cout<<"233. Duke Elington"<<endl;
					cout<<endl;

					cout<<"Pilih Kode Musik Jazz Anda [231/232/233] = ";
					cin>>jtersedia[a];
					system ("cls");
					switch (jtersedia[a])
					{
					case 231:
						musik[a] = "louis armstrong";
						harga[a] = 10000;
						break;
					case 232:
						musik[a] = "john coltrane";
						harga[a] = 10000;
						break;
					case 233:
						musik[a] = "Duke Elington";
						harga[a] = 10000;
						break;
					default:
						goto h;
						break;
					}
					break;
				default:
					goto e;
					break;
				}



				break;
			default:
				goto i;

				break;
			}
			pembayaran=(jenis[a]*harga[a]);
		}
		cout<<" ||      Menu Pilihan      ||"<<endl;
		cout<<" ****************************"<<endl;
		cout<<"1. Ke Menu Selanjutnya "<<endl;
		cout<<"2. Kembali Ke Menu Utama "<<endl;
		cout<<"Masukan Menu Pilihan Anda [1/2] = ";
		cin>>menupilihan;
		if (menupilihan == 1)
		{
			goto pengembalian;
		}
		else if (menupilihan == 2)
		{
			goto menu;
		}
		else
		{
			goto z;
		}
		break;
	case 3:
		pengembalian:
		cout<<"3. Pengembalian Dvd"<<endl;
		cout<<":::::::::::::::::::::::::::::::"<<endl<<endl;
		cout<<endl;
		cout<<endl;
		cout<<"::::::::::::::::::::::::::|INFORMASI|:::::::::::::::::::::::"<<endl;
		cout<<"||Maksimal Peminjaman 5 Hari Terhitung Dari Tanggal Peminajam||"<<endl;
		cout<<"*************************************************************"<<endl;
		cout<<endl;
		cout<<"Tanggal Peminjaman Dvd "<<endl;
		cout<<"________________________________"<<endl;
		cout<<endl;
		cout<<"Masukan Tanggal Peminjaman Dvd [1-30] = ";
		cin>>tanggalmasuk;
		cout<<endl;

		cout<<"Masukan Bulan Peminjam Dvd [1-12]= ";
		cin>>bulanmasuk;
		cout<<endl;

		cout<<"Masukan Tahun Peminjaman Dvd [xxxx] = ";
		cin>>tahunmasuk;
		cout<<endl;
		cout<<endl;

		cout<<"Tanggal Pengembalian Dvd "<<endl;
		cout<<"___________________________"<<endl;
		cout<<endl;
		cout<<"Masukan Tanggal Pengembalian Dvd [1-30] = ";
		cin>>tanggalpengembalian;
		cout<<endl;

		cout<<"Masukan Bulan Pengembalian Dvd [1-12] = ";
		cin>>bulanpengembalian;
		cout<<endl;

		cout<<"Masukan Tahun Pengembalian [xxxx] = ";
		cin>>tahunpengembalian;


		lamapeminjam = (tanggalpengembalian-tanggalmasuk) + ((bulanpengembalian-bulanmasuk)*30) + ((tahunpengembalian-tahunmasuk)*360);
		terlambat =lamapeminjam - 5;

		if (lamapeminjam >5)
		{
			denda = terlambat * banyakpeminjamandvd * 5000;
		}
		else
		{
			denda=denda;
		}
		total=denda+pembayaran;
		cout<<endl;
		jatuhhari = tanggalmasuk + 5;
		jatuhtahun = tahunmasuk  + (jatuhhari/31);
		jatuhbulan = tahunmasuk + (jatuhtahun/360);
		system ("cls");
		cout<<endl;
		z:
		cout<<" ||      Menu Pilihan      ||"<<endl;
		cout<<" ****************************"<<endl;
		cout<<"1. Ke Menu Selanjutnya "<<endl;
		cout<<"2. Kembali Ke Menu Utama "<<endl;
		cout<<"Masukan Menu Pilihan Anda [1/2] = ";
		cin>>menupilihan;
		if (menupilihan == 1)
		{
			goto informasi;
		}
		else if (menupilihan == 2)
		{
			goto menu;
		}
		else
		{
			goto z;
		}
		break;
	case 4:
		informasi:
		system ("cls");
		cout<<"4. Informasi"<<endl;
		cout<<":::::::::::::::::::::::::::::::"<<endl<<endl;
		cout<<endl;
		cout<<"NO"<<"\t"<<"HARGA"<<"\t"<<"Jumlah Dvd"<<"\t"<<"PEMBAYARAN"<<endl;
		for(int a=1; a<=jenis[a]; a++)
		{
			cout<<a<<"\t"<<harga[a]<<"\t"<<"\t"<<jenis[a]<<"\t"<<harga[a];
			cout<<endl;
		}
		cout<<"==============================================================================="<<endl;
		cout<<" Nama Peminjam           : "<<nama<<endl;
		cout<<" Alamat Peminjam         : "<<alamat<<endl;
		cout<<" Umur Peminjam           : "<<usia<<endl;
		cout<<" Tanggal Peminjaman      : "<<tanggalmasuk<<"-"<<bulanmasuk<<"-"<<tahunmasuk<<endl;
		cout<<" Tanggal Pengembalian    : "<<tanggalpengembalian<<"-"<<bulanpengembalian<<"-"<<tahunpengembalian<<endl;
		cout<<" Tanggal Jatuh Tempo     : "<<jatuhhari<<"-"<<jatuhbulan<<"-"<<jatuhtahun<<endl;
		cout<<" Lama Peminjaman         : "<<lamapeminjam<<" Hari "<<endl;
		cout<<" Lama Keterlambatan      : "<<terlambat<<" Hari "<<endl;
		cout<<" Denda                   : Rp. "<<denda<<endl;
		cout<<" Total Pembayaran        : Rp. "<<total<<endl;
		cout<<endl;
		break;

	}
}
C++

Semoga contoh program di atas dapat membantu Anda dalam membuat aplikasi rental DVD menggunakan bahasa pemrograman C++. Jika Anda memiliki pertanyaan lebih lanjut, jangan ragu untuk bertanya. Terima kasih!