Sabtu, 29 Juni 2013

STACK

#include <stdio.h>
# include <stdlib.h>
using namespace std;
void push();
void pop();
void cetak ();
int x;
int s[99];
int t=-1,i,a,stack,menu;
char urut = 'Y';
int main (void)



{
z:
printf("NO.1\n");
printf("Stack :\n1.Masukan Data\n2.Keluarkan data\n3.Cetak data\n");
printf("Masukan pilihan : ");scanf("%d",&a);
if(a==1)
{
push();
}
if(a==2)
{
pop();
}
if(a==3)
{
cetak();
}
printf("apakah data ingin diurutkan..??");scanf("%s",& urut);
if(urut=='Y')
{
printf("Menu:\n1.) Buble Sort\n2.) Insertion Sort\nMasukan Pilihan :");scanf("%d",&menu);
if(menu==1)
{
int swap;
for (int i=0;i<t;i++)
{
for (int ii=0;ii<t;ii++)
{
if (s[ii]>s[ii+1])
{
swap=s[ii];
s[ii]=s[ii+1];
s[ii+1]=swap;
}
}
printf("Hasil tahap ke-%d : ", i);
for(int r=0;r<=t;r++)
{
printf("%d ", s[r]);
}
printf("\n");
}
}
if(menu==2)
{
for(int i=0;i<=t;i++)
{
int temp;
temp = s[i];
int j = i -1;
while(s[j]>temp && j>=0)
{
s[j+1] = s[j];
j--;
}
s[j+1] = temp;
printf("Hasil tahap ke-%d : ", i);
for(int r=0;r<=t;r++)
{
printf("%d ", s[r]);
}
printf("\n");
}
}
}
goto z;

}
void push()
{
t++;
if(t==99)
{
system("cls");

printf("maaf tumpukan penuh\n");
t--;
}
else
{
printf("masukan data : ");scanf("%d", &x);
s[t]=x;
}
}
void pop()
{
system("cls");

t--;
}
void cetak()
{
for(i=0;i<=t;i++)
{
printf("%d ", s[i]);
}
printf("\n");
}

0 komentar:

Posting Komentar

© Bella Yulianita 2012 | Blogger Template by Enny Law - Ngetik Dot Com - Nulis