Senin, 20 Februari 2017

Program untuk menampilkan list lagu dengan menggunakan struct

Program c++ ini memiliki ketentuan sebagai berikut :
- program ini akan memiliki dua buah struct, yaitu struct lagu dan struct kodeRBT.
- Jumlah data yang diinputkan dinamis (maks. 20 lagu)

Berikut codingannnya :

#include <iostream>
#include <conio.h>
#include <stdlib.h>
using namespace std;

struct Lagu{
          string judullagu;
          string penyayi;
        };
struct KodeRBT{
          string tahunprod;
          string notrack;
          string kodealb;
        };
struct conclusion //struct ini berfungsi untuk mengakumulasikan data dalam struct diatas, jadi, satu struct ini berisi 2 struct
{
    string nolagu;
    Lagu musik;
    KodeRBT kode;
};

int main(){
     conclusion penyatu[20]; //mendeklarasikan struct conclusion tadi menjadi sebuah variabel dalam int main. Variabelnya bersifat array.
     string x;
     int g=0;;
     do
    {
        system("cls"); //atau biasa disebut dengan clearscreen, yang artinya menghapus tampilan pada layar cmd.
         cout<<"Lagu ke-"<<g+1<<endl;
        cout<<"Nomor lagu : ";cin>>penyatu[g].nolagu; //menginputkan data dalam variabel penyatu tadi. Penulisannya seperti yang dilihat, titik berfungsi untuk mengakses variabel yang dalam struct.
         cout<<"\n";
         cout<<"Judul lagu : ";cin>>penyatu[g].musik.judullagu;
        cout<<"Penyanyi : ";cin>>penyatu[g].musik.penyayi;
         cout<<"\n";
         cout<<"Tahun Produksi : ";cin>>penyatu[g].kode.tahunprod;
         cout<<"Nomor track : ";cin>>penyatu[g].kode.notrack;
        cout<<"Kode album: ";cin>>penyatu[g].kode.kodealb;
         cout<<"Terimakasih Atas Pengisiannya\n";

        cout<<"Ingin mengisi data selanjutnya (y/n)?";cin>>x; //menentukan apakah user ingin  lanjut menginput atau tidak


     if (x=="y") //jika ya
        {
           g++; //nilai g tambah 1. Ini berfungsi untuk menentukan sudah lagu keberapa dalam variabel array penyatu tadi.
           if (g>19) //jika g sudah melebihi 19
            {
                cout<<"Data telah mencapai maksimum"<<endl;
                x="n"; //data telah mencapai maksimum dan x pun dibuat bernilai "n", yang artinya fungsi do while akan terpenuhi dan akhirnya berhenti
            }
        }
    else if (x!="n") //jika x tidak bernilai n
        {
           cout<<"Hanya pilihan y atau n"; //memberitahu bahwa inputan valid hanyalah y atau n. User harus menginput ulang lagi datanya.
           getch();
        }


    }while(x!="n"); //inilah yang menentukan apakah looping akan terus berlanjut atau tidak, selain x bernilai "n". Looping akan terus terjadi
cout<<"No lagu\t\tJudul Lagu\tPenyanyi\tTahun Produksi\t\tNomor Track\t\tKode Album"<<endl;
cout<<"============================================================================================================="<<endl;
    for (int p=0;p<=g;p++) //looping untuk menampilkan data yang sudah diinput tadi
        {
            cout<<penyatu[p].nolagu;
         cout<<"\t";
         cout<<"\t";
         cout<<penyatu[p].musik.judullagu;
         cout<<"\t";
         cout<<"\t";
        cout<<penyatu[p].musik.penyayi;
         cout<<"\t";
         cout<<"\t";
         cout<<penyatu[p].kode.tahunprod;
         cout<<"\t";
         cout<<"\t";
         cout<<"\t";
         cout<<penyatu[p].kode.notrack;
         cout<<"\t";
         cout<<"\t";
         cout<<"\t";
        cout<<penyatu[p].kode.kodealb<<endl;
        }
}

Preview :
 

1 komentar:

  1. Borgata Hotel Casino & Spa - Mapyro
    Find your perfect spot on 의정부 출장샵 the Borgata 당진 출장마사지 casino boardwalk 수원 출장안마 next to 평택 출장안마 the Spa & Casino and Spa. We have the luxury of 순천 출장샵 a private beach, a sauna, and

    BalasHapus