Materi 03 Tipe dan Struktur Data
TIPE DAN STRUKTUR
DATA
Sabian Pamungkas
Definisi
Data
◦ Segala sesuatu yang bukan merupakan kode
program, namun digunakan dalam komputasi
program
◦ Suatu nilai logis yang dapat dimanipulasi oleh
program
◦ Representasi dari fakta yang ditulis di dalam
media
Kesimpulan
◦ Suatu nilai logis yang ditulis di dalam sebuah
program, yang dapat dimanipulasi atau
dikomputasi
Tipe Data
Konstanta
Variabel
Konstanta
Merupakan data yang sifatnya statis atau
tetap
Nilainya tidak dapat diubah
Variabel
Merupakan data yang sifatnya dinamis atau
tidak tetap
Nilainya bisa diubah sewaktu-waktu
Struktur Data
Integer
Real
Char / String
Boolean
Integer
Merupakan jenis data yang digunakan untuk
mengoperasikan bilangan cacah / bulat
Jika pada suatu komputasi dihasilkan
bilangan desimal, maka sistem akan
melakukan pembulatan ke bawah (floor)
pada data tersebut
Misalnya:
◦ Didapatkan data 8,74 8
◦ Didapatkan data 4,07 4
Integer
Deklarasi konstanta integer
Deklarasi()
{
#define bilangan 123
}
Deklarasi variabel integer
Deklarasi()
{
int bilangan;
}
Real
Merupakan jenis data yang digunakan untuk
mengoperasikan bilangan riil / desimal
Jika pada suatu komputasi dihasilkan
bilangan desimal, maka sistem tidak akan
pembulatan pada data tersebut
Misalnya:
◦ Didapatkan data 8,74 8,74
◦ Didapatkan data 4,07 4,07
Real
Deklarasi konstanta real
Deklarasi()
{
#define bilangan 19.5
}
Deklarasi variabel real
Deklarasi()
{
float bilangan;
}
Char / String
Merupakan jenis data yang digunakan untuk
mengoperasikan huruf
Tidak dapat dilakukan operasi matematika
pada jenis data ini
Perbedaan Char dengan String
◦ Char: memuat 1 karakter
◦ String: memuat lebih dari 1 karakter
Dengan kata lain, string merupakan kombinasi
dari char
Char
Deklarasi konstanta char
Deklarasi()
{
#define huruf ‘a’
}
Deklarasi variabel char
Deklarasi()
{
int huruf;
}
String
Deklarasi konstanta string
Deklarasi()
{
#define kalimat ‘abc’
}
Deklarasi variabel string
Deklarasi()
{
int kalimat[3];
}
Contoh Kasus 1
Buatlah suatu sistem pembelian barang
Input berupa:
◦ nama_barang
◦ jumlah_barang
◦ harga_barang
Output berupa:
◦ total_harga
Sajikan dalam bentuk Flow Chart dan
Pseudo Code
Flow Chart
Start
nama_barang
jumlah_barang
harga_barang
Hitung Total
Harga
total_harga
Stop
Pseudo Code (variasi 1)
Start();
Deklarasi()
{
#define nama_barang ‘kulkas’
#define harga_barang 5000
int jumlah_barang;
int total_harga;
}
Input()
{
jumlah_barang=3;
}
Hitung_Total_Harga()
{
total_harga=harga_barang*jumlah_barang;
}
Cetak(total_harga);
Stop();
Pseudo Code (variasi 2)
Start();
Deklarasi()
{
char nama_barang[24];
int harga_barang;
int jumlah_barang;
int total_harga;
}
Input()
{
nama_barang=‘kulkas’;
harga_barang=5000;
jumlah_barang=3;
}
Hitung_Total_Harga()
{
total_harga=harga_barang*jumlah_barang;
}
Cetak(total_harga);
Stop();
Contoh Kasus 2
Buatlah sistem registrasi anggota perpustakaan
Input berupa:
◦ NPM
◦ Nama
Output berupa:
◦ Tahun_kadaluarsa
Registrasi anggota hanya menerima anggota
baru yang NPMnya belum terdaftar sebelumnya
Sajikan dalam bentuk Flow Chart dan Pseudo
Code
Flow Chart
Start
Hitung Masa
Berlaku
NPM
Nama
Cek Keabsahan
NPM dan Nama
N
Y
NPM
sudah
terdaftar?
Tahun_kadalu
arsa
Simpan di
Database
Stop
N
NPM ||
Nama
=“”
Y
Cek Database
Pseudo Code
Start();
Deklarasi()
{
char NPM[16];
char nama[64];
int tahun_ini;
int masa_berlaku;
int tahun_kadaluarsa;
}
Input()
{
NPM=‘0123456789’;
nama=‘Rere Garong’;
}
Cek_Keabsahan_Data()
{
if(NPM==‘ ’||nama==‘ ’)Input();
}
Pseudo Code (lanjutan)
Cek_Database()
{
if(NPM==db)Input();
}
Hitung_Masa_Berlaku()
{
tahun_ini=2014;
masa_berlaku=10;
tahun_kadaluarsa=tahun_ini+masa_berlaku;
}
Cetak(tahun_kadaluarsa);
Simpan_Data()
{
NPM db;
nama db;
tahun_kadaluarsa db;
}
Stop();
Soal Latihan 1
Buatlah sebuah sistem pendaftaran rekening bank
Input berupa:
◦ No_KTP
◦ Nama
◦ Nama_ibu
◦ No_HP
◦ Setoran
Output berupa:
◦ Saldo
Sistem memberikan bunga sebesar 5% diberikan
langsung pada setoran pertama
Sajikan dalam bentuk Flow Chart dan Pseudo Code
Soal Latihan 2
Buatlah sebuah sistem pembelian barang
Input berupa:
◦ Nama_barang
◦ Harga_barang
◦ Jumlah_barang
Output berupa:
◦ Harga_bayar
Sistem memberikan diskon sebesar 20% untuk
pembelian minimal 10 buah, tidak berlaku
kelipatan
Sajikan dalam bentuk Flow Chart dan Pseudo Code
Soal Latihan 3
Buatlah sebuah sistem pembelian barang
Input berupa:
◦ Nama_barang
◦ Harga_barang
◦ Jumlah_barang
Output berupa:
◦ Harga_bayar
Sistem bisa melayani pembelian hingga 3
item dalam sekali transaksi
Sajikan dalam bentuk Flow Chart dan Pseudo
Code
DATA
Sabian Pamungkas
Definisi
Data
◦ Segala sesuatu yang bukan merupakan kode
program, namun digunakan dalam komputasi
program
◦ Suatu nilai logis yang dapat dimanipulasi oleh
program
◦ Representasi dari fakta yang ditulis di dalam
media
Kesimpulan
◦ Suatu nilai logis yang ditulis di dalam sebuah
program, yang dapat dimanipulasi atau
dikomputasi
Tipe Data
Konstanta
Variabel
Konstanta
Merupakan data yang sifatnya statis atau
tetap
Nilainya tidak dapat diubah
Variabel
Merupakan data yang sifatnya dinamis atau
tidak tetap
Nilainya bisa diubah sewaktu-waktu
Struktur Data
Integer
Real
Char / String
Boolean
Integer
Merupakan jenis data yang digunakan untuk
mengoperasikan bilangan cacah / bulat
Jika pada suatu komputasi dihasilkan
bilangan desimal, maka sistem akan
melakukan pembulatan ke bawah (floor)
pada data tersebut
Misalnya:
◦ Didapatkan data 8,74 8
◦ Didapatkan data 4,07 4
Integer
Deklarasi konstanta integer
Deklarasi()
{
#define bilangan 123
}
Deklarasi variabel integer
Deklarasi()
{
int bilangan;
}
Real
Merupakan jenis data yang digunakan untuk
mengoperasikan bilangan riil / desimal
Jika pada suatu komputasi dihasilkan
bilangan desimal, maka sistem tidak akan
pembulatan pada data tersebut
Misalnya:
◦ Didapatkan data 8,74 8,74
◦ Didapatkan data 4,07 4,07
Real
Deklarasi konstanta real
Deklarasi()
{
#define bilangan 19.5
}
Deklarasi variabel real
Deklarasi()
{
float bilangan;
}
Char / String
Merupakan jenis data yang digunakan untuk
mengoperasikan huruf
Tidak dapat dilakukan operasi matematika
pada jenis data ini
Perbedaan Char dengan String
◦ Char: memuat 1 karakter
◦ String: memuat lebih dari 1 karakter
Dengan kata lain, string merupakan kombinasi
dari char
Char
Deklarasi konstanta char
Deklarasi()
{
#define huruf ‘a’
}
Deklarasi variabel char
Deklarasi()
{
int huruf;
}
String
Deklarasi konstanta string
Deklarasi()
{
#define kalimat ‘abc’
}
Deklarasi variabel string
Deklarasi()
{
int kalimat[3];
}
Contoh Kasus 1
Buatlah suatu sistem pembelian barang
Input berupa:
◦ nama_barang
◦ jumlah_barang
◦ harga_barang
Output berupa:
◦ total_harga
Sajikan dalam bentuk Flow Chart dan
Pseudo Code
Flow Chart
Start
nama_barang
jumlah_barang
harga_barang
Hitung Total
Harga
total_harga
Stop
Pseudo Code (variasi 1)
Start();
Deklarasi()
{
#define nama_barang ‘kulkas’
#define harga_barang 5000
int jumlah_barang;
int total_harga;
}
Input()
{
jumlah_barang=3;
}
Hitung_Total_Harga()
{
total_harga=harga_barang*jumlah_barang;
}
Cetak(total_harga);
Stop();
Pseudo Code (variasi 2)
Start();
Deklarasi()
{
char nama_barang[24];
int harga_barang;
int jumlah_barang;
int total_harga;
}
Input()
{
nama_barang=‘kulkas’;
harga_barang=5000;
jumlah_barang=3;
}
Hitung_Total_Harga()
{
total_harga=harga_barang*jumlah_barang;
}
Cetak(total_harga);
Stop();
Contoh Kasus 2
Buatlah sistem registrasi anggota perpustakaan
Input berupa:
◦ NPM
◦ Nama
Output berupa:
◦ Tahun_kadaluarsa
Registrasi anggota hanya menerima anggota
baru yang NPMnya belum terdaftar sebelumnya
Sajikan dalam bentuk Flow Chart dan Pseudo
Code
Flow Chart
Start
Hitung Masa
Berlaku
NPM
Nama
Cek Keabsahan
NPM dan Nama
N
Y
NPM
sudah
terdaftar?
Tahun_kadalu
arsa
Simpan di
Database
Stop
N
NPM ||
Nama
=“”
Y
Cek Database
Pseudo Code
Start();
Deklarasi()
{
char NPM[16];
char nama[64];
int tahun_ini;
int masa_berlaku;
int tahun_kadaluarsa;
}
Input()
{
NPM=‘0123456789’;
nama=‘Rere Garong’;
}
Cek_Keabsahan_Data()
{
if(NPM==‘ ’||nama==‘ ’)Input();
}
Pseudo Code (lanjutan)
Cek_Database()
{
if(NPM==db)Input();
}
Hitung_Masa_Berlaku()
{
tahun_ini=2014;
masa_berlaku=10;
tahun_kadaluarsa=tahun_ini+masa_berlaku;
}
Cetak(tahun_kadaluarsa);
Simpan_Data()
{
NPM db;
nama db;
tahun_kadaluarsa db;
}
Stop();
Soal Latihan 1
Buatlah sebuah sistem pendaftaran rekening bank
Input berupa:
◦ No_KTP
◦ Nama
◦ Nama_ibu
◦ No_HP
◦ Setoran
Output berupa:
◦ Saldo
Sistem memberikan bunga sebesar 5% diberikan
langsung pada setoran pertama
Sajikan dalam bentuk Flow Chart dan Pseudo Code
Soal Latihan 2
Buatlah sebuah sistem pembelian barang
Input berupa:
◦ Nama_barang
◦ Harga_barang
◦ Jumlah_barang
Output berupa:
◦ Harga_bayar
Sistem memberikan diskon sebesar 20% untuk
pembelian minimal 10 buah, tidak berlaku
kelipatan
Sajikan dalam bentuk Flow Chart dan Pseudo Code
Soal Latihan 3
Buatlah sebuah sistem pembelian barang
Input berupa:
◦ Nama_barang
◦ Harga_barang
◦ Jumlah_barang
Output berupa:
◦ Harga_bayar
Sistem bisa melayani pembelian hingga 3
item dalam sekali transaksi
Sajikan dalam bentuk Flow Chart dan Pseudo
Code