Hallo Sobat Jombang. Kali ini saya mau posting di bawah ini sedikit contoh latihan struktur data ketika saya sedang praktek niih di pertemuan ke 4 saya. Yaah kurang lebihnya saya membuatnya seperti di bawah ini (Maklum masih dalam tahap Pembelajaran, hehe).
Pertama - tama mari kita buka dulu nih program softwarenya (kalau pas aku praktek sih pake software Ms. Visual C++). Naah pas kalian sudah buka softwarenya pilih File - New - Project lalu pilihan tuh dan pilih Visual C++ lalu klik yang Empty Project sobat dan jangan lupa masukin deh Nama filenya :). Setelah itu klik nama filenya lalu pilih source (klik kanan) pilih Add => New Item. setelah tu selesai deh tinggal kalian buat codingannya kaya gimana, beres kan. Di bawah ini adalah contoh codingan latihan saya pada pertemuan 4 :
#include <string.h>
#include <stdlib.h>
struct Mahasiswa
{
char nama[50];
int umur;
struct Mahasiswa *next;
}*head,*tail,*curr;
void pushBelakang(char nama[],int umur)
{
curr = (struct Mahasiswa*)malloc(sizeof(struct Mahasiswa));
strcpy(curr->nama,nama);
curr->umur = umur;
curr->next = NULL;
if(head==NULL)
{
head = tail = curr;
//head = curr
//tail = curr
}
else
{
tail->next = curr;
tail = curr;
}
}
void popDepan()
{
if(head!=NULL)
{
curr = head;
head = head->next;
free(curr);
}
}
void popBelakang()
{
if(tail!=NULL)
{
if(head==tail)
{
tail = tail->next;
free(curr);
head = tail;
}
else
{
curr = head;
while(curr->next!=tail)
{
curr = curr->next;
}
curr->next = tail->next;
//curr->next = NULL
free(tail);
tail = curr;
}
}
}
void popTengah(int umur)
{
if(head->umur==umur)
{
popDepan();
}
else if(tail->umur==umur)
{
popBelakang();
}
else
{
curr = head;
while(curr->next!=NULL && curr->next->umur!=umur)
{
curr = curr->next;
}
if (curr->next==NULL)
{
printf ("no data");
}
else
{
struct Mahasiswa *temp = curr->next;
curr->next = temp->next;
free(temp);
}
}
}
void cetak()
{
curr = head;
while(curr!=NULL)
{
printf("%s %d\n",curr->nama,curr->umur);
curr = curr->next;
/*
curr->next = curr;
curr = curr->next; =====> Sama Saja
curr->next = curr;
*/
}
}
void main()
{
pushBelakang("Van",18);
pushBelakang("Gerry",21);
pushBelakang("Rizki",27);
pushBelakang("Aprilian",19);
cetak();
getchar();
popDepan();
cetak();
getchar();
}
Tidak ada komentar:
Posting Komentar