tugas tipe data
TRANSCRIPT
©Alex Pranozal |2013610008 |Tipe Data | Bahasa Pemrograman | 1
NAMA : ALEX PRANOZAL
No. BP : 2013610008
MK : BAHASA PEMROGRAMAN
JURUSAN : TEKNIK INFORMATIKA S1
Tugas : Tipe Data Dan Contoh Penggunannya.
TIPE DATA
Tipe data adalah suatu nilai yang dapat dinyatakan dalam bentuk konstanta atau
variabel dan operator. Konstanta menyatakan nilai yang tetap, sedangkan variabel
menyatakan nilai yang dapat berubah-ubah selama eksekusi berlangsung. Tipe data dapat
didefinisikan dengan istilah tempat untuk menentukan pemberian nilai terhadap suatu
variabel sesuai atau tidak dengan nilai yang diberikan oleh user. Saya sebagai penulis kurang
tahu berapa pastinya jumlah tipe data, karena tiap sumber yang saya perolah selalu
mnyatakan jumlah yang berbeda, namun di pembahasan kali ini tipe data yang dibahasa
terbagi 2, yaitu tipe data primitive, dan composite, namun pada Turbo Pascal terdapat satu
tipe lainnya, yaitu tipe data terstruktur.
1. Tipe data primitive (Sederhana)
Adalah tipe data yang hanya mampu menyimpan satu nilai tiap satu variabelnya. 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 bilangan atau angka. Semua bahasa pemrograman menyediakan tipe
data numeric, hanya saja berbeda dalam jenis numeric yang diakomodasi. Tipe data
ini terbagi atas integer, dan real.
a) Integer
Merupakan tipe data berupa bilangan bulat, terbagi atas beberapa kategori
seperti terlihat dalam tabel 1. tabel 1 menunjukkan jenis data, ukuran dalam
memori dan rentang nilainya.
Tabel 1. Tipe Data Bilangan Integer
©Alex Pranozal |2013610008 |Tipe Data | Bahasa Pemrograman | 2
Tipe Data Ukuran Tempat Rentang Nilai
Byte 1 byte 0 s/d +255
Shortint 1 byte -28 s/d +127
Integer 2 bytes -32768 s/d 32767
Word 2 bytes 0 s/d 65535
Longint 4 bytes 2147483648 s/d 2147483647
Bahasa pemrograman yang menggunakan tipe data integer antara lain bahasa C,
C, C#, Pascal, VB. NET, dan Borland Delphi.
Contoh penggunaannya pada pascal
VAR a,b,jumlah1,jumlah2 : INTEGER;
BEGIN
jumlah1:=10;jumlah2:=3;a:=jumlah1 DIV jumlah2;b:=jumlah1 MOD jumlah2;WRITELN('HASIL A = ',a);WRITELN('HASIL B =',b);END.
hasil program : hasil a = 3hasil b = 1
b) Real
Konstanta bertipe real adalah bilangan yang berisi titik desimal atau jenis
bilangan pecahan. Dalam Pascal paling sedikit harus ada satu digit sebelum dan
sesudah titik desimal, tidak boleh ada koma dan nilainya bisa positif atau
negatif. Dapat dituliskan secara biasa atau model scientific. Contoh bilangan
real: 34.265 -3.55 0.0 35.997E+11, dimana E merupakan simbol perpangkatan
10. Jadi 452.13 mempunyai nilai sama dengan 4.5213e2.
Penggolongan tipe data bilangan real dapat dilihat pada tabel 2
Tabel 2. Bilangan Real
©Alex Pranozal |2013610008 |Tipe Data | Bahasa Pemrograman | 3
Tipe Data Ukuran Tempat Rentang Nilaireal 6 bytes 2.9 x 10-39 s/d 1.7 x1038
single 4 bytes 1.5 x 1045 s/d 3.4 x 1038
double 8 bytes 5.0 x 10-324 s/d 1.7 x 10308
extended 10 bytes 3.4 x 10-4932 s/d 1.1 x 104932
comp 8 bytes -9.2x 1018 s/d 9.2x 1018Contoh penggunaan tipe data real pada pascal
VAR nilai1,nilai2 hasil : REAL;BEGINnilai1 := 2.52;nilai2 := 3.2;hasil := nilai1 + nilai2;WRITE('HASIL PENJUMLAHAN = ',hasil:4:2);END.
Output program, sbb : hasil penjumlahan = 5.72
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.
Contoh pengunaannya dalam bahasa C++
Contoh program tipe data character
#include<ctype.h>
#include<stdio.h>
#include<conio.h>
#include<string.h>
void main()
©Alex Pranozal |2013610008 |Tipe Data | Bahasa Pemrograman | 4
{
char *kalimat=”Institut Teknologi Padang″;
int x,jmlupp,jmllow,jmldig,jmlspc;
jmlupp=jmllow=jmldig=jmlspc=0;
clrscr();
for(x=0;x<=strlen(kalimat);x++)
{
if(isupper(kalimat[x])) jmlupp++;
else if(islower(kalimat[x])) jmllow++;
else if(isdigit(kalimat[x])) jmldig++;
else if(isspace(kalimat[x])) jmlspc++;
}
printf(“Jumlah Karakter : %d karakter\n”,strlen(kalimat));
printf(“Jumlah Upper : %d karakter\n”,jmlupp);
printf(“Jumlah Lower : %d karakter\n”,jmllow);
printf(“Jumlah Angka : %d karakter\n”,jmldig);
printf(“Jumlah Spasi : %d karakter\n”,jmlspc);
getch();
}
C. 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 dipakai untuk menulis program yang sesuai dengan
lingkungan Windows.
Tabel dibawah ini menunjukkan Tipe Data Boolean
Tipe Data Ukuran Tempat
Boolean 1 byte
WordBool 2 byte
Longbool 3 byte
©Alex Pranozal |2013610008 |Tipe Data | Bahasa Pemrograman | 5
Contoh pengunaannya pada pascal:
VARbenar : BOOLEAN;BEGINbenar := TRUE;WRITELN('benar = ',benar);END.
hasil : benar = TRUE
2. Tipe data Composite
Composite Data Types atau Tipe Data Komposit merupakan tipe data yang dapat menampung
banyak nilai
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.
Contoh pengunaannya pada pascal :
Contoh penulisan tipe larik berdimensi satu sbb :
CONST batas = 20;VAR telpon : ARRAY[1..3] OF STRING[7]; { larik dengan nama telponmempunyai 3 data dengan tipestring }
nilai : ARRAY[1..5] OF INTEGER; { larik dengan nama nilaimempunyai 5 data dengan tipeinteger }gaji : ARRAY[1..batas] OF REAL; { larik dengan namagaji mempunyai20 data dengan tipe real }Contoh larik yang mempunyai tipe data terbilang atau subjangkauan :TYPE batas = 0..100;keadaan = (baru,lama,bagus,jelek);VAR nilai : ARRAY[1..30] OF 'A'..'B'; { larik dengan nama nilai mempunyai30 data, dan pengisian data yangdiperbolehkan hanya A, B, C, D,E }angka : ARRAY[1..50] OF batas; { larik dengan nama angka
©Alex Pranozal |2013610008 |Tipe Data | Bahasa Pemrograman | 6
mempunyai 50 data, dan pengisiandata yang diperbolehkan hanya1,2,3,...,99,100 }baju : ARRAY[1..10] OF keadaan; { larik dengan nama angkamempunyai 10 data,dan pengisiandata yang diperbolehkan baru, lama,bagus, jelek }
Contoh program :VAR jumlah : INTEGER;nilai : ARRAY[1..3] OF 'A'..'E';angka : ARRAY[1..3] OF INTEGER;BEGINnilai[1] := 'C';nilai[2] := 'B';nilai[3] := 'A';angka[1] := 75;angka[2] := 60;angka[3] := 90;jumlah := angka[1]+angka[2]+angka[3];WRITELN('NILAI = ',angka[2],' MENDAPAT ',nilai[1]);WRITELN('JUMLAH = ',jumlah);END.hasil : nilai 60 mendapat C
jumlah = 225
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.
Contoh pengunaannya pada Delphi.
Type TRecord_Siswa = Record
©Alex Pranozal |2013610008 |Tipe Data | Bahasa Pemrograman | 7
Nama_Siswa : String[30]Alamat : String[50]Usia : RealEndRecord
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.
Contoh pengunaannya dalam Visual Basic.
Dim WaktuLahir As DateWaktuLahir = "01/01/1997"WaktuLahir = "13:03:05 AM"WaktuLahir = "02/23/1998 13:13:40 AM"WaktuLahir = #02/23/1998 13:13:40 AM#
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.
Contoh pengunaannya :
Dim A As CommandButtonSet A = Command1A.Caption = "HEY!!!" A.FontBold = True
©Alex Pranozal |2013610008 |Tipe Data | Bahasa Pemrograman | 8
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.
Contoh pendeklarasiannya pada Delphi.
Type
BatasIndeks = 1..20
RentangTahun = 1950..2030
Var
Indeks : BatasIndeks
Tahun : RentangTahun
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.
Contoh pendeklarasiannya pada Delphi.
TypeHari_dlm_Minggu = (Nol, Senin, Selasa, Rabu,Kamis, Jumat, Sabtu,Minggu)Nama_Bulan = (Nol, Januari, Pebruari, Maret,April, Mei, Juni, Juli,Agustus,September, Oktober, Nopember,Desember)VarNo_Hari : Hari_dlm_MingguNo_Bulan : Nama_Bulan
©Alex Pranozal |2013610008 |Tipe Data | Bahasa Pemrograman | 9
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.
Tipe Data Lainnya
1. Tipe Data Terstruktur
a) Tipe Data String
Merupakan suatu data yang menyimpan array (larik), sebagai contoh 'ABCDEF'
merupakan sebuah konstanta string yang berisikan 6 byte karakter. Ukuran
Tempat untuk tipe data ini adalah 2 s/d 256 byte, dengan jumlah elemen 1 s/d
255.
String dideklarasikan dengan STRING [ konstanta ] atau STRING.
Bila ukuran string tidak didefinisikan maka akan banyak memakan ruang, karena
ukuran string menyesuaikan dengan defaultnya.
Misalkan :
VAR KATA: STRING [20]; atauVAR KATA: STRING;Contoh penggunaannya pada pascal
VAR kata1 : STRING[5];kata2 : STING[9];kata : CHAR;BEGINkata1 :='ITP';kata2 :='PADANG';kata :=' '; { karakter berupa spasi }WRITELN(kata1,kata,kata2);END.hasil : ITP PADANG
b) Tipe Data Set
Sebuah set merupakan suatu himpunan yang berisi nilai (anggota). Set
merupakan Tipe data yang khusus untuk Pascal. Set dalam pemrograman sangat
mirip dengan himpunan dalam ilmu matematika.
©Alex Pranozal |2013610008 |Tipe Data | Bahasa Pemrograman | 10
contoh: A = { 1, 2, 3, 4, 5 }
Syntax: SET OF
contoh:type Digits = set of 0..9;
Letters = set of 'A'..'Z';
Day = (Sun, Mon, Tue, Wed, Thu, Fri, Sat);
CharSet = set of Char;
Days = set of Day;
Kita tidak bisa menulis atau membaca isi dari set, tetapi kita bisa melakukan
operasi yang lain dengan data yang ada pada set (mis. relasional).
Contoh:
Program Cth_Set;USES WINCRT;Type HARI = (AHAD, SENIN, SELASA, RABU, KAMIS, JUMAT, SABTU);VAR SEMUA_HARI : SET OF HARI;
HARI_KERJA : SET OF SENIN.. JUMAT;HARI_INI : HARI;
BEGINHARI_INI := SENIN;IF HARI _INI IN HARI_KERJA THENWRITELN('HARI INI HARI KERJA')ELSEWRITELN('HARI LIBUR');END.
Salah satu manfaat dari penggunaan tipe data set adalah untuk mengecek apakah
suatu nilai muncul dalam suatu range tertentu. Misalnya, untuk menentukan
apakah suatu karakter berupa Lower Case Letter (huruf kecil), mis. Ch adalah tipe
Char, kita bisa menulis, if (Ch >= 'a') and (Ch <= 'z') then Writeln( Ch,'
merupakan huruf kecil.'); atau, dengan notasi set, kita bisa menulis, if Ch in
['a'..'z'] then Writeln( Ch,' merupakan huruf kecil.');
2. Tipe Data Pointer
©Alex Pranozal |2013610008 |Tipe Data | Bahasa Pemrograman | 11
Pointer merupakan variabel khusus yang berisi suatu address (alamat) di lokasi lain
didalam memori. Suatu variabel yang points (menunjuk) ke sesuatu sehingga disebut
pointer.
Ada dua macam pointer:
Typed (tertentu) : merupakan pointer yang menunjuk pada tipe data tertentu
pada variabel.
Generic (umum) : merupakan pointer yang tidak menunjuk pada tipe data
tertentu pada variabel.
Contoh deklarasi pointer:
VAR P : ^INTEGER;
Contoh di atas merupakan deklarasi variabel p sebagai pointer dari integer. Dengan
menambahkan tanda caret (^) di depan nama tipe data variabel yang dideklarasikan:
Contoh :
Program Pointer1;USES WINCRT;VAR P : ^INTEGER;
M, N : INTEGER;BEGINM:=10;N:=15;P:=@M; { P sekarang menunjuk ke M }P^:=12; { hal ini sama dengan M:=12; }P:=@n; { M sekarang menunjuk ke N }P=M; { { hal ini sama dengan N:= M; }WRITELN('M = ',M,', N = ',N); { M = 12, N = 12 }END.Ketika P menunjuk ke M ( P:=@M;), mengakses P^ sama dengan mengakses M. Dalam
membuat program, dalam penggunaan pointer kita memerlukan alokasi memori
tertentu: Ketika kita mendeklarasikan variabel pointer dalam "VAR" sehingga
merupakan suatu static variabel, yang mana Static Variabel ini dibatasi oleh kapasitas
64KB untuk tiap modul. Yang berarti dalam program utama kita hanya bisa
menggunakan hanya 64KB dan tiap unit Pascal hanya bisa memakai 64KB. Sehingga
kita perlu memecahkan program kebeberapa unit.