Home disini
widget by sy@ms

Latest Posts

Program List Berurutan Dengan Fungsi Terpisah

sesuai dengan judulnya, ane akan mencoba membuat list dengan tampilannya terurut. Kalau ane buat program lgi kayaknya ribet deh, gimana kalau ane rombak dari postingan sebelumnya, yaitu Contoh Program List dengan fungsi terpisah. Prinsipnya sama sob, hanya mengedit sedikit untuk bisa urut.

Biar lebih mudah sobat copy pastekan saja program dibawah. dan bandingkan ama program kemarin. ok.
Caranya sama, yaitu:
Pertama, Buat file untuk fungsi dengan nama "urut.h". Tanpa tanda kutip
Kedua, masukan script berikut kedalam file "urut.h".


struct list
{
int nilai;
list *next;
};

list *element;
list *head, *tail;
list *temp;

void inisial()
{
head = tail = NULL;
}

int input()
{
int x;
cout<<"\n Nilai elemen baru : ";cin>>x;
return x;
}

void proses(int x, int z)
{
element = (list *)malloc(sizeof(list));
element->nilai= x;
element->next= NULL;

if(head==NULL)
{
head=tail=element;
cout<<" "<<element->nilai<<" Diletakan di awal list\n";
}
else
{
if(element->nilai <= head->nilai)
{
element->next=head;
head=element;
cout<<" "<<element->nilai<<" Diletakan di awal list\n";
}
else if(element->nilai >= tail->nilai)
{
tail->next=element;
tail=element;
cout<<" "<<element->nilai<<" Diletakan di akhir ururtan ke- "<<z<<endl;
}
else
{
int urut=1;
list *old, *tmp;
old=tmp=head;
while(tmp->nilai < element->nilai)
{
old=tmp;
tmp=tmp->next;
urut++;
}
old->next=element;
element->next=tmp;
cout<<" "<<element->nilai<<" Terletak pada urutan ke- "<<urut<<endl;
}
}
}

void tampil()
{
temp=head;
cout<<"\n Hasil : ";
while(temp != NULL)
{
cout<<"["<<temp->nilai<<"] ";
temp = temp->next;
}
}


Klau dh selesai, simpan file tersebut.
Ketiga, buat file baru bernama "urut.cpp". Tanpa tanda kutip.
Keemat, masukan script berikut kedalam file "urut.cpp".


#include "iostream.h"
#include "stdlib.h"
#include "conio.h"
#include "urut.h"

void main()
{
int nilaibaru;
char key;
int zz=0;
inisial();
do
{
zz++;
nilaibaru = input();
proses(nilaibaru,zz);
cout<<" Ingin mengulangi [y/t] : ";cin>>key;
clrscr();
}
while(key=='y' || key=='Y');

tampil();
}


Setelah selesai, simpan dan jalankan. Gimana....
Hasilnya terurut bukan....

Ini screenshoot pada sa'at input data.


Ini screenshoot pada penampilan data.

Gimana, semoga berhasil sob....

Catatan : Kedua file harus disimpan pada folder yang sama, dimana program akan dijalankan.

Salam senyum dariku untuk semuanya, tetaplah untuk bersemangat. Jangan lupa Comment atau isi buku tamu ya sob. Sedikit pemberitahuan untuk sobat yang ingin mengambil [Copy-Paste], Owner tidak melarang sobat untuk memperbanyak artikel namun Owner berharap sobat berlaku dengan bijak agar mencantumkan link active maupun yang tidak. Owner berharap partisipasinya ya sob.



0 komentar:

Jam Sekarang
Tanggal
Salam Sapa :
Status Blogging :

*ket. status : Terjadwal : Berarti yang punya blog tidak bisa berinternet [ More... ]





sy@ms
skyNET program


Join the conversation for skyNET program

 
 free web counter Counter Powered by  RedCounter

© 2011 || Copyright by sy@ms || Thanks for skyNET program All Reserved

Technology Blogs TopOfBlogs Top Blogs Internet Internet Blogs Phil Backlink Display Pagerank
Yahoo bot last visit powered by MyPagerank.Net
USA Backlinks Free Backlinks Service at USABacklinks.com! Auto Backlink Gratis Indonesia : Top Link Indo My Ping in TotalPing.com ping fast  my blog, website, or RSS feed for Free