Berikut adalah jenis variabel yang menampung nilai berupa angka desimal


Pada Pertemuan kali ini kita akan membahas Jenis-jenis tipe data yang diketahui pada matakuliah Struktur Data, untuk lebih jelanya dapat dilihat dibawah ini:

1.     Tipe data primitive (Sederhana)

Tipe data primitive adalah Tipe data yang mampu menyimpan satu nilai tiap satu variabel. Tipe data primitive merupakan tipe data dasar yang sering dipakai oleh program. Contoh tipe data primitive  adalah tipe numerik (integer dan real), tipe data karakter/char, tipe data boolean.

A.   Numeric

Tipe data numeric digunakan pada variabel atau konstanta untuk menyimpan nilai dalam bentuk angka. Tipe data ini terbagi atas integer, dan real.

a.   Integer

Integer Merupakan tipe data berupa bilangan bulat, terbagi atas beberapa kategori seperti table dibawah ini

2147483648 s/d 2147483647

Real adalah bilangan yang berisi titik desimal atau jenis bilangan pecahan.

2.9 x 10-39 s/d 1.7 x1038

1.5 x 1045 s/d 3.4 x 1038  

5.0 x 10-324 s/d 1.7 x 10308

3.4 x 10-4932 s/d 1.1 x 104932

B.   Karakter (char)

Karakter merupakan tipe data yang hanya mampu menyimpan 1 digit karakter.  Ukuran untuk tipe data karakter adalah 1 byte (1 byte = 8 bit). Adapun macam karakter yang ada sejumlah 256 macam karakter yaitu dari kode karakter (ASCII), 0 sampai dengan 255. Untuk penulisan karakter menggunakan tanda petik tunggal (‘ )  di depan dan belakang karakter yang ditulis. Contoh : ‘a’, ‘A’,’&’ dll.

Nilai-nilai yang termasuk karakter adalah :

a.      Karakter huruf : ‘a’..’z’,’A’..’Z’

b.      Karakter angka : ‘0’..’9’

c.       Karakter tanda baca : titik, koma, titik koma, titik dua dan sebagainya

d.      Karakter khusus : $, %, #, @ dan sebagainya.

C.      Boolean

Boolean merupakan tipe data logika, yang berisi dua kemungkinan nilai: TRUE (benar) atau FALSE (salah). Tipe data boolean memakai memori paling kecil.

2.     Tipe data Composite

Tipe Data Komposit merupakan tipe data yang dapat menampung banyak nilai, antara lain sebagai berikut.

A.   Array
Array atau sering disebut sebagai larik, adalah tipe data yang sudah terstruktur dengan baik, meskipun masih sederhana. Array mampu menyimpan sejumlah data dengan tipe yang sama (homogen) dalam sebuah variabel. Sebagai ilustrasi, array mampu menampung banyak data namun dengan satu tipe data yang sama, misalnya integer saja. Setiap lokasi data array diberi nomor indeks yang berfungsi sebagai alamat dari data tersebut.

B.   Record atau struct

Seperti halnya Array, Record atau Struct juga termasuk tipe data komposit. Record dikenal dalam bahasa Pascal/Delphi sedangkan Struct dikenal dalam bahasa C++. Berbeda dengan array, tipe data record mampu menampung banyak data dengan tipe data berbeda-beda (heterogen). Misalnya, satu bagian integer, satu bagian lagi character, dan bagian lainnya Boolean. Biasanya record digunakan untuk menampung data suatu obyek. Misalnya, siswa memiliki nama, alamat, usia, tempat lahir, dan tanggal lahir. Nama akan menggunakan tipe data string, alamat bertipe data string, usia bertipe data single (numeric), tempat lahir bertipe data string, dan tanggal lahir bertipe data date. Berikut ini contoh pengunaan record dalam Delphi.

C.   Image
Image, atau gambar, atau citra, merupakan tipe data grafik. Misalnya grafik perkembangan jumlah siswa SMK, foto keluarga kita, video perjalanan, dan lain-lain. Pada bahasa-bahasa pemrograman modern terutama yang berbasis visual, tipe data ini telah didukung dengan sangat baik.

D.   Date Time

Nilai data untuk tanggal (date) dan waktu (time) secara internal disimpan dalam format yang spesifik. Variabel atau konstanta yang dideklarasikan dengan tipe data Date dapat digunakan untuk menyimpan, baik tanggal maupun jam. Tipe data ini masuk dalam kelompok tipe data composite, karena merupakan bentukan dari beberapa tipe data.

E.   Object

Tipe data object digunakan untuk menyimpan nilai yang berhubungan dengan obyek-obyek yang disediakan oleh Visual Basic, Delphi, dan bahasa pemrograman lain yang berbasis GUI. Sebagai contoh, apabila mempunyai form yang memiliki control Command button, yang kita beri nama Command1.

F.    Subrange
Tipe data subrange merupakan tipe data bilangan yang mempunyai jangkauan nilai tertentu sesuai dengan yang ditetapkan programmer. Biasanya, tipe data ini mempunyai nilai batas minimum dan nilai batas maksimum. Tipe data ini didukung dengan sangat baik dalam Delphi.

G.   Enumerasi
Tipe data ini merupakan tipe data yang mempunyai elemen-elemen yang harus disebut satu persatu, dan bernilai konstanta integer sesuai dengan urutannya. Nilai konstanta integer elemen ini diwakili oleh suatu nama variable yang ditulis di dalam kurung. Tipe data ini juga dijumpai pada Delphi, dan bahasa pemrograman deklaratif seperti SQL.

Pada contoh di atas, tipe data Hari_dlm_Minggu termasuk enumerasi dengan rentang nilai Nol, dimana Senin sampai dengan Minggu dan nilai data dari 0, 1, sampai dengan 7. Sedangkan tipe data Nama_Bulan termasuk enumerasi dengan rentang nilai Nol, Januari sampai dengan Desember dan nilai data dari 0, 1, sampai dengan 12.

Data Types

tipe data adalah himpunan yang bisa user temui pada semua data. Dengan memahami suatu tipe data, user jadi bisa menentukan suatu nilai data yang dimiliki dari data tersebut. Salah satu dari bentuk penerapan tipe data yang ada dalam kehidupan sehari-hari adalah bilangan bulat. Maka sebenarnya penulisan suatu bilangan pada data bermacam-macam jenisnya. Lebih konkret nya lagi sebuah tipe data akan sangat sering ditemui dalam dunia pemrograman komputer. Dalam tahap awal pembuatan sebuah program, user terlebih dahulu harus menentukan tipe data yang digunakan. Kebanyakan tipe data yang digunakan oleh para programmer adalah real, integer, double, char, string dan masih banyak tipe data yang lain.

Array Types

Dalam ilmu komputer, jenis array adalah jenis data yang mewakili kumpulan elemen, masing-masing dipilih oleh satu atau lebih indeks yang dapat dihitung saat menjalankan selama pelaksanaan program. Seperti koleksi biasanya disebut variabel array, nilai array, atau hanya array. Array merupakan salah satu tipe data terstruktur (structured data type) yang terdiri dari sejumlah komponen-komponen yang mempunyai tipe data yang sama.

Suatu array akan memiliki jumlah komponen yang banyaknya tetap. Banyaknya komponen di dalam suatu array ditunjukkan oleh suatu indeks yang disebut dengan tipe indeks (index type).

Tipe data terstruktur, array, pada umumnya dibedakan menjadi dua, yaitu : – Array Satu Dimensi (One-Dimensional Array)

– Array Dua Dimensi (Two-Dimensional Array)

Associative Arrays

Dalam ilmu komputer, sebuah array asosiatif, peta, tabel simbol, atau Kamus adalah jenis data abstrak terdiri dari kumpulan (kunci, nilai) pasangan, sehingga setiap kunci yang mungkin muncul paling sekali dalam koleksi.Operasi yang terkait dengan tipe data ini memungkinkan:

  1. Penambahan sepasang ke koleksimenghapus sepasang dari koleksi
  2. Modifikasi pasangan yang ada pencarian nilai yang terkait dengan kunci tertentu
  3. Mengimplementasikan array asosiatif menimbulkan masalah kamus, sebuah masalah ilmu komputer klasik: tugas mendesain struktur data yang memelihara sekumpulan data selama operasi ‘ pencarian ‘, ‘ Hapus ‘, dan ‘ insert ‘.

Dua solusi utama untuk masalah Kamus adalah Tabel hash atau pohon pencarian. Dalam beberapa kasus juga dimungkinkan untuk memecahkan masalah menggunakan array langsung ditangani, pohon pencarian biner, atau struktur lebih khusus lainnya.Banyak bahasa pemrograman termasuk asosiatif array sebagai jenis data primitif, dan mereka tersedia di Perpustakaan perangkat lunak untuk banyak orang lain. Content-memori yang dituju adalah bentuk dukungan tingkat hardware langsung untuk array asosiatif.

Array asosiatif memiliki banyak aplikasi termasuk pola pemrograman fundamental seperti memoization dan pola dekorator. Nama ini tidak berasal dari properti asosiatif yang dikenal dalam matematika. Sebaliknya, itu muncul dari fakta bahwa kita mengasosiasikan nilai dengan kunci.

Character String Types

Tipe data String adalah tipe data yang bisa menampung banyak karakter sekaligus. String adalah tipe data untuk teks yang merupakan gabungan huruf, angka, whitespace (spasi), dan berbagai karakter. Fungsi ini digunakan untuk membuat identifier String/teks.

List Types

List adalah hal yang digunakan untuk mengelompokkan bersama potongan informasi sehingga mereka jelas terkait satu sama lain dan mudah dibaca. Dalam pengembangan web modern, list berupa elemen yang sering digunakan untuk navigasi serta konten umum. List baik dari sudut pandang struktural karena mereka membantu membuat dokumen yang terstruktur dengan baik, lebih mudah diakses, dan dapat dipertahankan.

Mereka juga berguna karena mereka menyediakan elemen khusus yang Anda dapat melampirkan gaya CSS. Akhirnya, secara semantik daftar yang benar membantu pengunjung membaca situs web Anda, dan mereka menyederhanakan pemeliharaan ketika halaman Anda perlu diperbarui.Ada tiga jenis list dalam HTML:

  • Daftar unordered-digunakan untuk mengelompokkan satu set item terkait tanpa urutan tertentu
  • Daftar memerintahkan-digunakan untuk mengelompokkan satu set item terkait dalam urutan tertentu
  • Daftar Deskripsi-digunakan untuk menampilkan pasangan nama/nilai seperti istilah dan definisi 

Pointer and Reference Types

Pointer adalah suatu variabel penunjuk yang menunjuk pada suatu alamat memori komputer tertentu. Pointer merupakan variabel level rendah yang dapat digunakan untuk menunjuk nilai integer, character, float, double, atau single, dan bahkan tipe-tipe data lain yang didukung oleh bahasa C. Variabel biasa, sifatnya statis dan sudah pasti, sedangkan pada pointer sifatnya dinamis dan dapat lebih fleksibel. Variabel pointer yang tidak menunjuk pada nilai apapun berarti memiliki nilai NULL, dan disebut sebagai dangling pointer karena nilainya tidak diinisialisasi dan tidak dapat diprediksi.

Pendeklarasian variabel pointer menggunakan tanda * sebelum nama variabelnya, sedangkan untuk menampilkan nilai yang ditunjuk oleh suatu variabel pointer, juga digunakan operator * (tanda asterisk). Jika diinginkan untuk menampilkan alamat tempat penyimpanan nilai yang ditunjuk oleh suatu variabel pointer, digunakan operator & (tanda ampersand).

Operator Pointer ada dua, yaitu :

  • Operator &
    Operator & bersifat unary (hanya memerlukan satu operand saja). Operator & menghasilkan alamat dari operandnya.
  • Operator * Operator * bersifat unary (hanya memerlukan satu operand saja).

    Operator * menghasilkan nilai yang berada pada sebuah alamat.

Referensi digunakan untuk memberikan nama alias dari variable. Dalam hal pengelolaan variabel dan parameter, C++ juga menyediakan reference variable, dan call by reference. Reference ke suatu variabel adalah nama alias terhadap variable tersebut. Reference berbeda dengan pointer. Jika sudah digunakan untuk mengacu suatu objek/variabel, reference tidak dapat direset untuk mengacu objek/variabel lain. Fasilitas ini dapat dimanfaatkan untuk memberikan alias terhadap suatu variabel yang mempunyai nama yang panjang (misalnya karena berada dalam struktur yang berlapis-lapis). Penggunaan reference yang lain adalah untuk call by reference dan return value dari sebuah fungsi.

Primitive Data Types

Ada tiga jenis tipe data primitif dalam bahasa pemrograman:

  • Tipe data Angka
  • Tipe data Karakter
  • Tipe data Boolean

Kemudian tipe data yang sering dipakai oleh Bahasa pemrograman, meliputi: integer (bilangan bulat), real (bilangan pecahan), char (alphanumerik dan tanda baca), dan boolean (logika).

Tipe data Integer – Dalam bahasa pemrograman, tipe data integer adalah tipe data yang terdiri dari angka bulat (tidak mengandung nilai pecahan atau nilai desimal).

Tipe data real – biasanya digunakan untuk angka desimal (pecahan, misalnya 3.14). Tipe data ini dikenal juga dengan tipe data float atau floating point.

Tipe Data Char adalah tipe data yang hanya bisa diisi dengan 1 karakter saja. Karakter ini (alpanumerik) harus ditulis diantara tanda kutip.

Karena hanya bisa diisi dengan 1 karakter saja, tipe data char hanya membutuhkan 1 byte memory (1 byte = 8 bit).

Record Types

Record merupakan jenis tipe data terstruktur yang berisi beberapa data, yang masing- masing dapat berlainan tipe termasuk bertipe array. Jadi secara sederhana record merupakan tipe data tersetruktur yang terdiri dari beberapa data.

Kemudian masing-masing data tersebut disebut sebagai field. Namun yang menarik adalah masing-masing data field dapat berupa satu atau beberapa nama pengenal.

Strong Typing

Sebuah Strong Typing Programming Language adalah satu di mana setiap jenis data (seperti bilangan bulat, karakter, heksadesimal, dikemas desimal, dan sebagainya) adalah standar sebagai bagian dari bahasa pemrograman dan semua konstanta atau variabel yang didefinisikan untuk program tertentu harus dijelaskan dengan salah satu jenis data. Operasi tertentu mungkin hanya diperbolehkan dengan jenis data tertentu. Kompilator bahasa memberlakukan data mengetik dan menggunakan kepatuhan. Keuntungan dari mengetik data yang kuat adalah bahwa ia memberlakukan seperangkat aturan yang ketat pada programmer dan dengan demikian menjamin konsistensi tertentu hasil. Sebuah kerugian adalah bahwa hal itu mencegah programmer dari menciptakan jenis data yang tidak diantisipasi oleh pengembang dari bahasa pemrograman dan membatasi bagaimana “kreatif” satu dapat dalam menggunakan jenis data tertentu.

Tuple Types

Tipe data tuple merupakan salah satu jenis tipe data yang didalamnya memiliki nilai lebih dari 1. Ini membuat tipe data tuple sama seperti tipe data list, hanya saja perbedaan tipe data tuple dan list terletak pada sifat yang dimilikinya. Tipe data tuple memiliki sifat immutable (nilai didalamnya tidak dapat diubah), perbedaan lain yang bisa dilihat dari tipe data tuple adalah dalam penulisannya, tipe data tuple menggunakan tanda kurung bulat () dalam menempatkan nilai/elemen

Type Checking

Dalam konteks type checking, konsep tentang operand dan operator perlu diperluas untuk juga mencakup subprogram dan assignment statement. Subprogram dipandang sebagai operator, dan parameter nya berperan sebagai operand. Simbol yang digunakan pada assignment dipandang sebagai operator, dan target variable serta expression berperan sebagai operand nya.

Dengan demikian, pengertian type checking dapat dinyatakan sebagai aktivitas untuk memastikan bahwa operands dari suatu operator adalah compatible types.

Compatible type diartikan sebagai type yang legal bagi suatu operator, atau diperbolehkan berdasarkan rule dari bahasa pemrograman, untuk dikonversi secara implicit (implicitly converted), oleh compiler-generated code (ataupun interpreter), ke suatu legal type. Implicit atau automatic conversion tersebut biasa disebut coercion.

Union Types

Union adalah kumpulan data yang anggotanya disimpan di dalam memori yang sama dan saling mempengaruhi satu sama lain. Berbeda dengan struct yang tiap anggotanya menyimpan nilai secara terpisah, tiap anggota union menyimpan nilainya di dalam lokasi memori yang sama. Karena penyimpanannya sama dan saling timpa, maka saat nilai satu anggota diubah, nilai anggota union lain akan berubah walaupun tidak menjadi sama.

User Defined Ordinal Types

Dalam bahasa pemrograman, Ordinal Type adalah tipe data dimana rentang nilainya dapat diasosiasikan menggunakan himpunan bilangan bulat positif. User-defined ordinal types artinya ordinal type yang dapat didefinisikan sendiri oleh user.

User-defined ordinal types terdiri dari:

  1. Enumeration type adalah satu di mana semua nilai yang mungkin, yang dinamakan konstanta, disediakan, atau disebutkan, dalam definisi. Enumeration menyediakan cara mendefinisikan dan mengelompokkan koleksi konstanta bernama, yang disebut enumeration constants. Bahasa pemrograman yang menggunakannya adalah C, Pascal, C++, Java, C#, dan F#.
  2. Subrange type mendefinisikan subset dari nilai-nilai dari tipe tertentu. Subrange type diperkenalkan dalam bahasa pemrograman Pascal dan Ada. Dengan menggunakan subrange, kita dapat dengan mudah mendeteksi error yang terjadi karena nilai-nilai variabel yang tidak masuk akal yang seharusnya tidak mengambil nilai di luar batas yang diberikan.

References

//www.mastekno.com/id/pengertian-fungsi-dan-jenis-tipe-data/
//www.xpode.com/ShowArticle.aspx?ArticleId=497
//en.wikipedia.org/wiki/Associative_array
//webplatform.github.io/docs/guides/html_lists/
//tri-yangzuka.blogspot.com/2012/10/perbedaan-pointer-dengan-referensi.html
//kodedasar.com/pengertian-tipedata/
//kodedasar.com/pengertian-record/
//whatis.techtarget.com/definition/strongly-typed
//www.malasngoding.com/operasi-tipe-data-tuple/
//beritati.blogspot.com/2019/09/pengertian-type-checking-dalam-bahasa.html
//beritati.blogspot.com/2019/09/user-defined-ordinal-types-dalam-bahasa.html

Author : Fendy Wirya Atmaja, Bayu Kanigoro

Published at : 16 November 2020 Updated at : 22 November 2020

Video yang berhubungan

Postingan terbaru

LIHAT SEMUA