- Buatlah program untuk mengisikan data baru
- Buatlah program untuk menampilkan data dengan NILAI sama dengan 90
- Buatlah program untuk menampilkan seluruh data
- Buatlah program untuk menghapus data dengan NIM sama dengan 2007140022.
- Buatlah program untuk menghitung nilai rata-rata kelas.
CONTOH PROGRAM
#include <iostream>
#include <conio.h>
#include <stdio.h>
#include <windows.h>
using namespace std;
int pilih; void pilihan();
struct SIMPUL{
char nim[20];
int NIM;
char nama [40];
char gender [20];
int info;
float nilai;
SIMPUL *prev, *next;
};
SIMPUL *data, *front=NULL, *rear=NULL,*help,*del, *q;
void BUAT_SIMPUL(int X)
{
data=(SIMPUL *)malloc(sizeof(SIMPUL));
if(data!=NULL)
data->info=X;
else
{
cout<<"Membuat simpul gagal";
exit(1);
}
}
void buat_data()//fungsi membuat data data
{
data = new(SIMPUL);
cout<<" Masukkan Nama : ";cin>>data->nama;
cout<<" Masukkan NIM : ";cin>>data->nim;
cout<<" Masukkan Gender : ";cin>>data->gender;
cout<<" Masukkan Nilai : ";cin>>data->nilai;
cout<<"\n ==========================";
cout<<"\n Data telah dimasukkan ";
getch();
data->prev=NULL;
data->next=NULL;
}
void insert_data()
{
buat_data();
if(front==NULL)
{
front=data;
rear=data;
rear->next=NULL;
}
else
{
rear->next=data;
rear=data;
rear->next=NULL;
}
cout<<endl<<endl;
}
void hapus_data()//fungsi penghapusan data
{
int hapus,NIM;
if (rear==NULL)
{
cout<<"\n Linked List kosong, \nPenghapusan tidak dapat dilakukan"<<endl;//data yang habis maka tampilannya
}
else
{
hapus=front->NIM;
cout<<"\n Data yang dihapus adalah :";//pemilihan data yang akan dihapus
cin>>NIM;
del = front;
q = front->next;
front=q;
delete del;
getch();
}
}
void cetak_data()
{
if (rear==NULL){
cout<<" Queue kosong!";
getch();
}
else
{
help=front;
while(help!=NULL)
{
cout<<" Nama : "<<help->nama<<endl;
cout<<" NIM : "<<help->nim<<endl;//data akan muncul dengan tampilan
cout<<" Gender : "<<help->gender<<endl;
cout<<" Nilai : "<<help->nilai<<endl;
cout<<endl;
help=help->next;
}
getch();
}
}
void cetak_data90()
{
if (rear==NULL){
cout<<" Queue kosong!";
getch();
}
else if(data->nilai<=90)
{
help=front;
while(help!=NULL)
{
cout<<" Nama : "<<help->nama<<endl;
cout<<" NIM : "<<help->nim<<endl;//data akan muncul dengan tampilan
cout<<" Gender : "<<help->gender<<endl;
cout<<" Nilai : "<<help->nilai<<endl;
help=help->next;
}
getch();
}
}
void ratarata()
{
float ratarata;
int nilai, info;
ratarata=data->nilai/info;
cout<<"nilai rata ratanya adalah "<<ratarata;
getch();
}
void pilihan()//fungsi "pilihan" untuk pemrosesan
{
if(pilih==1){
insert_data();}
else if(pilih==2)
hapus_data();
else if(pilih==3)
cetak_data90();
else if(pilih==4)
cetak_data();
else if(pilih==5)
ratarata();
else
{
cout<<" Terima kasih sudah menggunakan program ini"<<endl;
}
}
int main()//interface monitor
{
system ("color F0");
do
{
system("cls");
cout<<" Linked List"<<endl;
cout<<" ============================="<<endl;
cout<<" 1. INSERT DATA"<<endl;
cout<<" 2. HAPUS DATA"<<endl;
cout<<" 3. CETAK DATA NILAI 90"<<endl;
cout<<" 4. CETAK SELURUH DATA"<<endl;
cout<<" 5. Hitung nilai rata-rata kelas "<<endl;
cout<<" ============================="<<endl;
cout<<" Pilihan : ";
cin>>pilih;
cout<<" ============================="<<endl;
cout<<endl;
pilihan()
}
while(pilih!=10);
}
Komentar
Posting Komentar