Senin, 24 Januari 2011

TUGAS AKHIR . SEMESTER 3 ” ANTRIAN PARKIR ”



DESKRIPSI TA. SEMESTER 3 ” ANTRIAN PARKIR ”

  Dari program parkir yang kami buat yaitu memudahkan untuk tidak mengantri panjang. Sehingga waktu yang dibutuhkan juga tidak terlalu lama. Dalam program ini kita dapat menginputakan atau memasukan inputan berupa plat nomer kendaraan,type kendaraan atau jenis kendaraan,waktu masuk,jam,petugas yang menjaga.
  Inputan juga bisa ditambah lagi dengan memasukan plat nomer,jenisnya,jam,masuk,petugas. Hal ini dapat dilakukan berulang-ulang sehingga data yang terkumpul dapat berjumlah banyak. Setelah masukan atau inputkendaraan selesai maka akan terjadi pencetakan inputan sehingga semua kendaraan yang masuk dapat dilihat dan dihitung jumlahnya.
  Ketika ada motor yang sudah masuk parkir dan ingin keluar maka petugas yang berjaga akan melihat dari pencetakan data yang masuk,jika sudah ketemu sesuai dengan apa yang dilihat dari kendaraaan maka kendaraan  akan dihapus dan dapat keluar  dari  program dan petugas mengucapkan terima kasih. Program ini dibat untuk lebih mempermudah dan aman dalam menjaga area pakir sehingga tidak terjadi kejahatan yang akan dilakukan oleh orang yang tidak bertanggung jawab.



 PROTOTYPE TA. SEMESTER 3 ” ANTRIAN PARKIR ”

# include <iostream.h>
# include <conio.h>
# include <fstream.h>
# include <string.h>

 struct Node
{

  char plat[250];
  char type[250];
  char hari[250];
  char data[120];
  char jam [150];
  char ptgs[200];

  struct Node * link;
};

class antrian {


public:
  antrian();
  void kolom();
  void menu();
  void guswan( char *, char *, char*, char *, char*, char*);
  void masukan();
  void hapus();
  void kolom_list();
  void cetak();

private:
  Node * p, * first, * last, * q;
  char x[10];
 };

TAMPILAN MENU AWAL TA. SEMESTER 3”ANTRIAN PARKIR”


JAWABAN QUIS KE 2



  
1.      TDA Priority Queue
Deskripsi: antrian yang mempunyai fitur untuk memproritaskan item.
Instansi: kumpulan data antrian / larik antrian.
Operasi:-Enqueue
              -Dequeue
              -Priority



 2.      Prototype dengan type array
private:
            int antrian[10];
public:
            void enqueue(int data);
            int dequeue();
            void priority(int index);
};



3.      Prototype dengan type linklist
class priority queue{
private:
            node*item;
public:
            void enqueue(int data);
            int dequeue();
            void priority(int index);
};


CONTOH PROGRAM STACK


#include <cstdlib>
#include <iostream>

using namespace std;

class Stack{
      public:
      Stack(){
              jum = 5;//jumlah array
              last = 0;
      }

      void push(int data){
           if(jum > last){
                  a[last] = data;
                  last = last + 1;
           }
      }

      int pop(){
          if(last > 0){
                     int temp = a[last - 1];
                     a[last - 1] = 0;
                     last = last - 1;
                     return temp;
          }
      }
      //untuk mencetak
      void print(){
           for(int i = 0; i < last; i++){
                   cout << a[i] << " ";
           }
      }
      //untuk mendeklarasikan
      private:
      int a[5];
      int jum;
      int last;
};

int main(int argc, char *argv[])
{
    Stack x;
    x.push(2);//untuk memasukkan data(2)
    x.push(4);
    x.push(11);
    x.push(5);
    x.push(7);
    x.push(9);
    x.push(30);
    x.print();
    cout<<endl;

    x.pop();//untuk mengeluarkan data(2)sehingga dibuang tidak ditampilkan
    x.print();
    cout<<endl;
    x.pop();
    x.print();
    cout<<endl;
    x.pop();
    x.print();
    cout<<endl;
    x.pop();
    x.pop();
    x.pop();
    x.print();
    cout<<endl;

    system("PAUSE");
    return EXIT_SUCCESS;
}

PROGRAM ANTRIAN BERUPA INPUTAN HURUF ATAUPUN ANGKA


#include <cstdlib>
#include <iostream>
#define maks 6
using namespace std;

class Queue{
      friend ostream& operator<<(ostream&, const Queue&);
public:
       Queue();
       int penuh(int);
       int kosong(int);
       void cetak();
       void enqueue(char);
       char dequeue();
private:
        char A[maks];
        int banyak;
};

ostream& operator<<(ostream& out, const Queue& s)
{out << "\nIsi Queue : ";
     for(int i=0; i<s.banyak; i++){
     out << s.A[i] << " ";
}
}
Queue::Queue(){
               banyak=0;
               for(int i=0; i<maks; i++){
               A[i]='O';
}
}
int Queue::penuh(int s){
    return s==maks?1:0;
}
int Queue::kosong(int s){
    return s==0?1:0;
}
void Queue::cetak(){
     cout << "\nIsi queue : ";
     for(int i=0; i<banyak; i++){
     cout << A[i] << " ";
}
}

void Queue::enqueue(char x){
     cout << "\nElemen : " << x << " masuk antrian";
     if(penuh(banyak)){
     cout << "Antrian Penuh";
}
 else if(A[0]==0){
      A[0]=x;
      banyak++;
}
 else{
      for(int i=banyak; i>=0; i--)
         A[i+1]=A[i];
      A[0]=x;
      banyak++;
 }
}
char Queue::dequeue(){
     char temp=A[--banyak];
     cout << "\nDequeue elemen --> " << temp;
     A[banyak]='O';
     return temp;
}
  
int main(int argc, char *argv[])
{
    Queue q;
    char c;
    for(int i=0; i<=7; i++){
            cout <<endl<<"Masukan Inputan huruf : ";cin>>c;
            q.enqueue(c);
            cout << q;
            if(i==6){
            char p=q.dequeue();

 q.cetak();
 cout << endl;
}
}
//char p=q.dequeue();
//q.cetak();
 //q.enqueue(c);
// q.cetak();
 cout << endl;

 cout << "Cetak menggunakan Overloading : " <<q<<endl;

 system("PAUSE");
return EXIT_SUCCESS;
}

PROGRAM UNTUK MENCARI TINGGI SUATU BENDA


#include <cstdlib>
#include <iostream>
using namespace std;

void ketinggiansuatubenda (){
float gravitasi,waktu;
cout<<"Masukan nilai gravitasi yang diketahui =....";
cin>>gravitasi; cout<<"m/s2"<<endl;
cout<<"Masukan nilai waktu yang diketahui =....";
cin>>waktu; cout<<"sekon"<<endl;
cout<<"Ternyata nilai ketinggian benda tersebut adalah: "<<gravitasi*waktu*waktu/2<< " meter " <<endl;
}
int main(int argc, char *argv[])
{       ketinggiansuatubenda() ;
           
   
    system("PAUSE");
    return EXIT_SUCCESS;
}