Selasa, 11 Juni 2013

Cara Menganalisis Sebuah Program



#include<iostream.h> //: diperlukan pada program yang melibatkanobjek cout dan cin.
#include <conio.h> //-  : diperlukan bila melibatkan clrscr( ), yaitu perintah untuk membersihkan layar dan fungsi getch( ) untuk menerima sembarang input keyboard dari user.
struct stack // tipe data bentukan yang berisi kumpulan variabel-variabel yang bernaung dalam satu nama yang sama dan memiliki kaitan satu sama lain.
{
int data[5]; // integer nilai yang berupa bilangan bulat yang di batasi dengan menampung data lima(5).
int atas; // integer nilai yang berupa bilangan bulat yang di batasi dengan menampung data yg paling atas.
}tumpukan;

void masukan();
void keluarkan();
void tampilkan();

void main() // Fungsi yang void sering disebut juga prosedur. Disebut void karena fungsi tersebut tidak mengembalikan suatu nilai keluaran yang didapat dari hasil proses fungsi tersebut.

{
int pilihan;
tumpukan.atas = -1;

do // perulangan.
{
clrscr(); // berfungsi membersihkan layar.
cout<<"Program Stack\n\n";
cout<<"1. Masukan Data\n";
cout<<"2. Hapus Data yang pertama\n";
cout<<"3. Tampilkan Data\n";
cout<<"Masukan pilihan :"; // Fungsi cout << dapat digunakan untuk     menampilkan semua jenis data (numeric dan karakter) yang dapat berupa nilai, karakter ataupun konstanta
cin>>pilihan; // cin merupakan syntak untuk input
data.
// Fungsi cin >> var
fungsi cin >> berguna untuk menginput data berupa numerik, string, dan karakter. Var dapat lebih dari satu variabel (cin >> var >> var) dan dapat berupa karakter.

switch(pilihan)// Statement SWITCH juga berfungsi sama dengan IF. Perintah SWITCH sama dengan perintah CASE OF dalam PASCAL.
{
case 1:
{

masukan();
break; // Adalah perintah untuk langsung keluar dari looping (perulangan).
}

case 2:
{
keluarkan();
break; // Adalah perintah untuk langsung keluar dari looping (perulangan).
}

case 3:
{
tampilkan();
break; // Adalah perintah untuk langsung keluar dari looping (perulangan).
}
default: // berguna sebagai alternataif lain. Jadi, jika nilai pada ekspresi tidak ada yang sesuai dengan nilai konstanta yang ada di setiap kondisi, maka alternatif yang berada di default lah yang akan di eksekusi.
{
cout<<"Bukan pilihan tersedia";
}
}
}
while (pilihan >=1 && pilihan <=3); //

getch();
}

void masukan()
{
int baru;
if (tumpukan.atas ==4)
{
cout<<"tumpukan penuh";
getch();//tombol yang kita tekan pada keyboard tidak akan ditampilkan pada console (kecuali kita panggil variabelnya dengan fungsi printf atau fungsi output lainnya),
}
else
{
cout<<"Masukan nilai :";
cin>>baru;
tumpukan.atas++;
tumpukan.data[tumpukan.atas] = baru;
}
}

void keluarkan()
{
if (tumpukan.atas == -1)
{
cout<<"Tumpukan Kosong";
getch();
}
else
{
cout<<"Nilai yang dihapus "<<tumpukan.data[tumpukan.atas+1] <<", pada stack nomer urutan ke "<< (tumpukan.atas--)+1;//mengurangkan indeks dan menghilangkan data
getch();
}
}

void tampilkan()
{
int p=0;
if (tumpukan.atas == -1)
{
cout<<"Tumpukan kosong";
getch();
}
else
{
cout<<"Data: \n";
for (int i=tumpukan.atas; i>=0; i--)
{
cout<<"dikeluarkan nomor " << ++p << ", pada stack data ke "<< i+1 <<", yaitu : " <<tumpukan.data[i]<<"\n"; }
getch(); // Fungsi ini digunakan untuk memasukkan data berupa string agar tampil dilayar.

}

}





Tidak ada komentar:

Posting Komentar