1. Apa perbedaan Primary Key dan Foreign Key ?
Rabu, 08 April 2015
SISTEKBD Modul 2
1. Apa perbedaan Primary Key dan Foreign Key ?
Data Base Manajemen Sistem Modul 1 (SISTEKBD)
Algoritma modul 9
MODUL 9
ANTRIAN (QUEUE)
I. Dasar Teori
Antrian (queue) adalah duatu kumpulan data yang penambahan elemennya hanya bisa dilakukan pada suatu ujung ( disebut dengan sisi belakang atau rear ), dan penghapusan atau pengambilan elemen dilakukan lewat ujung yang lain ( disebut atau sisi depan atau front ) . antrian ( queue ) mempunyai prinsip FIFO ( First In First Out ) bahwa yang pertama masuk yang pertama keluar.
Operasi dasar queue
- Create Queue
- Untuk menciptakan dan menginisialisasi queue
- Dengan cara membuat Head dan Tail = -1
- Bentuk umum :Void create ( )
{
Antrian.Head = -1;
Antrian.head = -1;
} - Empty Queue
- Untuk memeriksa apakah antrian sudah penuh atau belum
- Dengan memeriksa nilai tail, jika Tail = -1 maka empty
- Kita tidak memeriksa head, karena head adalah tanda untuk kepala antrian ( elemen pertama dalam antrian ) yang tidak akan berubah-ubah
- Peergerakan pada antrian terjadi dengan penambahan elemen antria kebelakang, yaitu menggunakan nilai Tail.
- Bentuk umum :Void IsEmpty ( )
{
If (antrian.tail = -1)
Return 1;
Else
Return 0;
} -
-
Full Queue
- Untuk mengecek apakah antrian sudah penuh atau belum
- Dengan cara mengecek nilai Tail, jika tail >= MAX-1 (karena MAX-1 adalah batas elemen array pada C) berarti sudah penuh
- Bentuk umum :void isfull ( )
{
if (antrian.tail = max-1)
return 1;
else
return 0;
} -
-
Enqueue
- Untuk menambahkan elemen kedalam antrian, penambahan elemen selalu ditambahkan di elemen paling belakang
- Penambahan selalu menggerakan variabel tail dengan cara increment counter tail terlebih dahulu
- Bentuk umum :void enqueue (int data)
{
if (isempty ( ) = 1) {
antrian.head=antrian.tail=0;
antrian.data[antrin.tail] =data;
printf(“%d,masuk”,antrian.data[antrian.tail] );
}
else
if (isfull ( ) = 0) {
antrian.tail++;
antrian.data[antrian.tail]=data;
printf(“%d,masuk”,antrian.data[antrian.tail] );
} -
-
Dequeue
- Digunakan untuk menghapus elemen terdepan/pertama (head) dari antrian
- Dengan cara menggeser semua elemen antrian kedepan dan mengurangi tail dengan 1
- Pergeseran dilakukan dengan menggunakan looping
- Bentuk umum :int dequeue ( )
{
int i;
int e = antrian.data[antrian.head];
for (i=antrian.head;i<=antrian.tail;i++)
{
antrian.data[i]=antrian.data[i+1];
}
antrian.tail--;
return e;
} -
-
Clear queue
- Untuk menghapus elemen elemen antrian dengan cara membuat tail dan Head = -1
- Penghapusan elemen-elemen antrian sebenarnya tidak menghapus arraynya, namun hamya mengeset indeks pengaksesannya ke nilai -1 sehingga elemen-elemen antrian tidak lagi terbaca
- Bentuk umum :void clear ( )
{
antrian.head = -1;
antrian.tail = -1;
printf(“data clear”);
} -
-
Tampil queue
- Untuk menampilkan elemen elemen antrian
- Menggunakan looping dan head s/d tail
- Bentuk umum :Void clear ( )
{
Antrian.head = -1;
Antrian.tail = -1;
Printf(“data clear”);
}
II. Praktikum
Untuk praktikum, klik aja link di bawah ini :
https://www.scribd.com/doc/261308241/Praktikum-modul9
III. Tugas Modul 6
Untuk tugas, klik aja link di bawah ini :
https://www.scribd.com/doc/261308340/Tugas-Modul9
Catatan : Jangan asal CoPas aja ya,,,harus dipelajari lebih dalam...!!!hehe...
Algoritma modul 8
MODUL 8
TUMPUKAN (STACK)
I. Dasar Teori
Stack bisa diartikan sebagai suatu kumpulan data yang seolah-olah diletakan diatas data yang lain. Satu hal yang perlu diingat bahwa kita bisa menambah (menyisipkan) data dan mengambil (menghapus) data melalui ujung yang sama, yang disebut sebagai ujung atas stack ( top of stack ). Stack mempunyai sifat LIFO ( LAST IN FIRST OUT ) yang terakhir masuk adalah yang pertama keluar.
Ada beberapa operasi dasar dalam stack, yaitu menyisipkan data (push), operasi menghapus data (pop) dan lainnya. Berikut ini beberapa operasi dalam stack :
- Push : digunakan untuk menambah item pada stack pada tumpukan paling atas
- Pop : digunakan untuk mengambil item pada stack pada tumpukan paling atas
- Clear : digunakan untuk mengosongkan stack
- IsEmpty : fungsi yang digunakan untuk mengecek apakah stack sudah kosong
- IsFull : fungsi yang digunakan untuk mengecek apakah stack sudah penuh.
Bentuk umum STACK
Contoh deklarasi MAX_STACK
#define MAX_STACK 10 |
Contoh deklarasi STACK dengan struct dan array data
Typedef struct STACK |
Deklarasi/buat variabel dari struct
STACK tumpuk; |
Inisialisasi STACK
- Pada mulanya isi top dengan -1,karena array dalam bahasa C dimulai dari 0, yang berarti bahwa data dalam stack adalah KOSONG!
- Top adalah suatu variabel penanda dalam stack yang menunjukan elemen teratas data stack sekarang.
- Bentuk umum :
void inisialisasi ( )
{
tumpuk.top = -1;
}
Fungsi isFull
- Untuk memeriksa apakah stack sudah penuh?
- Dengan cara memeriksa top of stack, jika sudah sama dengan MAX_STACK -1 maka full
- Bentuk umum :
Int isFull ( )
{
If (tumpuk.top == MAX_STACK -1)
Return 1;
Else
Return 0;
}
Fungsi isEmpty
- Untuk memeriksa apakah data stack masih kosong?
- Dengan cara memeriksa top of stack, jika masih -1 maka data stack masih kosong!
- Bentuk umum :
Int isEmpty ( )
{
If (tumpuk.top == -1)
Return 1;
Else
Return 0;
}
Fungsi Push
- Untuk memasukan data kedalam stack.
- Jika data belum penuh,
- Tambah satu (increment) nilai top of stack lebih dahulu setiap kali ada penambahan kedalam array data stack.
- Isikan data baru kedalam stack berdasarkan top of stack yang telah di increment sebelumnya. - Jika tidak, outputkan “penuh”
- Bentuk umum :
Void push ( char d[10] )
{
Tumpuk.top++;
Strcpy (tumpuk.data [tumpuk.top].d);
} - Untuk mengambil data stack yang terletak paling atas (data yang ditunjuk oleh TOP).
- Tampilkan terlebih dahulu nilai elemen teratas stack dengan mengakses indeks sesuai dengan top of stacknya, baru dilakukan di-decrement nilai top of stacknya sehingga jumlah elemen stack berkurang.
- Bentuk umum :
void pop ( )
{
Printf(“data terambil = %s\n”, tumpuk.data[tumpuk.top] );
Tumpuk.top--;
}
Fungsi Pop
II. Praktikum
Untuk praktikum, klik aja link di bawah ini :
https://www.scribd.com/doc/261307836/Praktikum-modul8
III. Tugas Modul 6
Untuk tugas, klik aja link di bawah ini :
https://www.scribd.com/doc/261308014/Tugas-Modul8
Catatan : Jangan asal CoPas aja ya,,,harus dipelajari lebih dalam...!!!hehe...
Algoritma modul 7
STRUKYUR (STRUCT)
Struktur adalah sekumpulan variabel yang masing-masing tipe datanya bisa berbeda, namun dikelompokan kedalam satu nama. Dalam C++ struktur sering diistilah kan sebagai struct.
Deklarasi
Ada dua cara mendeklarasikan struktur, yaitu :
Deklarasi 1 : | Deklarasi 2 : |
Struct nama_struct { Tipe_data nama_var; Tipe_data nama_var; . . . . . . } ; |
Struct nama_struct { Tipe_data nama_var; Tipe_data nama_var; . . . . . . } nama struktur ; |
Struct mahasiswa { Char NIM [8] Char Nama [50] Float ipk; } |
Struct mahasiswa { Char NIM [8] Char Nama [50] Float ipk; } mhs; |
Untuk mengakses sebuah elemen dalam sebuah struct digunakan operator titik (.)
Sintaks :
Nama_Struktur . Nama_var;
|
Sebuah kondisi dimana di dalam sebuah struct terdapat tipe data berupa struct lagi
Bentuk :
Struct nama_struktur2 { Tipe_data nama_var; Tipe_data nama_var; Struct nama_struktur1 Nama_var; . . . . . . } |
Apabila hendak menggunakan 1 struct untuk beberapa kali, ada dua cara :
- Deklarasi Manual
- Array of struct
II. Praktikum
Untuk praktikum, klik aja link di bawah ini :
https://www.scribd.com/doc/261307323/Praktikum-modul7
III. Tugas Modul 7
Catatan : Jangan asal CoPas aja ya,,,harus dipelajari lebih dalam...!!!hehe...