Skip to content Skip to sidebar Skip to footer

C++ - Program Multi Login Sederhana Berdasarkan Level Pengguna

C++ - Program Multi Login Sederhana Berdasarkan Level Pengguna


Assalamu'alaikum wr.wb.
Pada kesempatan ini, saya akan memberikan tutorial tentang cara membuat program multilogin dengan bahasa pemrograman C++. Cara ini terbilang sederhana karena program yang saya gunakan adalah program dasar dari bahasa c++ untuk membuat multilogin atau login ganda ini. Jadi software yang dibutuhkan cukup dev++, Borland, atau compiller mingw saja.

Pernahkah anda mendapati ketika ada satu form untuk login, lalu form tersebut bisa digunakan oleh semua user disana. Namun ketika anda login dan orang lain login, ternyata memiliki menu yang berbeda. Disini bisa kita ibaratkan sebuah web sekolah yang memiliki satu buah form untuk login. Adapun dosen ataupun mahasiswa keduanya melakukan login melalui form tersebut. Ternyata hanya dengan satu buah form itu, tampilan dari dosen dan mahasiswa berbeda. Hal ini dikarenakan adanya hak akses berdasarkan level dari user tersebut. Dan tekhnik yang digunakan untuk kasus tersebut adalah teknik multilogin.

Dengan program multi login ini, kita dapat memisahkan antara dosen dan mahasiswa dengan level yang tersedia sehingga kita tidak perlu repot - repot membuat dua buah form dimana yang satu adalah untuk mahasiswa, dan satunya untuk dosen. Tentu hal tersebut hanya membuang - buang waktu dan tenaga sekaligus memperburuk tampilan.

Selain itu, saya juga akan memberikan tentang cara membuat password menjadi bintang c++ yang mana dengan cara itu kita bisa membuat tampilan ketika kita mengetikkan password menjadi gambar bintang (*) dengan bahasa pemrograman C++.



Baca Juga

Perlu diketahui bahwa cara ini adalah cara yang saya terapkan pada Program Potong Rambut Sederhana Menggunakan Bahasa Pemrograman C++ yang saya buat sendiri. Perbedaannya hanya saya membuat artikel ini hanya untuk login saja.

Oke. berikut ini adlaah cara membuat program username dan password c++ untuk multilogin :


Header yang digunakan
#include <iostream>
#include <string>
#include <conio.h>

using namespace std;

Disini kita gunakan header iostream, string dan conio. iostream sendiri adalah header yang memang wajib dipanggil untuk program C++ pemula. Sedangkan string dipanggil karena iostream tidak mendukung tipe data string. Padahal array yang kita gunakan adalah tipe data string. Sementara conio kita butuhkan untuk membuat input password menjadi bintang.


Membuat fungsi main
int main(){
 //Program Login disini
 
 return 0;
}

Lalu kita buat fungsi main. Fungsi ini adalah fungsi utama dimana ketika program di compile dan run, maka fungsi pertama yang dijalankan adalah fungsi main. Biasanya programmer membuat fungsi - fungsi lain namun untuk memanggilnya, kita harus memanggil di fungsi main.

return 0 diatas adalah karena fungsi main ber tipe data integer. Sebenernya untuk borland dan mingw hal itu tidak diperlukan, namun jika dev itu wajib untuk diketik.

Untuk program yang selanjutnya pun kita tambahkan di fungsi main diatas return 0 tersebut.


Variabel yang dibutuhkan
string data_login[2][3]={{"Satu","8687","Admin"},{"Dua","8888","Operator"}};
string username, pass, level;
char ch;

Program diatas adalah variabel - variabel yang dibutuhkan untuk membuat multi login ini. Kita bisa lihat pada array data_login terdapat tiga kolom, yang mana kolom pertama merupakan username, kolom kedua merupakan password, sedangkan kolom ketiga merupakan level. Pada level inilah hak akses user ditentukan. Array diatas adalah array 2 dimensi. Jika anda belum memahami tentang array 2 dimensi, silahkan kunjungi artikel saya tentang contoh program dan penjelasan array 2 dimensi C++.

Untuk variabel username, pass, dan level digunakan untuk memindahkan data terpilih dari array data_login yang mana akan disimpan pada variabel - variabel tersebut dan nantinya akan di outputkan.


Membuat tampilan output dan input username
login:
cout<<"TUTOR-ALL PROGRAMMING"<<endl;
cout<<"MULTILOGIN ARRAY 2 DIMENSI"<<endl;
 
//Tampilan untuk menginput data
cout<<"\nUsername : "; cin>>username;

Pada bagian ini, kita hanya membuat output agar terlihat indah saja. Kecuali pada program terbawah yang mana program tersebut meminta kita untuk input username.


Script untuk membuat tampilan input password menjadi bintang (*)
cout<<"\nPassword : "; ch=_getch();
while(ch !=13){
 pass.push_back(ch);
 cout<<'*';
 ch = _getch();
}

Program diatas merupakan script untuk mengubah output ketika kita input password menjadi gambar bintang. Pada program diatas, kita gunakan perulangan while yang mana ketika kita ketik satu huruf maka akan langsung diubah oleh program menjadi gambar bintang dengan perulangan. Silahkan kunjungi artikel saya yang berjudul perulangan C++ menggunakan for dan while.

Pada baris pertama ch=_getch(). Artinya kita menginputkan ketikkan kita ke variabel ch. Jika kita menggunakan cin, maka nilai akan terinput setelah kita menekan tombol enter. Namun disini kita tidak perlu untuk menekan tombol enter karena nilai sudah diinput ketika kita mengetikkan password.

Lalu pada baris selanjutnya, kita melihat angka 13 di dalam while. angka tersebut artinya adalah enter. Bisa dibilang angka 13 adalah kode untuk tombol enter. Ketika kita menginputkan sebuah karakter, maka karakter tersebut akan tersimpan di variabel ch. Lalu pada perulangan while dicek apakah yang kita ketik adalah enter atau bukan, jika enter maka perulangan tidak dilakukan, jika bukan, maka perulangan berlaku.

Kita lihat baris selanjutnya, pass.push.back(ch). Script tersebut berfungsi untuk memindahkan karakter untuk diinputkan ke variabel pass. Hal ini disebabkan karena variabel ch merupakan variabel char yang mana hanya bisa menginput satu huruf saja. Sementara pass adalah string sehingga nilai yang tadinya disimpan didalam char akan tersimpan ke pass dan dikumpulkan hingga kita menekan enter.

Lalu kita lihat baris selanjutnya. cout<<"*". Inilah yang dimaksud menampilkan bintang. artinya ketika kita ketik selain enter, maka output yang muncul adalah bintang bukan ch itu sendiri.

Begitulah proses dalam mengubah output menjadi bintang ketika kita mengettikan sesuatu.Perulangan tersebut berjalan sekali ketika kita input data dan akan berakhir ketika kita menekan tombol enter.


Cek login apakah username dan password sama dengan data yang tersimpan
for(int i =0; i<=1; i++){
 //Cek inputan dengan data yang disimpan
 if(data_login[i][0]==username && data_login[i][1]==pass){
  //Menyimpan data dari array ke variabel level
  level=data_login[i][2];
  break;
 }
}

Pada script diatas adalah script untuk mengecek apakah username dan password yang kita inputkan sama dengan data yang disimpan atau tidak. Kita mengeceknya dengan perulangan. Dimana perulangan tersebut berfungsi untuk mengurutkan index sesuai dengan jumlah array yang disimpan. Perulangan tersebut akan terus berjalan hingga semua data di array sudah dijelajahi atau ketika username dan password yang dimaksud telah ditemukan.

Didalam perulangan tersebut, terdapat percabangan if-else dimana percabangan inilah yang berfungsi untuk mengecek apakah username dan password yang diinputkan sama dengan data yang tersimpan. Cara membacanya adalah jika data_login kolom pertama sama dengan variabel username dan data login kolom kedua sama dengan variabel pass, maka variabel level akan diisi oleh data_login kolom ketiga. Silahkan kunjungi artikel saya tentang percabangan C++.


Cek level untuk username dan password yang sudah diinputkan
if(level=="Admin")
 cout<<"Anda login sebagai Admin";
else if(level=="Operator")
 cout<<"Anda login sebagi Operator";
else
 cout<<"Level tidak ditemukan";

Setelah kita memberikan nilai pada variabel level, sekarang adalah memberikan ketentuan dari level tersebut. Dengan percabangan diatas, kita memberikan output sesuai dengan level yang kita untuk login.


Tampilan program keseluruhan
#include <iostream>
#include <string>
#include <conio.h>

using namespace std;

int main(){
 //deklarasi variabel yang dibutuhkan
 string data_login[2][3]={{"Satu","8687","Admin"},{"Dua","8888","Operator"}};
 string username, pass, level;
 char ch;
 
 //Membuat tampilan output login
 login:
 cout<<"TUTOR-ALL PROGRAMMING"<<endl;
 cout<<"MULTILOGIN ARRAY 2 DIMENSI"<<endl;
 
 //Tampilan untuk menginput data
 cout<<"\nUsername : "; cin>>username;
 cout<<"\nPassword : "; ch=_getch();
 while(ch !=13){
  pass.push_back(ch);
  cout<<'*';
  ch = _getch();
 }
 
 //Perulangan untuk mengecek apakah data yang diinput sudah sesuai dengan data yang tersimpan
 for(int i =0; i<=1; i++){
  //Cek inputan dengan data yang disimpan
  if(data_login[i][0]==username && data_login[i][1]==pass){
   //Menyimpan data dari array ke variabel level
   level=data_login[i][2];
   break;
  }
 }
 cout<<"\n\n";
 
 //Percabangan untuk menentukan output berdasarkan level
 if(level=="Admin")
  cout<<"Anda login sebagai Admin";
 else if(level=="Operator")
  cout<<"Anda login sebagi Operator";
 else
  cout<<"Level tidak ditemukan";
 
 return 0;
}

Begitulah tampilan keseluruhan dari program yang dibahas tadi. Setelah semuanya dibahas, saya rasa anda jadi lebih mengerti tentang program yang saya buat ini. Dengan memecahkan beberapa penggalan - penggalan program sesuai dengan fungsinya masing - masing, kita dapat memahami bagian per bagian hingga akhirnya kita dapat memahami program tersebut dengan baik.

lalu run dan lihat hasilnya :

C++ - Program Multi Login Sederhana Berdasarkan Level Pengguna


Gambar diatas menunjukkan bahwa saya menginputkan data dengan username "Satu" dan password "8687". Kemudian kita enter maka akan menghasilkan output tersebut. Cobalah untuk login dengan username dan password yang berbeda, maka output yang akan keluar pun sesuai dengan apa yang kita inputkan.


Penutup

Demikianlah tutorial mengenai multi login menggunakan bahasa pemrogaman C++ ini, semoga artikel ini membantu pembaca untuk membuat program multi login dengan sederhana dan menyelesaikan masalah yang sedang dihadapi. Apabila ada kekurangan, saya mohon maaf. Terimakasih Telah berkunjung silahkan tinggalkan jejak di kolom komentar. Assalamu'alaikum wr.wb


10 comments for "C++ - Program Multi Login Sederhana Berdasarkan Level Pengguna"

  1. min misalnya kita mau nmbahin akun lagi itu gimana min

    ReplyDelete
  2. Maaf mun, untuk membuat infut passwold menjadi bintang itu ada masalah.
    Aku mencoba itu saat menjalankan programnya saat menekan enter, malah muncul bintang juga.
    Terima kasih min

    ReplyDelete

  3. https://programkasirbahasacplusplus.blogspot.com/

    ReplyDelete
  4. #include
    #include
    #include
    #include
    #include
    #include
    #include
    #include

    using namespace std;

    void pilihan();
    void cekdata();
    void masukandata();
    void tampilkandata();
    void ubahdata();
    void hapusdata();
    void admin();
    void superAdmin();

    string pilihAdmin, pilihSuper;

    int main()
    {
    int no, totalharga, harga, beli, total, kembalian, bayar, a, b, harga1[50], harga2[50], jml[50];
    string nama[50];
    string pilih, produk;
    string ngulang;

    pertama:
    system("cls");
    cout << endl;
    cout << "################################################################" << endl;
    cout << "#--------------------------------------------------------------#" << endl;
    cout << "# Warung Vestarya #" << endl;
    cout << "#--------------------------------------------------------------#" << endl;
    cout << "################################################################" << endl;
    cout << endl;
    cout << "Pilihan" << endl;
    cout << "[1] SuperAdmin " << endl;
    cout << "[2] Admin " << endl;
    cout << "[3] Customer " << endl;
    cout << "[4] Keluar" << endl;
    cout << endl << endl;
    cout << "Masukkan Pilihan : ";
    cin >> pilih;

    if (pilih == "1")
    {
    string passSuper;
    char ch, go;
    system("cls");
    cout << "-------------------------" << endl;
    cout << "Anda Login sebagai SuperAdmin" << endl;
    cout << "-------------------------" << endl << endl;
    cout << "Masukan Password = ";
    cin >> passSuper;

    cout << endl;
    if (passSuper == "12345678") // password 1
    {
    cout << "\nPassword Anda Benar\n";
    cout << "Tekan Enter Untuk Melanjutkan";
    cin.ignore();
    cin.get();
    superAdmin(); // program admin
    }
    else if (passSuper == "20202028") // password 2
    {
    cout << "\nPassword Anda Benar\n";
    cout << "Tekan Enter Untuk Melanjutkan";
    cin.ignore();
    cin.get();
    superAdmin();
    }
    else if (passSuper == "20202020") // password 3
    {
    cout << "\nPassword Anda Benar\n";
    cout << "Tekan Enter Untuk Melanjutkan";
    cin.ignore();
    cin.get();
    superAdmin();
    }
    else
    {
    cout << "\nPassword Anda Salah\n";
    cout << "Tekan Enter Untuk Melanjutkan";
    go = _getch();
    system("cls");
    goto pertama;
    }

    ReplyDelete
  5. goto pertama;
    }

    if (pilih == "2")
    {
    string pass;
    char ch, go;
    system("cls");
    cout << "-------------------------" << endl;
    cout << "Anda Login sebagai Admin" << endl;
    cout << "-------------------------" << endl << endl;
    cout << "Masukan Password = ";
    cin >> pass;

    cout << endl;
    if (pass == "12345678") // password 1
    {
    cout << "\nPassword Anda Benar\n";
    cout << "Tekan Enter Untuk Melanjutkan";
    cin.ignore();
    cin.get();
    admin(); // program admin
    }
    else if (pass == "20202028") // password 2
    {
    cout << "\nPassword Anda Benar\n";
    cout << "Tekan Enter Untuk Melanjutkan";
    cin.ignore();
    cin.get();
    admin(); // program admin
    }
    else if (pass == "20202020") // password 3
    {
    cout << "\nPassword Anda Benar\n";
    cout << "Tekan Enter Untuk Melanjutkan";
    cin.ignore();
    cin.get();
    admin(); // program admin
    }
    else
    {
    cout << "\nPassword Anda Salah\n";
    cout << "Tekan Enter Untuk Melanjutkan";
    go = _getch();
    system("cls");
    goto pertama;
    }

    goto pertama;
    }

    // pilihan 2. Pembayaran
    else if (pilih == "3")
    {
    totalharga = 0;
    b = 0;
    ulang:
    system("cls");
    cout << "-----------------------" << endl;
    cout << "Menu Pemesanan" << endl;
    tampilkandata();
    cout << "-----------------------" << endl << endl;
    cout << "Masukkan Nama Produk : ";
    cin >> produk;
    nama[b] = produk;
    fstream data;
    string isi;
    data.open("data.txt", ios::in);

    do // pengulangan barang yang dibeli
    {
    getline(data, isi);
    getline(data, isi);
    } while (isi != produk);
    getline(data, isi);
    cout << " " << endl;
    cout << "Harga Produk : " << isi << endl;
    data.close();
    harga = atoi(isi.c_str());
    harga1[b] = harga;
    cout << endl;
    cout << "Jumlah : ";
    cin >> beli;
    jml[b] = beli;
    cout << endl;
    total = harga * beli;
    harga2[b] = total;
    b++;
    totalharga += total;

    ReplyDelete
  6. awal2:
    cout << " " << endl; // pilihan tambah produk atau tidak
    cout << "Tambah Produk ? (y/n): ";
    cin >> ngulang;

    if (ngulang == "y" || ngulang == "Y")
    {
    goto ulang;
    }
    else if (ngulang == "n" || ngulang == "N")
    {
    cout << endl;
    cout << "------------------------" << endl;
    cout << " Barang Yang Dibeli " << endl;
    cout << "------------------------" << endl;
    for (a = 0; a < b; a++)
    {
    cout << nama[a] << "\t" << jml[a] << "\t" << harga1[a] << "\t" << harga2[a] << endl;
    }
    cout << " " << endl;
    cout << "Total Harga : Rp. " << totalharga << endl;
    cout << endl;
    cout << "Bayar : Rp. ";
    cin >> bayar;
    cout << endl;
    kembalian = bayar - totalharga;
    // menampilkan waktu dan tanggal pada nota

    //time_t t;
    //time(&t);
    //char *tanggal = ctime(&t);
    system("cls");

    // Output Nota
    cout << "--------------------------------------------------------------" << endl;
    cout << " " << endl;
    cout << " RASING MART " << endl;
    cout << " JL. In AJA Dulu no. 1 YaKamuLah " << endl;
    cout << " " << endl;
    cout << "--------------------------------------------------------------" << endl;
    //cout << " " << tanggal << " " << endl;
    cout << "--------------------------------------------------------------" << endl;
    cout << "Nama" << "\t" << "Jumlah Harga" << "\t" << "Total" << endl;

    for (a = 0; a < b; a++)
    {
    cout << nama[a] << "\t" << jml[a] << "\t" << harga1[a] << "\t" << harga2[a] << endl;
    }

    cout << endl;
    cout << "-----------------------------------------------------------------" << endl;
    cout << " " << "\t" << "\t" << "Total : Rp. " << "\t" << "\t" << totalharga << endl;
    cout << " " << "\t" << "\t" << "Bayar : Rp. " << "\t" << "\t" << bayar << endl;
    cout << " " << "\t" << "\t" << "Kembali : Rp. " << "\t" << kembalian << endl;
    cout << "-----------------------------------------------------------------" << endl << endl;
    cout << " Terima Kasih Telah Membeli Di Toko Kami " << endl;
    cout << "-----------------------------------------------------------------" << endl << endl;
    cout << endl;

    fstream data3; // menampilkan .txt struk pembelian
    data3.open("struk.txt", ios::trunc | ios::out);
    data3 << endl << endl;
    data3 << "===================================================" << endl;
    cout << "# Warung Vestarya #" << endl;
    data3 << "===================================================" << endl;
    //data3 << " " << tanggal << endl;
    data3 << "Nama Jumlah Harga Total " << endl;

    for (a = 0; a < b; a++)
    {
    data3 << nama[a] << "\t" << "\t" << jml[a] << "\t" << harga1[a] << "\t" << "\t" << harga2[a] << endl;
    }
    data3 << "----------------------------------------------" << endl;
    data3 << endl;
    data3 << "\t" << "\t" << "\t" << "Total Rp. " << "\t" << totalharga << endl;
    data3 << "\t" << "\t" << "\t" << "Tunai Rp. " << "\t" << bayar << endl;
    data3 << "\t" << "\t" << "\t" << "Kembali Rp. " << "\t" << kembalian << endl;
    data3 << endl;
    data3 << "----------------------------------------------" << endl << endl;
    data3 << " Terima Kasih Telah Membeli Di Toko Kami " << endl;
    data3 << "----------------------------------------------" << endl << endl;
    data3.close();
    a = _getch();
    system("cls");
    goto pertama;
    }
    else
    {
    cout << "Input Invalid" << endl;
    goto awal2;
    }
    }
    else if (pilih == "3")
    {
    goto akhir;
    }
    else
    {
    system("cls");
    goto pertama;
    }

    ReplyDelete
  7. akhir:
    cout << "Terima Kasih" << endl;
    return 0;
    }

    void pilihan()
    {
    string memilih;
    system("cls");
    cout << "--------------------------" << endl;
    cout << "Anda Login Sebagai Admin" << endl;
    cout << "--------------------------" << endl;
    cout << endl;
    cout << "Menu : " << endl;
    cout << "[1] Tambah Produk" << endl;
    cout << "[2] List Produk" << endl;
    cout << "[3] Ubah Produk" << endl;
    cout << "[4] Hapus Produk" << endl;
    cout << "[5] Keluar" << endl;
    cout << " " << endl;
    cout << "Masukan Pilihan : ";
    cin >> pilihAdmin; //string
    /*stringstream milih(memilih); //convert str ke int
    milih >> pilih; //masukin hasil convert ke int
    return pilih;*/
    }

    void pilihanSuper()
    {
    string memilihSuper;
    system("cls");
    cout << "--------------------------" << endl;
    cout << "Anda Login Sebagai SuperAdmin" << endl;
    cout << "--------------------------" << endl;
    cout << endl;
    cout << "Menu : " << endl;
    cout << "[1] Cek Hasil Penjualan" << endl;
    cout << "[2] Keluar" << endl;
    cout << " " << endl;
    cout << "Masukan Pilihan : ";
    cin >> pilihSuper; //string
    /*stringstream milih(memilihSuper); //convert str ke int
    milih >> pilih; //masukin hasil convert ke int
    return pilih;*/
    }

    void masukandata() // input nama produk dan harga
    {
    fstream data;
    char lanjut;
    string isi;
    do
    {
    data.open("data.txt", ios::out | ios::app); // mengubah data inputan menjadi .txt
    cout << endl;
    getline(cin, isi);
    cout << "Nama Produk:";
    getline(cin, isi);
    data << '\n' + isi;
    cout << "Harga Produk:";
    getline(cin, isi);
    data << '\n' + isi;
    data.close();

    u:
    cout << "Apakah Ingin Menambahkan (y,n) ";
    cin >> lanjut;
    } while (lanjut == 'y');

    if (lanjut != 'y' && lanjut != 'n')
    {
    cout << "Masukan Pilihan Yang Tepat";
    cout << endl;
    goto u;
    }
    }

    void tampilkandata() // menampilkan data .txt yang sudah diinputkan
    {
    fstream data;
    string isi;
    int no;
    data.open("data.txt", ios::in);
    getline(data, isi);
    no = 1;
    cout << "No " << '\t' << '\t';
    cout << "Produk: " << '\t' << '\t';
    cout << "Harga: " << endl;
    do
    {
    getline(data, isi);
    cout << no++ << '\t' << '\t';
    cout << isi << '\t' << '\t';
    getline(data, isi);
    cout << isi << endl;
    } while (!data.eof());
    data.close();
    }

    void ubahdata() // mengubah data produk yang sudah diinput
    {
    fstream data, data2;
    int no, i;
    string isi;
    cout << "Pilih Barang : "; cin >> no;
    data2.open("data2.txt", ios::trunc | ios::out);
    data.open("data.txt", ios::in);
    getline(data, isi);
    for (i = 1; i < no; i++)
    {
    getline(data, isi);
    data2 << '\n' + isi;
    getline(data, isi);
    data2 << '\n' + isi;
    }
    cout << "No " << '\t' << '\t';
    cout << "Produk: " << '\t';
    cout << "Harga: " << endl;
    getline(data, isi);
    cout << no++ << '\t' << '\t';
    cout << isi << '\t' << '\t';
    getline(data, isi);
    cout << isi << endl;

    cout << "Nama Produk : ";
    getline(cin, isi);
    getline(cin, isi);
    data2 << '\n' + isi;
    cout << "Harga Produk :";
    getline(cin, isi);
    data2 << '\n' + isi;

    while (!data.eof())
    {
    getline(data, isi);
    data2 << '\n' + isi;
    getline(data, isi);
    data2 << '\n' + isi;
    }
    data2.close();
    data.close();

    data2.open("data2.txt", ios::in);
    data.open("data.txt", ios::trunc | ios::out);
    getline(data2, isi);

    do
    {
    getline(data2, isi);
    data << '\n' + isi;
    getline(data2, isi);
    data << '\n' + isi;
    } while (!data2.eof());

    data2.close();
    data.close();
    }

    ReplyDelete
  8. void hapusdata() // menghapus data yang sudah diinput
    {
    fstream data, data2;
    string isi;
    int no, i;
    cout << "Pilih Barang : "; cin >> no;
    data2.open("data2.txt", ios::trunc | ios::out);
    data.open("data.txt", ios::in);
    getline(data, isi);

    for (i = 1; i < no; i++)
    {
    getline(data, isi);
    data2 << '\n' + isi;
    getline(data, isi);
    data2 << '\n' + isi;
    }
    cout << endl;
    cout << "No " << '\t' << '\t';
    cout << "Produk: " << '\t';
    cout << "Harga : " << endl;
    getline(data, isi);
    cout << no++ << '\t' << '\t';
    cout << isi << '\t' << '\t';
    getline(data, isi);
    cout << isi << endl;

    while (!data.eof())
    {
    getline(data, isi);
    data2 << '\n' + isi;
    getline(data, isi);
    data2 << '\n' + isi;
    }

    data2.close();
    data.close();

    data2.open("data2.txt", ios::in);
    data.open("data.txt", ios::trunc | ios::out);
    getline(data2, isi);
    do
    {
    getline(data2, isi);
    data << '\n' + isi;
    getline(data2, isi);
    data << '\n' + isi;
    } while (!data2.eof());

    data2.close();
    data.close();

    cout << "Produk telah dihapus" << endl;
    }

    void hasiljual() // hasil jualan
    {
    fstream data;
    string isi;
    int no;
    data.open("data.txt", ios::in);
    getline(data, isi);
    no = 1;
    cout << "No " << '\t' << '\t';
    cout << "Produk: " << '\t';
    cout << "Harga: " << endl;
    do
    {
    getline(data, isi);
    cout << no++ << '\t' << '\t';
    cout << isi << '\t' << '\t';
    getline(data, isi);
    cout << isi << endl;
    } while (!data.eof());
    data.close();
    }

    void admin() // program masuk ke admin setelah dimasukan password
    {
    fstream data, data2;

    ReplyDelete
  9. ulang:

    int no;
    string salur, isi, datane, ulang;
    pilihan();

    if (pilihAdmin == "1") {
    system("cls");
    cout << "-------------------" << endl;
    cout << " Tambah Produk" << endl;
    cout << "-------------------" << endl;
    masukandata();
    goto ulang;
    }

    if (pilihAdmin == "2") {
    system("cls");
    cout << "-------------------" << endl;
    cout << " List Barang" << endl;
    cout << "-------------------" << endl;
    tampilkandata();
    cout << endl << "Tekan tombol apapun untuk kembali" << endl;
    no = _getch();
    goto ulang;
    }

    if (pilihAdmin == "3") {
    system("cls");
    cout << "-------------------" << endl;
    cout << " Ubah Barang" << endl;
    cout << "-------------------" << endl;
    tampilkandata();
    ubahdata();
    cout << endl << "Ubah data berhasil" << endl;
    cout << "Tekan tombol apapun untuk kembali" << endl;
    no = _getch();
    goto ulang;
    }

    if (pilihAdmin == "4") {
    system("cls");
    cout << "-------------------" << endl;
    cout << " Hapus Data" << endl;
    cout << "-------------------" << endl;
    tampilkandata();
    hapusdata();
    no = _getch();
    goto ulang;
    }
    if (pilihAdmin == "5") {
    system("cls");
    goto akhir;
    }
    else
    {
    cout << "Input Invalid" << endl;
    cout << "Tekan tombol apapun untuk kembali" << endl;
    no = _getch();
    goto ulang;
    }
    akhir:
    cout << endl;
    }

    void superAdmin() // program masuk ke superadmin setelah dimasukan password
    {
    fstream data, data2;

    ulang:

    int no;
    string salur, isi, datane, ulang;
    pilihanSuper();

    if (pilihSuper == "1") {
    system("cls");
    cout << "-------------------" << endl;
    cout << " Hasil Penjualan " << endl;
    cout << "-------------------" << endl;
    hasiljual();
    goto ulang;
    }

    if (pilihSuper == "2") {
    system("cls");
    goto akhir;
    }

    else
    {
    cout << "Input Invalid" << endl;
    cout << "Tekan tombol apapun untuk kembali" << endl;
    no = _getch();
    goto ulang;
    }
    akhir:
    cout << endl;
    }

    ReplyDelete