Pengertian tipe data Boolean
Tipe data Boolean
Pemrograman Dasar
Kamis, 09 Februari 2017
Pengertian tipe data Boolean
Tipe data Boolean:merupakan tipe data logika,yang
berisi dua kemungkinan nilai:TRUE(benar) atau FALSE(salah).
Turbo Pascal for Windows memiliki tiga macam jenis ini
yaitu:Boolean,WordBool,dan LongBool.Tipe Boolean memakai memori paling
kecil,sedangkan WordBool dan LongBool di pakai untuk menulis program yang
sesuai dengan lingkungan Windows.
Boolean sangat penting dalam mengevaluasi suatu
kondisi, dan sering digunakan untuk menentukan alur program.
Dalam bahasa pemrograman yang memiliki built-in tipe
data Boolean, seperti Pascal dan Java, operator perbandingan seperti '>' dan
'≠' biasanya ditetapkan untuk mengembalikan nilai Boolean. Juga, perintah
bersyarat dan berulang dapat didefinisikan untuk menguji ekspresi Boolean
bernilai.
Bahasa tanpa tipe data Boolean eksplisit, seperti C dan Lisp, masih dapat mewakili nilai-nilai kebenaran dengan beberapa jenis data lainnya. Lisp menggunakan daftar kosong untuk false, dan nilai lain untuk benar. C menggunakan tipe integer, di mana ekspresi relasi seperti ungkapan i> j dan logis dihubungkan oleh & & dan | | didefinisikan memiliki nilai 1 jika benar dan 0 jika salah, sedangkan bagian uji jika, sementara, untuk, dll, mengobati setiap nilai bukan nol sebagai benar [1] [2] Memang,. sebuah variabel Boolean dapat dianggap (dan dilaksanakan) sebagai variabel numerik dengan (sedikit) satu digit biner, yang dapat menyimpan hanya dua nilai.
Kebanyakan bahasa pemrograman, bahkan mereka yang tidak memiliki tipe Boolean eksplisit, memiliki dukungan untuk operasi aljabar Boolean seperti bersama (DAN, &, *), disjungsi (OR, |, +), kesetaraan (EQV, =, ==) , eksklusif atau / non-kesetaraan (XOR, NEQV, ^, =!), dan tidak (TIDAK, ~,!).
Dalam beberapa bahasa, tipe data Boolean didefinisikan untuk menyertakan lebih dari dua nilai kebenaran. Sebagai contoh ISO SQL 1999 standar yang ditetapkan nilai Boolean sebagai bisa benar, palsu, atau tidak diketahui (SQL null). Meskipun konvensi ini menentang hukum dikecualikan tengah, sering berguna dalam pemrograman.
Dalam model lambda kalkulus komputasi, nilai Boolean dapat diwakili sebagai boolean Gereja.
Bahasa tanpa tipe data Boolean eksplisit, seperti C dan Lisp, masih dapat mewakili nilai-nilai kebenaran dengan beberapa jenis data lainnya. Lisp menggunakan daftar kosong untuk false, dan nilai lain untuk benar. C menggunakan tipe integer, di mana ekspresi relasi seperti ungkapan i> j dan logis dihubungkan oleh & & dan | | didefinisikan memiliki nilai 1 jika benar dan 0 jika salah, sedangkan bagian uji jika, sementara, untuk, dll, mengobati setiap nilai bukan nol sebagai benar [1] [2] Memang,. sebuah variabel Boolean dapat dianggap (dan dilaksanakan) sebagai variabel numerik dengan (sedikit) satu digit biner, yang dapat menyimpan hanya dua nilai.
Kebanyakan bahasa pemrograman, bahkan mereka yang tidak memiliki tipe Boolean eksplisit, memiliki dukungan untuk operasi aljabar Boolean seperti bersama (DAN, &, *), disjungsi (OR, |, +), kesetaraan (EQV, =, ==) , eksklusif atau / non-kesetaraan (XOR, NEQV, ^, =!), dan tidak (TIDAK, ~,!).
Dalam beberapa bahasa, tipe data Boolean didefinisikan untuk menyertakan lebih dari dua nilai kebenaran. Sebagai contoh ISO SQL 1999 standar yang ditetapkan nilai Boolean sebagai bisa benar, palsu, atau tidak diketahui (SQL null). Meskipun konvensi ini menentang hukum dikecualikan tengah, sering berguna dalam pemrograman.
Dalam model lambda kalkulus komputasi, nilai Boolean dapat diwakili sebagai boolean Gereja.
SEJARAH
BOOLEAN
Salah satu bahasa yang paling awal untuk memberikan
tipe data Boolean yang eksplisit adalah ALGOL 60 (1960) dengan operator nilai
benar dan palsu dan logis dinotasikan dengan simbol '\ wedge' (dan), '\ vee'
(atau), '\ supset' ( berarti), '\ equiv' (kesetaraan), dan '\ neg' (tidak).
Karena keterbatasan perangkat input waktu, namun, kompiler paling banyak
digunakan representasi alternatif untuk yang terakhir, seperti DAN atau 'DAN'.
Pendekatan ("Boolean adalah terpisah built-in tipe data primitif")
diadopsi oleh bahasa banyak kemudian, seperti ALGOL 68 (1970) [3], Jawa, dan C
#.
Versi pertama dari FORTRAN (1957) dan penggantinya FORTRAN II (1958) tidak memiliki nilai logis atau operasi, bahkan pernyataan kondisional JIKA mengambil sebuah ekspresi aritmatika dan bercabang ke salah satu dari tiga lokasi sesuai dengan tandanya. FORTRAN IV (1962), namun, mengikuti ALGOL 60 misalnya dengan menyediakan tipe data Boolean (LOGIS), literal kebenaran (TRUE.. Dan. FALSE.), Bernilai Boolean operator perbandingan numerik (. EQ., GT.., dll), dan operator logika (TIDAK.., DAN..,. ATAU.). Dalam laporan FORMAT, karakter kontrol tertentu ('L') diberikan untuk parsing atau format nilai logis. [4]
Bahasa Lisp (1958) tidak pernah memiliki built-in tipe data Boolean. Sebaliknya, bersyarat konstruksi seperti COND berasumsi bahwa nilai logis "palsu" yang diwakili oleh daftar kosong (), yang didefinisikan untuk menjadi sama dengan atom khusus nihil atau NIL; sedangkan setiap s ekspresi-lain ditafsirkan sebagai "benar" . Untuk kenyamanan, sebagian dialek modern Lisp predefine t atom memiliki nilai t, sehingga kita dapat menggunakan t sebagai notasi mnemonik untuk "benar". Pendekatan ("nilai apapun dapat digunakan sebagai nilai Boolean") dipertahankan dalam dialek Lisp sebagian besar (Common Lisp, Scheme, Emacs Lisp), dan model serupa diadopsi oleh bahasa scripting banyak, bahkan yang memiliki tipe Boolean yang berbeda atau nilai-nilai Boolean; walaupun nilai-nilai yang diinterpretasikan sebagai "palsu" dan yang "benar" bervariasi dari bahasa ke bahasa. Dalam Skema, misalnya, "false" nilai adalah berbeda atom dari daftar kosong, sehingga yang terakhir ini ditafsirkan sebagai "benar". Pada Python, nilai numerik dari nol (integer atau pecahan), nilai null (Tidak ada), dan kontainer kosong (string yaitu, daftar, set, dll) dianggap salah Boolean; semua nilai-nilai lain dianggap Boolean benar secara default. Di Ruby, di sisi lain, hanya objek null dan benda palsu khusus adalah "false", segala sesuatu yang lain (termasuk integer 0 dan array kosong) adalah "benar". Dalam JavaScript, string "kosong", null, undefined, NaN, +0, -0, dan false [5] kadang-kadang disebut "falsy", dan mereka melengkapi, "truthy", untuk membedakan antara tipe-diperiksa secara ketat dan memaksa boolean. [6] Bahasa seperti PHP juga menggunakan pendekatan ini.
Standar awal untuk bahasa C (1972) tidak memberikan tipe Boolean, dan, sampai hari ini, nilai Boolean biasanya diwakili oleh bilangan bulat (int) dalam program C. Perbandingan operator ('>','==', dll) didefinisikan untuk mengembalikan signed integer (int) hasil, baik nol (untuk false) atau 1 (untuk yang benar). Konvensi yang sama diasumsikan oleh operator logika ('&&','||',, '!', Dll) dan pernyataan kondisi-testing ('jika', 'sementara'). Dengan demikian nilai-nilai logika dapat disimpan dalam variabel integer, dan digunakan di mana saja bilangan bulat akan berlaku, termasuk dalam pengindeksan, aritmatika, parsing, dan format. Pendekatan ("Boolean nilai hanya bilangan bulat") dipertahankan dalam semua versi C.
Versi pertama dari FORTRAN (1957) dan penggantinya FORTRAN II (1958) tidak memiliki nilai logis atau operasi, bahkan pernyataan kondisional JIKA mengambil sebuah ekspresi aritmatika dan bercabang ke salah satu dari tiga lokasi sesuai dengan tandanya. FORTRAN IV (1962), namun, mengikuti ALGOL 60 misalnya dengan menyediakan tipe data Boolean (LOGIS), literal kebenaran (TRUE.. Dan. FALSE.), Bernilai Boolean operator perbandingan numerik (. EQ., GT.., dll), dan operator logika (TIDAK.., DAN..,. ATAU.). Dalam laporan FORMAT, karakter kontrol tertentu ('L') diberikan untuk parsing atau format nilai logis. [4]
Bahasa Lisp (1958) tidak pernah memiliki built-in tipe data Boolean. Sebaliknya, bersyarat konstruksi seperti COND berasumsi bahwa nilai logis "palsu" yang diwakili oleh daftar kosong (), yang didefinisikan untuk menjadi sama dengan atom khusus nihil atau NIL; sedangkan setiap s ekspresi-lain ditafsirkan sebagai "benar" . Untuk kenyamanan, sebagian dialek modern Lisp predefine t atom memiliki nilai t, sehingga kita dapat menggunakan t sebagai notasi mnemonik untuk "benar". Pendekatan ("nilai apapun dapat digunakan sebagai nilai Boolean") dipertahankan dalam dialek Lisp sebagian besar (Common Lisp, Scheme, Emacs Lisp), dan model serupa diadopsi oleh bahasa scripting banyak, bahkan yang memiliki tipe Boolean yang berbeda atau nilai-nilai Boolean; walaupun nilai-nilai yang diinterpretasikan sebagai "palsu" dan yang "benar" bervariasi dari bahasa ke bahasa. Dalam Skema, misalnya, "false" nilai adalah berbeda atom dari daftar kosong, sehingga yang terakhir ini ditafsirkan sebagai "benar". Pada Python, nilai numerik dari nol (integer atau pecahan), nilai null (Tidak ada), dan kontainer kosong (string yaitu, daftar, set, dll) dianggap salah Boolean; semua nilai-nilai lain dianggap Boolean benar secara default. Di Ruby, di sisi lain, hanya objek null dan benda palsu khusus adalah "false", segala sesuatu yang lain (termasuk integer 0 dan array kosong) adalah "benar". Dalam JavaScript, string "kosong", null, undefined, NaN, +0, -0, dan false [5] kadang-kadang disebut "falsy", dan mereka melengkapi, "truthy", untuk membedakan antara tipe-diperiksa secara ketat dan memaksa boolean. [6] Bahasa seperti PHP juga menggunakan pendekatan ini.
Standar awal untuk bahasa C (1972) tidak memberikan tipe Boolean, dan, sampai hari ini, nilai Boolean biasanya diwakili oleh bilangan bulat (int) dalam program C. Perbandingan operator ('>','==', dll) didefinisikan untuk mengembalikan signed integer (int) hasil, baik nol (untuk false) atau 1 (untuk yang benar). Konvensi yang sama diasumsikan oleh operator logika ('&&','||',, '!', Dll) dan pernyataan kondisi-testing ('jika', 'sementara'). Dengan demikian nilai-nilai logika dapat disimpan dalam variabel integer, dan digunakan di mana saja bilangan bulat akan berlaku, termasuk dalam pengindeksan, aritmatika, parsing, dan format. Pendekatan ("Boolean nilai hanya bilangan bulat") dipertahankan dalam semua versi C.
Beberapa dialek yang, seperti C99 dan Objective-C,
memberikan definisi standar tipe Boolean sebagai sinonim dari int dan macro
untuk "palsu" dan "benar" sebagai 0, dan 1 masing-masing.
Visual Basic menggunakan pendekatan yang sama. C + + memiliki Boolean terpisah
tipe data ('bool'), tetapi dengan konversi otomatis dari nilai skalar dan pointer
yang sangat mirip dengan C. Pendekatan ini diadopsi juga oleh bahasa banyak
kemudian, terutama oleh beberapa orang scripting seperti AWK dan Perl. Satu
masalah dengan pendekatan ini adalah bahwa tes jika (t ){...} == TRUE dan jika
(t) tidak setara. Python memiliki situasi yang terkait, dimana tipe Boolean,
bool merupakan subtipe dari integer int jenis,, dan boolean bertindak benar dan
salah sebagai 0 dan 1, masing-masing, dalam konteks aritmatika.
Bahasa Pascal (1978) memperkenalkan konsep tipe enumerated programmer-didefinisikan. Built-in tipe data Boolean kemudian diberikan sebagai tipe enumerated yang telah ditetapkan dengan nilai-nilai FALSE dan TRUE. Menurut definisi, semua perbandingan, operasi logis, dan pernyataan bersyarat diterapkan untuk dan / atau menghasilkan nilai Boolean. Jika tidak, tipe Boolean memiliki semua fasilitas yang tersedia untuk tipe enumerated secara umum - seperti pemesanan dan digunakan sebagai indeks. Di sisi lain, konversi antara boolean dan bilangan bulat (atau jenis lainnya) masih diperlukan tes eksplisit atau pemanggilan fungsi, seperti pada ALGOL 60. Pendekatan ("Boolean adalah tipe enumerasi") diadopsi oleh bahasa yang paling kemudian yang telah disebutkan jenis, seperti Modula, Ada dan Haskell.
Setelah tipe enumerated (enum ''s) ditambahkan ke versi ANSI C (1989), banyak programmer C terbiasa untuk mendefinisikan jenis mereka sendiri Boolean seperti itu, karena alasan mudah dibaca. Namun, tipe enumerated yang setara dengan bilangan bulat sesuai dengan standar bahasa, sehingga identitas yang efektif antara boolean dan integer tetap berlaku bagi program C.
Bahasa Pascal (1978) memperkenalkan konsep tipe enumerated programmer-didefinisikan. Built-in tipe data Boolean kemudian diberikan sebagai tipe enumerated yang telah ditetapkan dengan nilai-nilai FALSE dan TRUE. Menurut definisi, semua perbandingan, operasi logis, dan pernyataan bersyarat diterapkan untuk dan / atau menghasilkan nilai Boolean. Jika tidak, tipe Boolean memiliki semua fasilitas yang tersedia untuk tipe enumerated secara umum - seperti pemesanan dan digunakan sebagai indeks. Di sisi lain, konversi antara boolean dan bilangan bulat (atau jenis lainnya) masih diperlukan tes eksplisit atau pemanggilan fungsi, seperti pada ALGOL 60. Pendekatan ("Boolean adalah tipe enumerasi") diadopsi oleh bahasa yang paling kemudian yang telah disebutkan jenis, seperti Modula, Ada dan Haskell.
Setelah tipe enumerated (enum ''s) ditambahkan ke versi ANSI C (1989), banyak programmer C terbiasa untuk mendefinisikan jenis mereka sendiri Boolean seperti itu, karena alasan mudah dibaca. Namun, tipe enumerated yang setara dengan bilangan bulat sesuai dengan standar bahasa, sehingga identitas yang efektif antara boolean dan integer tetap berlaku bagi program C.
Boolean dlm
versi terbaru dari Python, benda yang ditetapkan pengguna dapat menentukan
nilai kebenaran mereka dengan memberikan metode __bool__. [7]
Pada standar 1999, SQL yang ditetapkan tipe data Boolean dengan empat nilai yang mungkin: true, false, tidak diketahui atau null. Namun, vendor dapat memilih untuk menyamakan dua nilai terakhir [8].. Karena inkonsistensi ini kebanyakan implementasi SQL (dengan pengecualian dari Postgresql) [9] menggunakan tipe data lain (seperti bit, byte, dan karakter) untuk mensimulasikan nilai Boolean.
Pada standar 1999, SQL yang ditetapkan tipe data Boolean dengan empat nilai yang mungkin: true, false, tidak diketahui atau null. Namun, vendor dapat memilih untuk menyamakan dua nilai terakhir [8].. Karena inkonsistensi ini kebanyakan implementasi SQL (dengan pengecualian dari Postgresql) [9] menggunakan tipe data lain (seperti bit, byte, dan karakter) untuk mensimulasikan nilai Boolean.
Kesimpulan:
·
Tipe data Boolean mengandung nilai
dua-negara seperti benar / salah, ya / tidak, atau on / off.
Nilai default dari Boolean adalah False.
Jenis Konversi
Ketika Visual Basic mengkonversi nilai numerik ke tipe data Boolean, 0 menjadi Palsu dan semua nilai lain menjadi True. Ketika Visual Basic mengkonversi nilai Boolean untuk tipe numerik, Palsu dan Sejati menjadi 0 menjadi -1.
Bila Anda mengkonversi antara nilai-nilai boolean dan tipe data numerik, perlu diingat bahwa NET Framework. metode konversi tidak selalu menghasilkan hasil yang sama seperti kata kunci konversi Visual Basic. Hal ini karena konversi Visual Basic mempertahankan perilaku yang kompatibel dengan versi sebelumnya. Untuk informasi lebih lanjut, lihat Pemecahan Masalah Tipe Data.
Programming Tips
Nilai default dari Boolean adalah False.
Jenis Konversi
Ketika Visual Basic mengkonversi nilai numerik ke tipe data Boolean, 0 menjadi Palsu dan semua nilai lain menjadi True. Ketika Visual Basic mengkonversi nilai Boolean untuk tipe numerik, Palsu dan Sejati menjadi 0 menjadi -1.
Bila Anda mengkonversi antara nilai-nilai boolean dan tipe data numerik, perlu diingat bahwa NET Framework. metode konversi tidak selalu menghasilkan hasil yang sama seperti kata kunci konversi Visual Basic. Hal ini karena konversi Visual Basic mempertahankan perilaku yang kompatibel dengan versi sebelumnya. Untuk informasi lebih lanjut, lihat Pemecahan Masalah Tipe Data.
Programming Tips
·
Bilangan Negatif. Boolean bukan tipe
numerik dan tidak dapat mewakili nilai negatif. Dalam hal apapun, Anda tidak
harus menggunakan Boolean untuk menyimpan nilai numerik.
·
Tipe Karakter. Boolean tidak
memiliki tipe karakter harfiah atau pengidentifikasi tipe karakter.
·
Jenis Framework. Jenis yang
sesuai di NET Framework. adalah struktur System.Boolean.
Note book:
Note book:
Literal
Boolean
Nilai true
dan false pada java merupakan literal boolean.
Suatu variabel bertipe boolean hanya dapat memiliki nilai true atau false.
boolean ok =
true;
Ingat bahwa
boolean true atau false TIDAK menggunakan tanda petik tunggal seperti ekspresi
pada karakter.
contoh tipe data Boolean:
contoh tipe data Boolean:
Dim runningVB As Boolean
' Check to see if
program is running on Visual Basic engine.
If scriptEngine =
"VB" Then
runningVB = True
End If
Contoh
program Boolean:
Contoh:
Program display_bool;
Usees wincrt;
Begin writeln(ord(true));
Writeln(ord(false));
End.
Hasilnya:0 13.2.
Komentar
Posting Komentar