Rabu, 10 Maret 2010

Sistem pengobatan naturopati memperkenalkan jus kentang sebagai terapi untuk mengatasi gangguan pencernaan, termasuk asam lambung. Kentang mengandung banyak vitamin dan nutrisi yang bermanfaat bagi kesehatan tubuh.

Studi yang dilakukan terhadap 10 orang penderita gangguaan pencernaan kronis membuktikan hal itu. Delapan orang menyatakan kondisinya membaik setelah mengonsumsi segelas jus kentang sehari selama satu pekan.

Penelitian serupa dilakukan empat universitas di Jerman dan Australia. Mayoritas penderita gangguan pencernaan sembuh setelah melakukan terapi jus kentang selama 12 pekan. Mereka mengonsumsi 100 mililiter jus kentang setengah jam menjelang sarapan dan sebelum tidur malam.

Hasil penelitian menunjukkan bahwa sayur dengan nama latin potato solanum tuberosum itu mengandung zat alkaloid yang berfungsi sebagai penetral asam. Dalam penelitian lanjutan, kentang juga bermanfaat untuk mencegah penyakit ginjal, jantung dan penyebaran sel kanker.

Konsumsilah jus kentang dalam takaran yang wajar agar Anda memperoleh manfaatnya. Hindari mengolah daging kentang yang masih muda atau berwarna kehijauan, karena mengandung racun solanin yang dapat menyebabkan mual, muntah, dan diare. Hindari juga memasukkan tunas-tunas kentang yang menempel ke dalam olahan jus.

/id.news.yahoo.com

Senin, 08 Maret 2010

DEKLARASI DATA

Deklarasi Data

  • Jenis data konstanta dan variabel harus didefinisikan dalam program sehingga :
    • operasi yang tepat dapat dijalankan pada nilai data dan
    • Jumlah ruang penyimpanan yang tepat bisa ditentukan
  • Statement untuk mendefinisikan jenis data disebut declarative statement
  • Beberapa bahasa pemrograman memiliki sintaks pendeklarasian yang berbeda
  • Beberapa contoh program (pendeklarasian data) yang akan diberikan ditulis dalam pseudo-code




8

Contoh

Constants

pi = 3.141592654

Variables

i, qty : integer

harga_satuan, harga_beli : real

status : boolean

nama : character(25)


sumber:

http://74.125.153.132/search?q=cache:VuXESE5JZD0J:openstorage.gunadarma.ac.id/handouts/D3_TK/PDE/Struktur%2520Data.ppt+struktur+data&cd=5&hl=id&ct=clnk&gl=id

ARRAY MULTI DIMENSI

Tipe apapun bisa digunakan sebagai tipe dasar suatu array. Kita bisa membuat array int, array String, array Object dan seterusnya. Terutama, karena array adalah tipe Java kelas satu, kita bisa membuat array yang bertipe array.

Misalnya suatu array bertipe int[], juga otomatis memiliki array bertipe int[][], yaitu "array bertipe array int". Array tersebut disebut array 2 dimensi. Tentunya, dengan tipe int[][], kita juag bisa membuat arraynya dengan tipe int[][][], yang merupakan array 3 dimensi, dan seterusnya. Tidak ada batasan berapa dimensi array yang kita buat, akan tetapi bukan sesuatu yang biasa dilakukan untuk membuat array lebih dari 3 dimensi. Pembahasan kita akan lebih dikhususkan pada array 2 dimensi. Tipe TipeDasar[][] biasanya dibaca "array 2 dimensi bertipe TipeDasar" atau "array dari array TipeDasar".

Deklarasi pernyataan "int[][] A;" adalah membuat variabel bernama A dengan tipe int[][]. Variabel ini berisi objek yang bertipe int[][]. Pernyataan pemberian nilai "A = new int[3][4];" akan membuat objek array 2 dimensi dan mengisi A ke objek yang baru dibuat tersebut.

Seperti biasa, deklarasi dan pemberian nilai bisa digabung menjadi satu pernyataan, seperti "int[][] A = new int[3][4];". Objek yang baru dibuat adalah objek yang merupakan array dari array int. Bagian int[3][4] menyatakan bahwa ada 3 array int di dalam array A, dan di setiap array int tersebut terdapat 4 int.


SUMBER:

http://java.lyracc.com/belajar/java-untuk-pemula/array-multi-dimensi

Jumat, 05 Maret 2010

Organisasi Struktur Data

Organisasi Berkas (File)

  • Sekuensial
    • Record disimpan dalam file secara beruntun berdasarkan kedatangannya
    • Record yang masuk pertama akan memiliki indeks atau alamat yang lebih kecil daripada record yang masuk kemudian
  • Langsung
  • Sekunsial Berindeks




File Langsung

  • Dengan organisasi ini, untuk menemukan suatu record, maka tidak melalui proses pencarian, namun langsung menuju ke alamat yang ditempati record
  • Contoh: record dengan key 100 akan disimpan pada alamat 100
  • Kerugian: berarti harus ada ruang yang cukup besar untuk menampung semua kemungkinan key yang ada.
  • Contoh: jika key berupa NIM (8 digit) berarti harus ada alamat 0000000 sampai 9999999


http://74.125.153.132/search?q=cache:I-c5I1toHhEJ:lecturer.ukdw.ac.id/anton/download/TIstrukdat12.ppt+organisasi+stack&cd=5&hl=id&ct=clnk&gl=id

Kamis, 04 Maret 2010

Array Dimensi Banyak



spasissss


spasi

Apabila batas interval indek array tidak ditentukan, maka hal ini berarti array merupakan array dua dimensi dengan sifat dinamis. Namun apabila anda menentukan batas interval tersebut, maka itu berarti merupakan array dua dimensi dengan sifat statik.
Apabila anda memilih array dengan sifat atau karakteristik yang dinamis, maka setiap kali sebelum menggunakan array tersebut anda harus inisialisasi indek array tersebut dengan prosedur SetLength.
Didalam artikel ini nanti akan dijelaskan dengan menggunakan array yang dinamis.

spasi

Contoh penulisan pendeklarasian array:

spasi

NamaMantan : arrayof array of string;// Array dinamis

spasi

NamaMantan : array[0..11] of array[0..5] of string; // Array Statik

spasi

LINEAR LIST

Linear Lists (daftar)

Definition Definisi

L contoh dari tipe data parameterized daftar adalah urutan item (daftar :: item). Setiap item dalam L berisi tipe data elemen E, yang disebut elemen atau tipe nilai L. Jumlah item dalam L disebut panjang L. Jika L memiliki panjang nol itu disebut daftar kosong. Dalam sekuel digunakan untuk menunjukkan suatu item daftar berisi elemen x dan L [i] digunakan untuk menunjukkan isi dari item daftar i dalam L.

#include <> # include

Types Jenis

list::item daftar :: item the item type. jenis item.
list::value_type daftar :: value_type the value type. jenis nilai.

Creation Penciptaan

list daftar L L creates an instance L of type list < E > and initializes it to the empty list. menciptakan contoh tipe L daftar dan menginisialisasi ke daftar kosong.

Operations Operasi

Access Operations Operasi akses

int int L.length() L.length () mengembalikan panjang L.
int int L.size() L.size () kembali L. panjang ().
bool bool L.empty() L.empty () mengembalikan nilai true jika L adalah kosong, palsu sebaliknya.
list_item list_item L.first() L.first () mengembalikan item pertama L (nil jika L adalah kosong).
list_item list_item L.last() L.last () mengembalikan item terakhir L. (nil if L is empty) (nil jika L kosong)





list_item list_item L.succ(list_item it) L.succ (list_item itu) mengembalikan item pengganti barang itu, nil jika itu = L. terakhir ().
Prasyarat itu adalah salah satu item dalam L.
list_item list_item L.pred(list_item it) L.pred (list_item itu) mengembalikan item item pendahulu itu, nil jika itu = L. pertama ().
Prasyarat itu adalah salah satu item dalam L.
list_item list_item L.cyclic_succ(list_item it) L.cyclic_succ (list_item itu)


returns the cyclic successor of item it , ie, L .first() if it = L .last(), L .succ( it ) otherwise. mengembalikan item penerus siklik itu, yaitu, L. pertama () jika itu = L. terakhir (), L. succ (itu) sebaliknya.
list_item list_item L.cyclic_pred(list_item it) L.cyclic_pred (list_item itu)


returns the cyclic predecessor of item it , ie, L .last() if it = L .first(), L .pred( it ) otherwise. mengembalikan item siklik pendahulunya itu, yaitu, L. terakhir () if it = L. pertama (), L. Pred (itu) sebaliknya.
const E& const E & L.contents(list_item it) L.contents (list_item itu) returns the contents L [ it ] of item it . mengembalikan isi L [it] item itu.
Precondition it is an item in L . Prasyarat itu adalah salah satu item dalam L.
const E& const E & L.inf(list_item it) L.inf (list_item itu) returns L .contents( it ). kembali L. isinya (itu).
const E& const E & L.front() L.front () returns the first element of L , ie the contents of L .first(). mengembalikan elemen pertama dari L, yaitu isi L. pertama ().
Precondition L is not empty. Prasyarat L tidak kosong.
const E& const E & L.head() L.head () same as L . front (). sama seperti L. depan ().
const E& const E & L.back() L.back () returns the last element of L , ie the contents of L .last(). mengembalikan elemen terakhir dari L, yaitu isi L. terakhir ().
Precondition L is not empty. Prasyarat L tidak kosong.
const E& const E & L.tail() L.tail () same as L . back (). sama seperti L. kembali ().
int int L.rank(const E& x) L.rank (const E & x) returns the rank of x in L , ie its first position in L as an integer from [1...| L |] (0 if x is not in L ). Note that this takes time linear in rank ( x ). Precondition operator== has to be defined for type E . mengembalikan pangkat dari x dalam L, yaitu posisi pertama dalam L sebagai sebuah integer dari [1 ... | L |] (0 jika x adalah tidak dalam L). Perhatikan bahwa membutuhkan waktu linear ini pangkat (x). Persyaratan == operator harus ditentukan untuk tipe E.











APLIKASI STACK

Operasi-operasi Stack

Dalam penggunaannya suatu stack memiliki beberapa operasi yang dapat diterapkan seperti membuat stack, penambahan eleme ke dalam stack, menghapusan elemen dari dalam stack, dan operasi lain yang berhubungan dengan stack tersebut. Adapun operasi-operasi dasar dari suatu stack adalah :

a) Create(Stack)

Operasi Create(Stack) digunakan untuk membuat suatu stack baru dengan nama stack, yang nilai elemen saat stack tersebut dibuat adalah NOEL(S) = 0, TOP(S) = NULL (tidak terdefinisikan)

b) IsEmpty(Stack)

Operasi ini merupakan operasi untuk mencek isi dari suatu stack dalam keadaan kosong atau berisi. Operasi ini memiliki 2 (dua) kondisi boolean yaitu :

a. True jika stack tersebut kosong atau dapat dikatakan NOEL(S) = 0

b.False jika stack tersebut tidak dalam kondisi kosong atau dapat dikatakan NOEL(S) > 0



Implementasi algoritma Stack

Pada bahasa pemrograman PASCAL suatu stack didefinisikan dalam bentuk algoritma, hal ini dimaksudkan untuk mendapatkan hasil yang optimal dan terarah saat program tersebut di rancang dan digunakan. Dari teori tentang penggunaan stack dalam struktur data sebelumnya, suatu stack memiliki dua informasi penting yaitu adanya TOP(S) yang berisikan informasi isi untai dalam bentuk karakter dan NOEL(S) yang berisikan informasi jumlah untai yang bernilai integer dari stack tersebut.

Pada implementasinya, kedua informasi tersebut dikemas dalam bentuk record yang memuat array (larik) untuk membatasi isi dari stack, dan memberikan nilai indeks atas informasi yang masuk dalam stack tersebut pada saat dilakukan operasi. Adapun secara algoritma stack tersebut di bentuk sebagai :

Const

NoelStack = 80;

Type

Eon = Char;

Stack = Record

Top : Array [ 1 .. NoelStack] of Eon;

Noel : 0 .. NoelStack;

End;

Dari algoritma tersebut di atas, isi dari stack dapat menampung 80 karakter yang dikemas dalam bentuk record dengan nama stack.

Setelah algoritma yang memuat informasi dasar dari stack didefinisikan, pembentukan algoritma untuk operasi terhadap stack dapat disusun dalam bentuk prosedur dan fungsi yang dibuat sendiri. Adapun algoritma yang digunakan untuk operasi suatu stack adalah :

1) Algoritma Create(S)

Algoritma ini memuat suatu prosedur untuk membuat stack, yang memberikan kondisi noel dari stack akan bernilai nol dan top dari stack tersebut belum dapat didefinisikan, sehingga implementasi dari algoritma create stack adalah ;

Procedure Create(var S : Stack);

Begin

S.Noel := 0;

End;

2) Algoritma IsEmpty(S)

Algoritma untuk operasi Isempty memberikan informasi Boolean yaitu kondisi benar (true) atau salah (False), sehingga pada implementasinya algoritma ini menggunakan fungsi yang dibuat sendiri, yang terimplementasi sebagai berikut :

Function IsEmpty(Var S : Stack) : Boolean;

Begin

IsEmpty := S.Noel = 0

End;

3) Algoritma Push(S, E)

Dalam merancang algoritma untuk operasi push dimulai dengan melakukan pengecekan atas isi dari stack tersebut dalam keadaan penuh atau tidak. Kondisi stack dalam keadaan maksimum akan mengakibatkan overflow pada stack tersebut sehingga prosedur error trapping perlu didefinisikan untuk mencegah terjadinya overflow condition tersebut. Adapun implementasi dari algoritma push tersebut adalah :

Procedure Push(Var S : Stack; TipeBAru : Eon);

Begin

If S.Noel = NoelStack Then

Stackerror(1)

Else

Begin

S.Noel := S.Noel + 1;

S.Top[S.Noel] := TipeBaru

End

End;

4) Algoritma Pop(S)

Operasi terakhir dari stack adalah operasi pop yang berfungsi untuk mengeluarkan isi dari dalam stack. Seperti halnya operasi push, pada operasi pop penggunaan error trapping dipakai untuk mencek kondisi underflow yaitu kondisi stack kosong yang dikenakan operasi pop. Algoritma dari pop ini adalah :

Procedure Pop(Var S : Stack; Var NilaiStack : Eon);

Begin

If S.Noel = 0 Then

StackError(2)

Else

Begin

NilaiStack := S.Top[s.Noel];

S.Noel := S.Noel -1

End

End;

Penggunaan error trapping untuk operasi push dan pop didefinisikan lebih lanjut dalam algoritma stackerror yang digunakan untuk menentukan kondisi overflow atau underflow suatu stack. Adapun algoritma dari error trapping ini adalah ;

Procedure StackError(TingkatanError : Integer);

Begin

Case TingkatanError of

1 : WriteLn(‘Isi Stack sudah penuh... kondisi overflow’);

2 : WriteLn(‘Isi Stack Kosong ... kondisi underflow’)

End

End;


SUMBER

http://mugi.or.id/blogs/oke/archive/2008/08/27/aplikasi-stack-pada-struktur-data-untuk-mengkonversikan-notasi-infix-menjadi-notasi-postfix.aspx