You are on page 1of 2

ST.

CPP
#include <stdio.h>
#include <conio.h>
void pushA();
void popA();
void pushB();
void popB();
void cetakA();
void cetakB();
int A[10], B[10], topA=-1, topB=-1, x;

void main ()
{
int i, temp;
for (i=0; i<10; i++) {
scanf ("%i", &x);
if (x < A[topA] || topA==-1) {
pushA();
} else {
while (x > A[topA] && topA >= 0) {
temp = x;
popA();
pushB();
x = temp;
}
pushA();
while (topB >= 0) {
popB();
pushA();
}
}
}
//cetak isi
cetakA();
cetakB();
}

void pushA()
{
topA++;
A[topA] = x;
}

void popA()
{
x = A[topA];
topA--;
}

void pushB()
{
topB++;
B[topB] = x;
}

void popB()
{
x = B[topB];
topB--;
}

void cetakA() {
printf("\nIsi A\n");
for (int i=0; i<=topA; i++) {
Page 1
ST.CPP
printf("%3i", A[i]);
}
}

void cetakB() {
printf("\nIsi B\n");
for (int i=0; i<=topB; i++) {
printf("%3i", B[i]);
}
}

Page 2

You might also like