Struktur data pertemuan 9

 


NAMA        : FIKRIANSYAH

NIM             : 191011400352

KELAS        : 03TPLE021

PERTEMUAN 9

1. Buat program animasi Linear Singly Linked List untuk mengelola data mahasiswa dengan struktur mahasiswa sbb : NAMA, NIM, GENDER, NILAI STRUKTUR DATA. Program dibuat dalam bentuk menu dengan pilihan : INSERT DATA, HAPUS DATA, CETAK DATA, EXIT

 *PROGRAM 

#include <iostream>

#include <conio.h>

#include <iomanip>

#include <stdlib.h>

using namespace std;

//Abdul Ajiji

struct node

{

     int data;

     node* next;

};

node* head;

node* tail;

node* curr;

node* entry;

node* del;

void inisialisasi()

{

                 head = NULL;

                 tail = NULL;

}

int input(int dt)

{

                 entry = (node*)malloc(sizeof(node));

                 entry->data =dt;

                 entry->next = NULL;

                 if(head==NULL)

                 {

                                 head = entry;

                                 tail = head;

                 }

                 else

      {

                 tail->next = entry;

                 tail = entry;

                  }

}

void hapus()

{

                 int simpan;

                 if(head==NULL)

                 {

                                  cout<<"\n liked list kosong, penghapusan tidak bisa dilakukan"<<endl;

                 }

                 else

                 {

                                  simpan = head ->data;

                                  del = head;

                                  head = head->next;

                                  delete del;

                                  cout<<"\n data yang dihapus adalah "<<simpan<<endl;

                 }

                 

}

void cetak()

{

                 curr = head;

                 if(head == NULL)

                      cout<<"\n tidak ada data dalam linked list"<<endl;

                 else

                 {

                                  cout<<"\n data yang ada dalam linked list"<<endl;

                                  cout<<" Abdul Ajiji -> 191011401517 -> Laki Laki ->"<<setw(7);

                                   while(curr!=NULL)

                                   {

                                                 cout<<curr->data<<" -> ";

                                                 curr = curr->next;

                                   }

cout<<"NULL";

            cout<<endl;

                 }

}

void menu()

{

                  char pilih,ulang;

                  int data;

                  do

                  {

                  system("cls");

                  cout<<" = FIKRIansyah | 191011400352 ="<<endl;

                  cout<<" =============================================="<<endl;

                  cout<<" =             SINGLE LINKED LIST             ="<<endl;

                  cout<<" =============================================="<<endl;

                  cout<<" menu : "<<endl;

                  cout<<" 1. input data "<<endl;

                  cout<<" 2. hapus data "<<endl;

                  cout<<" 3. cetak data "<<endl;

                  cout<<" 4. exit "<<endl;

                  cout<<" masukan pilihan anda : ";

                  cin>>pilih;

                 

                  switch(pilih)

                  {

                  case '1' :

                                   cout<<"\n masukan data : ";

                                   cin>>data;

                                   input(data);

                                   break;

                  case '2' :

                                   hapus();

                                   break;

                  case '3' :

                                   cetak();

                                   break;

                  case '4' :

                                   exit(0);

                                   break;

                  default :

                                   cout<<"\n pilih ulang"<<endl;

                  }

                  cout<<"\ kembali ke menu?(y/n)";

                  cin>>ulang;

                  }while(ulang=='y' || ulang=='y');

}

int main()

{

                  inisialisasi();

                  menu();

                  return EXIT_SUCCESS;





Komentar