Minggu, 10 Agustus 2014

LINKLIST "Tugas Penambahan Data"

                                                         Pendahuluan

      Laporan ini adalah salah satu bagian dari tugas akhir untuk matakuliah Konsep Bahasa Pemrograman dan pada laporan ini akan di jelaskan tentang program yang telah dibuat, dari 2 topik yang di sediakan kelompok kami mendapatkan topik 1 (Ganjil) dimana topik 1 adalah topik tentang penyimpanan barang.

       Program yang kelompok kami buat ini menggunakan bahasa C++, struktur data yang digunakan untuk menyimpan data – data masukan user adalah menggunakan linked list di dalam program, ada 6 pilihan menu di mana .
Pilihan 1 : Meminta user untuk menambah data.
Pilihan 2 : Melihat data yang telah di tambah.
Pilihan 3 : Melihat data dengan quantity terkceil dan terbesar.
Pilihan 4 : Melihat total quantity.
Pilihan 5 : Melihat tahun produksi terkecil dan terbesar.
Pilihan 6 : Keluar dari program.


Penjelasan Codingnya

File Header
#include <iostream>
#include <conio.h>
#include <stdlib.h>
-//Ketiga file header di atas di sisipkan untuk menggunakan fungsi – fungsi yang terdapat di dalam header – header tersebut. Pendeklarasian variable yang di gabung dalam satu buah struct,  struct item.
struct Item{
    int code;
    int qty;
    int Tahun;
    int Tahun_expired;
    node *next;
    Produksi *prod;
};
-//Pendeklarasian pointer sebagai penunjuk data.
node *head=NULL, *tail=NULL, *baru;

Method untuk menambah data.
void tambah(int qt, int t, int te)  // void ini mempunyai parameter 3 tipe data integer yang bertujuan untuk menampung nilai quantity barang, tahun barang dan tahun expired barang.
{
    baru = (node *) malloc(sizeof(node)); //memesan alokasi memori dinamis menggunakan malloc
    if(baru!=NULL) // kondisi untuk mengecek apa belum ada data yang dimasukkan.
    {
        baru->code=kode;
        kode++;
        baru->qty=qt;
        baru->Tahun=t;
        baru->Tahun_expired=te;
        baru->next=NULL;

        if(head==NULL) //kondisi untuk mengecek apakah posisi kepala dari linked list masih kosong.
        {
            head=baru;
            tail=baru;
        }
        else
        {
            tail->next=baru;
            tail=baru;
        }
        cout<<"Data Berhasil Di Tambah";
    }
    else
    {
    }
}
void lihat() //void untuk melihat data.
{
    node *x;
    x = head; //x yang merupakan pointer disamakan nilainya dengan head
    system("cls");
    cout<<"Kode\t qty\t Tahun\t Tahun Expired"<<endl;
    while(x!=NULL) //selama x tersebut tidak kosong maka akan mencetak seluruh isi data
    {
        cout<<x->code<<"\t";
        cout<<x->qty<<"\t";
        cout<<x->Tahun<<"\t";
        cout<<x->Tahun_expired<<"\t"<<endl;
        x=x->next;
    }
}
void tiga()// void tiga() ini adalah untuk melihat quantity (banyaknya) data terkecil dan terbesar
{
    node *x;
    x = head;
    int temp_kecil=x->qty,temp_besar=x->qty,temp_kode_kecil=x->code,temp_kode_besar=x->code; //pendeklarasian sebuah variable sementara
    while(x!=NULL)
    {
        if(x->qty<temp_kecil) //kondisi yang mengecek apakah data dari variable sementara berisi quantity terkecil,
        {
            temp_kecil=x->qty;
            temp_kode_kecil=x->code;
        }
        if(x->qty>temp_besar) //kondisi yang mengecek apakah data dari variable sementara berisi quantity terbesar.
        {
            temp_besar=x->qty;
            temp_kode_besar=x->code;
        }
        x=x->next;
    }
    cout<<"Kode data terkecil = "<<temp_kode_kecil<<endl;
    cout<<"Kode data terbesar = "<<temp_kode_besar<<endl;
}
void empat() //void ini mencetak quantity dari barang yang telah di masukkan user
{
    node *x;
    x = head;
    int temp=0;
    while(x!=NULL)
    {
        temp+=x->qty;
        x=x->next;
    }
    cout<<temp;
}
void lima() //void ini untuk mencetak tahun produksi terbesar dan terkecil
{
    node *x;
    x = head;
    int temp_kecil=x->Tahun,temp_besar=x->Tahun,temp_kode_kecil=x->code,temp_kode_besar=x->code;// pendeklarasian sebuah variable sementara
    while(x!=NULL)
    {
        if(x->Tahun<temp_kecil)
        {
            temp_kecil=x->Tahun;
            temp_kode_kecil=x->code;
        }
        if(x->Tahun>temp_besar)
        {
            temp_besar=x->Tahun;
            temp_kode_besar=x->code;
        }
        x=x->next;
    }
    cout<<"Kode data terkecil = "<<temp_kode_kecil<<endl;
    cout<<"Kode data terbesar = "<<temp_kode_besar<<endl;
}
int main()
{
    string pilihan_menu;
    do
    {
       system("cls");
       cout<<"Menu :"<<endl;
       cout<<"1. Tambah data barang"<<endl;
       cout<<"2. Lihat"<<endl;
       cout<<"3. Data dengan qty terkecil dan terbesar"<<endl;
       cout<<"4. Total qty"<<endl;
       cout<<"5. Tahun produksi terkecil dan terbesar"<<endl;
       cout<<"6. Keluar"<<endl;
       cout << "Please select an option : ";
        cin >> pilihan_menu;
//Semua void diatas dipanggil pada sebuah menu yang menggunakan kondisi if..else
if(pilihan_menu == "1") //jika user menginputkan angka 1
        {
            system("cls");
            cout<<"Kode barang : "<<kode<<endl;
            int jb, t, te; //ketiga variable ini akan dikirim nilainya ke void tambah
            cout<<"Jumlah barang :";
            cin>>jb;
            cout<<"Tahun :";
            cin>>t;
            cout<<"Tahun Expired :";
            cin>>te;
            tambah(jb,t,te);
        }
else if(pilihan_menu == "2")// jika user menginputkan angka 2, maka program akan memanggil void lihat()
        {
            lihat();
        }
        else if(pilihan_menu == "3")// jika user menginputkan angka 3, maka program akan memanggil void tiga()
        {
            system("cls");
            tiga();
        }
        else if(pilihan_menu == "4") //jika user menginputkan angka 4, maka program akan memanggil void empat ()
        {
            empat();
        }
        else if(pilihan_menu == "5") jika user menginputkan angka 5, maka program akan memanggil void lima()
        {
            lima();
        }
        else if(pilihan_menu == "6")// jika user menginputkan angka 6, maka program akan terminate
        {
            cout<<"Terminating Program";
        }
        else cout<<"Invalid Option";
        getch();
    }

Penjelasan Tampilan Programnya :
Tugas penambahan Barang menggunakan LinkList:
Tampilan Menu :



Jika pilih Menu 1:



Pilih menu 1 lagi dan ingin menambahkan Data yang ke 2:

Pilih menu 2 akan muncul tampilan seperti dibawah ini :


Pilih menu 3 akan muncul tampilan dari gambar dibawah:



Pilih menu 4 akan muncul gambar dibawah:


pilih Menu 5 akan muncul tampilan seperti dibawah :


pilih Menu 6 akan muncul gambar dibawah :





       Terimakasih Sudah Melihat Blog ini, Mohon Maaf jika ada kesalahan kata atau tampilan yang kurang jelas bisa dikomentari dibawah ini :  :)





15 komentar:

van hanslinks mengatakan...

erimakasih banyak tangkai informasinya, semoga bermanfaat jatah pembaca. sentosa sehat! cara mengobati penyakit usus buntu

aditya yoga mengatakan...

Nice coding gan..
kumpulan video terbaru disini gan

gadis bersoftex mengatakan...

KLIK : PokerBuaya.com Agen Judi Poker, Domino Online Indonesia Terpercaya

AND GET MORE INFORMATION ABOUT :

PokerBuaya.com Agen Judi Poker, Domino Online Indonesia Terpercaya

and :

Agen, Taruhan, Live, Judi, Texas, Poker, Domino, Togel, Bola, Casino, Online, Indonesia, Terbaik, Terpercaya,

Brutus O.R mengatakan...

Very good post! We are linking to this particularly great content on our website. Keep up the good writing.

DAFTAR BANDAR SITUS TOGEL ONLINE TERPERCAYA

LIVE RESULT SGP

LIVE SGP live draw sgplive result sgp

BUKU TAFSIR MIMPI 4 ANGKA

BANDAR TOGEL ONLINE TERBESAR DAN TERBAIK INDONESIA

choky bembenk mengatakan...

Tips Simple Tentang Kesehatan dan Karirk

penitishop.com jual almamater terbaik

cara terbaru meningkatkan pengunjung blog

kumpulan IDM Terbaru dan terUPDATE

Free Download Software Offline Installer



all about computer tips n trick

Cara Menghasilkan Uang Dari Blog

IDM Terbaru tanpa registrasi

Tips SEO Menigkatakan Pengunjung Blog

IDM Terbaru 2015

iman rahman mengatakan...

Trimakasih atas informasinya, moga sukses

Obat perangsang wanita
Vimax asli
Vimax pills
Boneka Full Body
Meizitang Botanical
Obat Vimax

Chielin Leng mengatakan...

informasi yang sangat bermanfaat sekali, semoga tambah sukses selalu. trimakasih
Vimax Asli
Vimax Asli Canada
Pembesar Penis Alami
obat pembesar penis
obat perangsang wanita
obat kuat pria
sex doll
boneka full body
alat bantu sex

Obat herbal mengatakan...

I like it this really good information
Vimax Canada
Vimax Canada Asli

rifqi kurnia mengatakan...

trmaksih atas informasinya yang bagus dan bermanfaat

Vimax Canada
Vimax Canada Original

rifqi kurnia mengatakan...

Thanks for sharing nice blog and article.
Obat Pembesar Penis
Selaput Dara Buatan Japan
Obat Penumbuh Rambut
Alat Pembesar Penis
klg U.S.A
Vibrator Thorn Dragon
pemutih kulit
Obat Pemutih Gigi
Obat Penghilang Selulit
Obat Penyubur Seperma
Obat Pelangsing Badan
Obat Pembesar Penis U.S.A
Obat Penambah Stamina
Alat Pembesar Penis
Obat Bantu Sex Wanita
Vagina Bulu getar Goyang
vAGINA gETAR gOYANG
Vagina getar Silikon Mungil

Ruralrefined mengatakan...

mantep nih
ruralrefined
Cara menulis artikel berkualitas
Strategi SEO Ampuh dan Aman

Sariwati Kartika mengatakan...

DOMINO206 adalah Pusatnya Game Domino Terpercaya Indonesia. Memberikan pengalaman bermain untuk anda, proses deposit dan withdraw cepat.
Gabung sekarang juga dan segera menangkan jutaan rupiah setiap harinya !!

domino 99 indonesia
domino qiuqiu online
bandar qq
Bandar Qiu

judi domino 99
BandarQ | BandarQ Online | Agen BandarQ | Domino99 | Agen Domino | AduQ Online Terbaik

Dedi Styawan mengatakan...

Makasih gan atas post nya, sangat bermanfaat

Salam, Rhoma Irama mp3

Rina rosiana mengatakan...

obat penggugur
obat penggugur kandungan
jual obat penggugur
harga obat penggugur
cara menggugurkan kandungan
cara menggugurkan kandungan 1 bulan
cara menggugurkan kandungan 2 bulan
cara menggugurkan kandungan 3 bulan
cara pemakaian cytotec usia 1 bulan
cytotec
harga cytotec
harga obat cytotec
harga obat misoprostol
jual cytotec
obat cytotec
harga cytotec di apotik
cara pemakaian cytotec
cara pemakaian obat cytotec
obat telat bulan
harga cytotec

Unknown mengatakan...

thanks

Posting Komentar