Anda di halaman 1dari 24

TEE 2103

Algoritma & Pemrograman

Tipe Data dan Operasi


Dosen: Abdillah, MIT
HP: 0853 6581 8665
Email: abdill01@gmail.com
Website: http://abdill01.wordpress.com

Tujuan
Mahasiswa memahami penggunaan tipe data
dan operator serta penulisannya dalam
pseudocode.

Apa itu Tipe Data?


Tipe sebuah data menentukan himpunan nilai
yang dapat dimilikinya dan operasi yang dapat
dilakukan pada data tersebut.
Operasi adalah instruksi yang dilakukan terhadap
sebuah data. Misalnya, pada operasi a + b,
masing-masing a dan b adalah operand,
sedangkan + adalah operatornya.
Nilai-nilai yang dapat dimiliki oleh tipe tersebut
dinyatakan dalam ranah nilai (domain).

Macam-macam Tipe Data


Ada 2 macam tipe data:
1. Tipe dasar (tipe yang dapat langsung
dipakai)
2. Tipe bentukan (dibentuk dari tipe dasar
atau dari tipe bentukan lain)

Tipe Dasar
Dalam dunia pemrograman, yang termasuk
dalam tipe dasar adalah:
1. Bilangan biner (boolean)
2. Bilangan bulat
3. Bilangan riil
4. Karakter
5. String

Bilangan Biner
Bilangan biner adalah bilangan yang hanya
memiliki dua buah nilai, 0 dan 1.
Nama tipe bilangan biner adalah boolean.
Karena ranah nilai tipe boolean hanya
beranggotakan dua buah nilai, maka konstanta
yang terdapat pada tipe ini adalah true dan
false.

Operasi pada Bilangan Biner


Operasi yang dapat dilakukan terhadap tipe boolean,
dikenal dengan operasi logika.
Operator logika yang umum digunakan untuk operasi
logika adalah: not, and, or, dan xor.
Operasi dengan operator logika menghasilkan nilai dalam
ranah nilai tipe boolean juga dan dinyatakan dalam sebuah
tabel kebenaran yang dapat diingat dengan mudah.

Bilangan Bulat
Bilangan bulat adalah bilangan yang tidak
mengadung pecahan. Dalam bahasa C ada 4
macam tipe bilangan bulat, yakni unsigned
char, signed char, unsigned int, integer dan
long int.
Tipe yang umum digunakan adalah integer
yang memiliki rentang nilai -32768 sampai
+32767.

Operasi pada Bilangan Bulat


Operasi yang dapat dilakukan terhadap tipe
integer, adalah operasi aritmetika dan operasi
perbandingan.
Operasi aritmetika yang berlaku adalah:
+, -, *, div (bagi), dan mod (sisa hasil bagi).
Adapun operasi perbandingannya adalah:
<, , >, , =, dan .

Bilangan Riil
Bilangan riil adalah bilangan yang mengadung
pecahan desimal. Dalam bahasa C ada 2
macam tipe bilangan riil, yakni float dan
double.
Setiap konstanta yang bertipe bilangan riil
harus ditulis dengan tanda titik desimal, misal
0.78

Operasi pada Bilangan Riil


Operasi yang dapat dilakukan terhadap bilangan riil,
adalah operasi aritmetika dan operasi perbandingan.
Operasi aritmetika yang berlaku adalah:
+, -, *, dan / (pembagian).
Adapun operasi perbandingannya adalah:
<, , >, , dan .
Perhatikan bahwa operasi perbandingan pada tipe
bilangan riil tidak mengenal operator kesamaan =.

Karakter
Karakter adalah semua huruf abjad, semua tanda
baca, angka 0, 1, , 9, simbol aritmetik dan
karakter khusus seperti &, ^, %, #, @ dan
sebagainya. Konstanta karakter harus diapit oleh
tanda petik tunggal.
Nama tipe untuk karakter adalah char. Karakter
kosong (null) adalah karakter yang panjangnya nol
dan dilambangkan dengan .
Operasi yang dilakukan terhadap tipe karakter
adalah operasi perbandingan.

Operasi pada Karakter


Operasi yang dilakukan terhadap tipe karakter
adalah operasi perbandingan.
Operasi perbandingan yang berlaku adalah:
<, , >, , =, dan .

String
String adalah untaian karakter dengan panjang
tertentu.
Nama tipe string adalah string. Ranah tipe
string sama dengan ranah tipe char.
Semua konstanta string harus diapit oleh tanda
petik tunggal.

Operasi pada String


Operasi terhadap data bertipe string adalah operasi
penyambungan dan operasi perbandingan.
Operator penyambungan adalah +. Bila a dan b
adalah string, maka a + b = ab.
Adapun operasi perbandingannya adalah:
<, , >, , =, dan .

Tipe Bentukan
Tipe bentukan adalah tipe yang didefinisikan
sendiri oleh programmer. Tipe bentukan
disusun oleh satu atau lebih tipe dasar.
Ada 2 macam tipe bentukan:
1. Tipe dasar yang diberi nama tipe baru
2. Tipe terstruktur

Tipe Dasar yang Diberi


Nama-Tipe Baru
Terkadang programmer ingin memberi nama baru
terhadap sebuah tipe dasar yang sudah dikenal.
Tujuannya adalah agar lebih mudah diinterpretasi
oleh orang yang membaca teks algoritma.
Ranah nilai, cara menulis konstanta dan operasi
terhadap tipe baru tersebut sama dengan tipe
dasar aslinya.
Cara memberi nama baru untuk tipe dasar adalah
dengan menggunakan kata kunci type.
Contoh: type BilanganBulat : integer

Tipe Terstruktur
Tipe terstruktur adalah tipe yang berbentuk
rekaman (record). Rekaman disusun dari satu
atau lebih field.
Tiap field menyimpan data dari tipe dasar
tertentu atau dari tipe bentukan lain yang
sudah didefinisikan sebelumnya.
field 1

field 2

field N

Contoh Tipe Terstruktur


Titik koordinat kartesian dinyatakan sebagai (x, y), dimana x
adalah nilai absis dan y adalah nilai ordinat.
x

Cara menuliskan tipe Titik


Type Titik : record < x : real, y : real >

Atau dengan cara berikut:


Type Titik : record < x, y : real >
Kata kunci record menyatakan bahwa Titik adalah tipe
terstruktur. Jika dideklarasikan P adalah variabel bertipe

Contoh Tipe Terstruktur


Hari dinyatakan sebagai tanggal (dd), bulan (mm) dan
tahun (yy). Misalkan tipe bentukan tersebut diberi nama
Tanggal.
dd
mm
yy
Cara menuliskan tipe Tanggal
Type Tanggal : record < dd : integer,
mm : integer,
yy : integer >
Jika D adalah peubah bertipe Tanggal, maka cara
mengacu tiap field adalah:
D.dd
D.mm
D.yy

Contoh Tipe Terstruktur


Waktu dinyatakan sebagai jam (hh), menit (mm) dan detik
(ss). Misalkan tipe bentukan tersebut diberi nama Waktu.
hh

mm

ss

Cara menuliskan tipe Waktu


Type Waktu : record < hh : integer,
mm : integer,
ss : integer >
Jika W adalah peubah bertipe Waktu, maka cara mengacu
tiap field adalah:
W.hh
W.mm
W.ss

Contoh Algoritma
PROGRAM Konversi_ke_Detik
DEKLARASI
type Jam : record < hh : integer {jam}
mm : integer {menit}
yy : integer {detik} >
J : Jam
TotalDetik : integer
ALGORITMA:
read (jam, menit, detik)
TotalDetik = (J.hh*3600) + (J.mm*60) + J.ss;
write (TotalDetik)

Translasi Algoritma ke Bahasa C


/*Program Konversi_ke_Detik*/
#include <stdio.h>
void main()
{
/* DEKLARASI */
typedef struct {int hh, mm, ss ;
} Jam;
Jam J;
int TotalDetik;
/* ALGORITMA */
printf("Ketikkan Jam = "); scanf("%d",&J.hh);
printf("Ketikkan Menit = "); scanf("%d",&J.mm);
printf("Ketikkan Detik = "); scanf("%d",&J.ss);
TotalDetik = (J.hh*3600) + (J.mm*60) + J.ss;
printf("Total detik = %d", TotalDetik);
}

Daftar Pustaka
1. Brian W. Kernighan, Dennis M. Ritchie,The C
Programming Language, Prentice Hall, 2011.
2. Rinaldi Munir, Algoritma dan Pemrograman dalam bahasa
C, Informatika, 2009.

Anda mungkin juga menyukai