Professional Documents
Culture Documents
ADT QUEUE
Kamus :
q : address
Algoritma :
q ? alokasi(nimX,namaX,nilaiX);
addAddress(Q,q);
i:integer ?0, k ? 0;
output("\n\nBaca formula Infix ? ");
input("%s", infx);
push('#');
while ((ch ? infx[i++]) != '\0') {
if (ch = '(')
push(ch);
else if (isalnum(ch))
pofx[k++] = ch;
else if (ch = ')') {
while (s[top] != '(')
pofx[k++] ? pop();
elem ? pop(); /* Buang ( */
} else { /* Operator */
while (pr(s[top]) >= pr(ch))
pofx[k++] ? pop();
push(ch);
}
}
while (s[top] <> '#') /* Pop from stack sampai kosong */
pofx[k++] ? pop();
pofx[k] ? '\0'; /* buat pofx sebagai valid string */
output("\n\nGiven Infix Expn: %s Postfix Expn: %s\n", infx, pofx);
}
1. procedure welcome() {
output("Selamat datang di Basis Angka Konverter");
output("\nby Astiya, Dinda, Yunita)");
}
2. procedure cls() {
i:integer;
for (i? 0;i<100;i++) {
ouput("\n");
}
}
3. procedure biner(n:integer) {
if (n > 0) {
biner(n/2);
output("%d",n%2);
}
D. MAIN PROGRAM
int main(){
output("
output("
\n");
\n");
APLIKASI BASIS
\n");
output(" ___________________________________________________\n");
output("
\n");
output("
Astiya Putri
(1107134154)
output("
Dinda Murni
(1107130073)
\n");
output("
Yunita Ayu Lestari
(1107130069)
output("
\n");
output("
Pemrograman Terstruktur II, IK-37-03
output("
S1 Ilmu Komputasi
output(" __________________________________________________ \n");
output(" press any key to continue \n");
getch();
system("cls");
\n");
\n");
\n");
x:integer,dec;
oct[6],bin[16],hex[4]:char;
welcome();
while(1) {
output("\n\n===============================\nBasis Angka
Masukan\n1. Desimal\n2. Biner\n3.
Oktal\n4. Heksadesimal \n5. Keluar \nMasukan
pilihan anda: ");
input(x);
switch(x) {
depend on 1:
output("Masukan angka desimal (Maksimal 65535): ");
input("%d",&dec);
if(cekdesimal(dec) != 0) {
printf("Input salah");
break;
}
output("Biner: ");
biner(dec);
output("\nOktal: %o",dec);
output("\nHexa: %X",dec);
break;
depend on 2:
output("Masukan angka biner (Maksimal 16 bit): ");
input("%s",bin);
if(cekbiner(bin,&dec) != 0) {
output("Input salah");
break;
}
output("\nDesimal: %d",dec);
output("\nOktal: %o",dec);
output("\nHexa: %X",dec);
break;
depend on 3:
output("Masukan angka Oktal (Maksimal 177777): ");
input("%s",oct);
if(cekoktal(oct,&dec) != 0) {
output("Input salah");
break;
}
output("Desimal: %d",dec);
output("\nBiner: ");
biner(dec);
output("\nHexa: %X",dec);
break;
depend on 4:
output("Masukan angka hexa (Maksimal FFFF): ");
input("%s",hex);
if(cekhexa(hex,&dec) != 0) {
output("Input salah");
break;
}
output("Desimal: %d",dec);
output("\nBiner: ");
biner(dec);
output("\nOktal: %o",dec);
break;
}
default:
} //end case
} //end loop
? 0;
} //end main
output("Not Present");