Rabu, 17 Desember 2025

Algortima Pemograman Ke-11| C++

 

Nama

:

Akmal Fauzi

Npm

:

20251310030

Prodi

:

Teknik Informatika (A1)

Mata Kuliah

:

Praktikum Algoritma Pemograman 

Dosen Pengampu

:

Ir. Yasri, M.T


Sorting (Switch Case) :

#include <iostream>
#include <vector>
#include <algorithm>
#include <iomanip>
using namespace std;


struct User {
    string name;
    string pass;
    string phone;
};


void menu() {
    cout << "1. Masukan Data" << endl;
    cout << "2. Tampilkan Data" << endl;
    cout << "3. Hapus Data" << endl;
    cout << "4. Sorting Data" << endl;
    cout << "5. Keluar" << endl;
    cout << "Pilihanmu: ";
}


void sortDatanama (vector<User>& data) {
    sort (data.begin(),data.end(), [](User a, User b){
        return a.name < b.name;
        }
    );
}


void sortDatapw (vector<User>& data ) {
    sort (data.begin(), data.end(), [] (User a, User b){
        return a.pass < b.pass;
        }
    );
}


void sortDatanotlp (vector<User>& data ) {
    sort (data.begin(), data.end(), [] (User a, User b){
        return a.phone < b.phone;
        }
    );
}


void showData(const vector<User>& data) {
    cout << "No" << setw(10) << "Name" << setw(10) << "Password" << setw(10) << "Phone" << endl;
    for (int i = 0; i < data.size(); i++) {
        cout << i + 1 << setw(10) << data[i].name << setw(10) << data[i].pass << setw(10) << data[i].phone << endl;
    }
    cout << endl;
}


int main() {
    vector<User> data;
    int choice;


    do {


        cout << "===================================" << endl;
        cout << "       PROGRAM SORTING DATA        " << endl;
        cout << "===================================" << endl;
       
        menu();
        cin >> choice;


        if (choice == 1) {
            User u;
            cout << "Nama : ";
            cin >> u.name;
            cout << "Password : ";
            cin >> u.pass;
            cout << "NO Telp: ";
            cin >> u.phone;
            data.push_back(u);
            cout << "Data Baru Sudah DiTambahkan " << endl;
        }


        else if (choice == 2) {
            if (data.empty()) {
                cout << "Data Kosong " << endl;
            } else {
                showData(data);
            }
        }


        else if (choice == 3) {
            if (data.empty()) {
                cout << "Data Kosong " << endl;
            } else {
                showData(data);
                int del;
                cout << "Masukan Nomor Data yang ingin di Hapus: " << endl;
                cin >> del;
                if (del >= 1 && del <= data.size()) {
                    data.erase(data.begin() + del - 1);
                    cout << "Data Terhapus " << endl;
                } else {
                    cout << "Nomor Tidak Valid " << endl;
                }
            }
        }


        else if (choice == 4) {
            sortDatanama(data);
            sortDatapw(data);
            sortDatanotlp(data);
        }


    } while (choice != 5);



    cout << "========================================" << endl;
    cout << "              Terima Kasih              " << endl;
    cout << "========================================" << endl;


    return 0;
}


Tidak ada komentar:

Posting Komentar

Algoritma Pemograman Ke - 14 || Java

Nama : Akmal Fauzi Npm : 20251310030 Prodi : Teknik Informatika (A1) Mata Kuliah : Praktikum Algoritma Pemograman  Dosen Pengampu : Ir. Yasr...