Free E-Book

Ads 468x60px

Welcome to The SMART chip

Membuka wawasan seluas Cakrawala..

Jumat, 18 Januari 2013

Pemrograman C++: Program Input data Mahasiswa baru secara berulang

"Coding lagi.., coding lagi.., kapan hiburannya??" (teriak masa diluar sana).
"tenang-tenang ini cuman c++ kok belum z++ (o,O)"

Yaaap..., at this time i bring a new program from c++;
the title is ==> Pemrograman C++: Program Input data Mahasiswa baru secara berulang

Kalau soal yang satu ini cukup jelas, karena soal ini adalah soal kisi-kisi sebelum responsi. Waktu itu ada 7 bentuk soal yang unyuu... unyuu... sampe bikin manyun kalo diliatin. So, jangan cuman diliatin ya kita coba bareng-bareng yuuks.... Dari ke-7 soal tersebut saya baru menyelesaikannya 6 *Wuiiiih... (yang berhasil 1) *Gdubraaak... (︶.︶メ)

Nah 1 itulah yang ingin saya bagikan, mudah-mudahan bermanfaat ya. Katanya nih kalo kite bagi-bagi ilmu, bakal nambah tuh ilmu. Jadi biar cuman 1 siapa tau besok jadi 2, 3, 4, dst... Aamiin.. :)

Oke ini soal ke-4 dari 7 soal yang diberikan, bunyinya:
"Buat lah sebuah program untuk memasukkan data mahasiswa baru. Dengan syarat :Terdapat menu masukkan data mahasiswa dan melihat data yang sudah dimasukkan. Ketika ingin memasukkan data mahasiswa, program akan menanyakan berapa jumlah mahasiswa yang akan dimasukkan datanya."
 Hasil pertapaan dengan code block ==>
#include <iostream>

using namespace std;

typedef struct {
    char nama[30];
    char nim[10];
    }data;

typedef data mahasiswa[100];

void menu(int& pil){
    cout<<"Pilih salah satu : "<<endl;
    cout<<"1. Masukkan data mahasiswa  "<<endl;
    cout<<"2. Tampilkan data mahasiswa "<<endl;
    cout<<"Pilihan : ";cin>>pil;
    cout<<endl;
}

void tambah(int& n, mahasiswa& x){
    int banyak;
    cout<<"Masukkan jumlah mahasiswa: ";cin>>banyak;
    while(n<banyak){
        cout<<"Data mahasiswa ke-"<<n+1<<endl;
        cout<<"Nama \t: ";cin>>x[n].nama;
        cout<<"NIM \t: ";cin>>x[n].nim;
        n++;
}
}

void tampil(int n, mahasiswa x){
    if(n>0){
        int i=0;
        while(i<n){
            cout<<"Data mahasiswa ke-"<<i+1<<endl;
            cout<<"Nama \t: "<<x[i].nama<<endl;
            cout<<"NIM \t: "<<x[i].nim<<endl;
            i++;
        }
    }else{
        cout<<"Belum ada data yang dimasukkan ..."<<endl<<endl;
        }
}

int main(){
    mahasiswa daftar;
    int pil,isi;
    bool lagi;
    void menu(int& pil);
    void tambah(int& n, mahasiswa& x);
    void tampil(int n, mahasiswa x);
    isi=0;
    lagi=true;

    cout << "------------------------------" << endl;
    cout << "**PROGRAM INPUT DATA MHS**" << endl;
    cout << "------------------------------" << endl<<endl;
    while(lagi){
        menu(pil);
    if(pil==3){
        lagi=false;
        }
    else if(pil==2){
        tampil(isi,daftar);
        cout<<endl;
        }
    else if(pil==1){
        tambah(isi,daftar);
        cout<<endl;
        }

    else{
        cout<<"Pilihan yang anda masukkan salah ";
        cout<<", harap diulangi ... "<<endl;
        menu(pil);
        }
    }

    return 0;
}

Hasil running F9 ==>

 NB: Program ini masih ada kekurangan, yaitu di bagian jumlah inputan banyak mahasiswanya. Dia akan mengakses dari jumlah inputan sebelumnya, sehingga ketika mengisikan 3 dia akan mengisikan 1 data karena sudah ada 2 data sebelumnya. Ini karena saya menggunakan array dg menyimpan data sebelumnya. Soalnya kalau gak gitu ntar yang ditampilkan hanya data inputan terakhir. So intinya program itu beda-beda, tergantung programmernya mau modifikasi yang seperti apa. Walaupun begitu, semoga ada sisi baik yang bisa dijadikan pelajaran. :)
 <<selamat mencoba>>

2 komentar:

Posting Komentar