Loading Blog

Fungsi, ADT BPJS

Lorem ipsum dolor sit amet consectetur adipisicing.

Masalah

Dalam pengelolaan data BPJS, terdapat beberapa tantangan yang sering dihadapi, seperti:

  • Banyaknya data peserta yang perlu dikelola dengan rapi dan sistematis.
  • Kesulitan dalam mencatat informasi penting seperti nama lengkap, tanggal lahir, dan fasilitas kesehatan (faskes).
  • Potensi kesalahan input data secara manual yang dapat mengakibatkan ketidaksesuaian informasi.
  • Kebutuhan akan sistem yang dapat menyimpan, mengolah, dan menampilkan data dengan format yang terstruktur.

Solusi

Untuk mengatasi masalah tersebut, dibuatlah program berbasis C++ dengan pendekatan struktur data. Berikut langkah-langkah solusinya:

  1. Menggunakan Struktur Data: Data peserta disimpan dalam struct yang terdiri dari informasi seperti nama, tanggal lahir, NIK, dan faskes.
  2. Input Data: Program memungkinkan pengguna untuk memasukkan data dengan format yang sudah ditentukan.
  3. Output Data: Data yang sudah dimasukkan dapat ditampilkan kembali dengan rapi.
  4. Pengolahan Dinamis: Data peserta dikelola secara dinamis menggunakan alokasi memori.

Video Penjelasan

Kode Program

Berikut adalah contoh kode program dalam C++ untuk menghitung properti tabung:


                            // Judul : BPJS Kesehatan Faskes Tingkat 1
                            // 20/11/24 oleh Kukuh Ramadhan
                            /* 
                                       123456789012
                               Kukuh Ramadhan Prastiyo
                            Tanggal Lahir      : 11-11-2005
                            NIK                : 1234567890223456
                            Faskes Tingkat I   : X
                            */
                            #include 
                            using namespace std;
                            
                            // Kamus :
                            struct Nama 
                            {
                                string namaDepan;
                                string namaTengah;
                                string namaBelakang;
                            };
                            
                            struct Tanggal 
                            {
                                string tanggalLahir;
                                string bulanLahir;
                                string tahunLahir;
                            };
                            
                            struct bpjsKes 
                            {
                                string noPeserta;
                                Nama nama;
                                Tanggal tanggal;
                                string nik;
                                string faskes;
                            };
                            
                            // Fungsi Prosedural
                            void inputPeserta(bpjsKes* peserta, int jumlahPeserta) 
                            {
                                for (int i = 0; i < jumlahPeserta; i++) {
                                    cout << "\nInput Data Peserta " << i + 1 << endl;
                                    cout << "--------------------------------" << endl;
                            
                                    cout << "Masukkan No Peserta                               : ";
                                    getline(cin, peserta[i].noPeserta);
                            
                                    cout << "Masukkan NIK                                      : ";
                                    getline(cin, peserta[i].nik);
                            
                                    cout << "Masukkan Nama Depan                               : ";
                                    getline(cin, peserta[i].nama.namaDepan);
                            
                                    cout << "Masukkan Nama Tengah (Kosongkan Jika Tidak ada)   : ";
                                    getline(cin, peserta[i].nama.namaTengah);
                            
                                    cout << "Masukkan Nama Belakang (Kosongkan Jika Tidak ada) : ";
                                    getline(cin, peserta[i].nama.namaBelakang);
                            
                                    cout << "Masukkan Tanggal Lahir                            : ";
                                    cin >> peserta[i].tanggal.tanggalLahir;
                                    cin.ignore();
                            
                                    cout << "Masukkan Bulan Lahir                              : ";
                                    getline(cin, peserta[i].tanggal.bulanLahir);
                            
                                    cout << "Masukkan Tahun Lahir                              : ";
                                    cin >> peserta[i].tanggal.tahunLahir;
                                    cin.ignore();
                            
                                    cout << "Masukkan Nama Fasilitas Kesehatan I               : ";
                                    getline(cin, peserta[i].faskes);
                                }
                            }
                            
                            void outputPeserta(const bpjsKes* peserta, int jumlahPeserta) 
                            {
                                cout << "\nData Peserta yang telah diinput:" << endl;
                                cout << "=================================" << endl;
                            
                                for (int i = 0; i < jumlahPeserta; i++) {
                                    cout << "\nData Peserta " << i + 1 << endl;
                                    cout << "--------------------------------" << endl;
                                    cout << "           " << peserta[i].noPeserta << endl;
                                    cout << "   " << peserta[i].nama.namaDepan << " " << peserta[i].nama.namaTengah << " " << peserta[i].nama.namaBelakang << endl;
                                    cout << "Tanggal Lahir      : " << peserta[i].tanggal.tanggalLahir << "-" << peserta[i].tanggal.bulanLahir << "-" << peserta[i].tanggal.tahunLahir << endl;
                                    cout << "NIK                : " << peserta[i].nik << endl;
                                    cout << "Faskes Tingkat I   : " << peserta[i].faskes << endl;
                                    cout << "--------------------------------" << endl;
                                }
                            }
                            
                            // Deskripsi :
                            int main() 
                            {
                                int jumlahPeserta;
                                char lanjut;
                            
                                do 
                                {
                                    cout << "Masukkan Jumlah Peserta FASKES Tingkat 1: ";
                                    cin >> jumlahPeserta;
                                    cin.ignore();
                            
                                    // Alokasi Dinamis untuk Peserta
                                    bpjsKes* peserta = new bpjsKes[jumlahPeserta];
                            
                                    // Input Data Peserta
                                    inputPeserta(peserta, jumlahPeserta);
                            
                                    // Output Data Peserta
                                    outputPeserta(peserta, jumlahPeserta);
                            
                                    // Hapus Alokasi Dinamis
                                    delete[] peserta;
                            
                                    cout << "\nApakah ingin input data lagi? (y/n): ";
                                    cin >> lanjut;
                                    cin.ignore();
                            
                                } while (lanjut == 'Y' || lanjut == 'y');
                            
                                cout << "Program Selesai";
                                return 0;
                            }
                            
                        

I'd love to hear your perspective if you're interested and find a way to move forward together

Web Development

Contact