Tugas Algoritma
Tugas ALGO CHAPTER_4
Aprilia Yami Yuniarti
Sistem Informasi
NIM : 085293357052
Tipe Data
Sederhana
Tipe data sederhana adalah
tipe data dasar yang sering dipakai oleh program, yang meliputi:
a. Integer
(Bilangan Bulat).
Penggolongan tipe data integer tersebut
dimaksudkan untuk membatasi alokasi memori yang dibutuhkan. Misalkan untuk
suatu perhitungan dari suatu variabel bilangan diperkirakan nilai maksimumnya
32767 kita cukup mendeklarasikan variabel bilangan sebagai integer (2 byte),
daripada sebagai longint(4 byte). Didalam kompilernya, Pascal menyediakan
konstanta untuk bilangan Integer yaitu: MaxInt and MaxLongInt, pemrogram bisa
menggunakannya didalam programnya tanpa harus terlebih dahulu
mendefinisikannya. Contoh bilangan integer adalah: 34 6458 -90 0 1112.
· Penggolongan
Tipe Data Integer
Tipe data |
Ukuran |
Tempat Rentang Nilai |
Byte |
1 Byte |
0 s/d +255 |
Shortint |
1 Byte |
-28 s/d +127 |
Integer |
2 Byte |
-32768 s/d 32767 |
Word |
2 Byte |
0 s/d 65535 |
Longint |
4 Byte |
2147483648 s/d 2147483647 |
|
· Contoh
program integer:
Program display_maxint;uses wincrt;
begin writeln (maxint)
end.
Hasilnya: 32.767
b. Real (Bilangan
Pecahan).
Bilangan real atau nyata merupakan jenis
bilangan pecahan, 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
Tipe data |
Ukuran |
Tempat Rentang Nilai |
Real |
6 Byte |
2.9 x 10-39 s/d 1.7 x1038 |
Single |
4 Byte |
2.9 x 10-39 s/d 1.7 x1038 |
Double |
8 Byte |
5.0 x 10-324 s/d 1.7 x10308 |
Extended |
10 Byte |
3.4 x 10-4932 s/d 1.1 x104932 |
Comp |
8 Byte |
3.4 x 10-4932 s/d 1.1 x104932 |
macam yang
terdapat dalam tabel ASCII (American Standard Code for Information
Interchange).
Contoh : 'a' 'B' '+',
dsb.
(Yang perlu diingat bahwa dalam menuliskannya harus dengan
memakai tanda kutip tunggal. Jenis data ini memerlukan alokasi memori sebesar
1(satu) byte untuk masing-masing data).
C. Boolean
(Logika)
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.
· Penggolongan
Tipe Data Boolean
Tipe data |
Ukuran Tempat |
Boolean |
1 Byte |
WordBool |
2 Byte |
LonggBool |
3 Byte |
· Contoh:
Program display_bool;
uses wincrt;
begin writeln(ord(true));
writeln(ord(false));
end.
Hasilnya: 1 0 3.2.
2. Tipe Data
majemuk
Tipe ini terdiri atas : array, record, set, dan
file.
String adalah tipe data jenis array, tetapi
karena string memiliki kekhasan tersendiri sebagai array dari karakter maka
penulis perlu memberikan penjelasan tersendiri. Sedangkan untuk array, record,
dan file perlu dijelaskan dalam bab yang lain karena agak banyak hal-hal yang
perlu dibahas, seperti :
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
256byte, 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.
Contoh : var kata:
string [20]; atau var kata: string;
karena string merupakan array dari karakter.
Maka kata[1] merupakan karakter pertama dari
string, kemudian kata[2], merupakan elemen
kedua, dst.
· Contoh
Program String: Program hal_string;
Uses wincrt;
var s : string;
begin s:='Hello';
writeln(s);
writeln('panjang dari string adalah: ',ord(s[0]));
end.
b. Array
Suatu array adalah sebuah struktur data yang
terdiri atas banyak variabel dengan tipe data sama, dimana masing-masing elemen
variabel mempunyai nilai indeks. Setiap elemen array mampu untuk menyimpan satu
jenis data (yaitu: variabel). Suatu array dinyatakan dengan type, sehingga
variabel yang bekerja akan dinyatakan dengan:
Contoh type : Var A =
array [1..10] of integer;
c. Record
(Rekaman)
Sebuah record rekaman disusun oleh beberapa
field. Tiap field berisi data dari tipe dasar /bentukan tertentu. Record
mempunyai kelebihan untuk menyimpan suatu sekumpulan elemen data yang
berbeda-beda tipenya (dibanding array).
Sumber
: http://siteblogforu.blogspot.co.id/2013/09/pengertian-tipe-data.html\
Struktur Data Sederhana
Merupakan tipe
data paling kecil, yang hanya melibatkan satu item data.Terdiri dari 2 jenis
tipe data :
Tipe
data sederhana tunggal, meliputi :
1.
Tipe Bilangan Bulat : untuk menyimpan bilangan bulat.
Macamnya dari besar
jangkauan nilai yaitu :
Shortint(1byte)
,Integer(2byte), Longint(4byte), Byte(1byte), Word(2byte).
Untuk
memberi nilai basis decimal maupun heksadesimal ditandai dengan
tanda $.Contoh pendeklarasian :
Var x,
y : integer;
begin x
:= 16; { dengan
decimal }
y :=
$0A; {
dengan hexadecimal }
2.
Tipe Boolean : hanya dapat bernilai true/benar dan false/salah(1 byte).
Macamnya
dari penjagaan kompatibilitas yaitu :
Boolean(byte),Wordbool(word),LongBool(long),ByteBool(byte).
Contoh pendeklarasian :
Var
B1 : boolean;
begin
b1 :=
true;
b1 := false;
3.
Tipe Karakter: untuk menyimpan data
alfanumeris seperti ‘A’, ‘Z’, ‘@’, dsb(1 byte). Contoh pendeklarasian
Var ch
: char; begin
ch := ‘A’; ch
:= #65 { sama artinya dengan ch :=
‘A’} ch := chr(65); { sama
artinya dengan ch := ‘A’}
4.
Tipe Sub Jangkauan : menyatakan suatu
jangkauan nilai dari suatu tipe yang sudah ada bersifat urut/ordinal.Contoh
pendeklarasian :
Type Bulan
= 1 .. 12;
Var Januari :
Bulan; begin
Januari :=
1;
5.
Tipe Terbilang(enumerasi) : memungkinkan
memberi nama pada beberapa nilai tertentu.
Contoh pendeklarasian :
Type TipeHari=(Minggu,Senin,Selasa,Rabu,Kamis,Jumat);
Var hari
: TipeHari; begin
hari
:=
Minggu; hari
:= Senin;
6.
Tipe
Real : untuk menyimpan bilangan real.
Macamnya
dari ketelitianya yaitu : Real,Single, Double, Extended, comp.
Contoh pendeklarasian :
Var x,
y : real; begin
x :=
123.45; {menuliskan
nilai dengan tanda titik}
y :=
1.2345E+2 { menuliskan E+banyak decimal)
· Tipe data
sederhana majemuk, meliputi :
1.
Tipe String : menyimpan data yang berisi
suatu teks (rangkaian karakter/huruf) dan bisa juga berisi angka.
Contoh
pendeklarasian :
Var kalimat
: string
Begin kalimat := ‘Jl.Bima Sakti
no.3 Pengok’;
B. Struktur Data
Terstruktur
Merupakan tipe data yang
menampung beberapa item data.Terdiri dari :
· Struktur
data sederhana, macamnya :
1.
Tipe Array(larik) yaitu sekumpulan elemen
bertipe sama secara berurutan (sequential).Masing-masing elemen dapat diakses
tersendiri, melalui indeks array bertipe ordinal (mempunyai urutan tertentu).
Bentuk Umum :
Type
NamaArray
= Array[tipeindeks] of TipeData;
Ciri-ciri Array :
-
setiap elemen data array diacu melalui indeksnya
-
indek array suatu tipe yang mempunyai keterurutan (ada suksesor dan
predecessor).
Ada
2 cara mendeklarasikan larik yaitu :
1.
Sebagai tipe data baru
Bentuk Umum :
Type
larik=Array[1..n] of datatype ;
Var x
: larik ;
2.
Langsung sebagai
variabel
Bentuk Umum :
Var x : Array[1..n] of
datatype ;
Keuntungan
:
o
Efisien memori ( bila semua elemen terisi,akses elemen waktunya sama).
o
Pengaksesan acak (sembarang elemen bisa diacu
langsung).
o
Mudah menelusuri elemen pendahulu
(predecessor) atau penerus(successor)
Kelemahan :
o
Bertipe homogen
o
Penyisipan dan penghapusan elemen tidak efisien.
o
Boros memori ( bila elemen tidak terisi).
o
Pada suatu aplikasi,representasi statis tidak
dimungkinkan
1.
Macam-macam Array :
a.
Array Dimensi Satu : larik tersusun dalam
satu baris/1 index elemen bertipe data yang sama, tetapi isi dari elemen
tersebut boleh berbeda.
o
Bentuk Umum :
namaArray :
array[index1] of tipedata
b.
Array Dimensi Dua : larik terdiri dari
beberapa baris dan beberapa kolom/2 index elemen yang bertipe sama.Contohnya
matrik.
o
Bentuk Umum :
namaArray :
array[index1,index2] of tipedata
c.
Array Dimensi Tiga atau lebih : larik yang
mempunyai 3 index/lebih elemen.
o
Bentuk Umum :
namaArray :
array[index1,index2,...,indexn] of tipedata
2.
Tipe Record/rekaman adalah kumpulan data yang
terdiri dari beberapa field(isian) dengan berbagai macam tipe data.
Bentuk
Umum :
Type
Namarecord
= record
Field1:
tipedata1 ;
Field2:
tipedata2 ;
…………………
…………………
Fieldx:
tipedatax ;
End
;
Record didalam record yaitu record berisi
record.
Pendeklarasian
: Nama_variabel.TglLahir.Tanggal
Nama_variabel.TglLahir.Bulan
Nama_variabel.TglLahir.Tahun
Record ini dapat disederhanaan menggunakan
with
Pendeklarasian
: WITH namarecord DO
pernyataan
Array Record yaitu suatu array(larik) yang
memuat/berisi record/kumpulan data.Cara mengakses field(isian)
yaitu :
Pengenal[Indeks].NamaField
Pembanding |
Larik/Array |
Rekaman/Record |
Elemen |
semua bertipe
sama |
dapat mempunyai
tipe data yang berbeda satu sama lainnya |
3.
Tipe Set/Himpunan : koleksi dari sejumlah
elemen(anggota) bertipe sama dan sifatnya tidak ada yang kembar. Sebuah set
memuat maksimal 255 anggota.
Bentuk
Umum :
Type namatipe
= set of tipedata;
Macam
konstanta Set :
a.
Konstanta enumerasi : elemennya dinyatakan
satu persatu [Mon,Sun,Tue]
b.
Konstanta rentang: elemennya
dinyatakan secara rentang berdasarkan tipe dasar set tersebut. Misal bertipe
digit [1…20],atau bertipe char [‘A’..’F’].
· Struktur data
majemuk, yang terdiri dari:
1.
Linier :
a. Stack
: kasus khusus struktur fleksibel elemen dengan penyisipan
dan penghapusan di satu ujung.
b. Queue
: struktur fleksibel elemen dengan penyisipan(rear/tail) di satu
ujung,penghapusan(front/head) di ujung lain.
c. List
: struktur fleksibel elemen dapat diakses/disisipkan/dihapus disembarang
posisinya
d. Multilist
: gabungan beberapa list.
2. Non
Linier : dapat berupa array (tipe data sama) atau record (tipe data berbeda).
a.
Pohon Biner : data pohon
terstruktur setiap simpul memiliki paling banyak 2 anak.
b.
Graph : model struktur datanya bersifat interkoneksi n ke-n.
PERBANDINGAN
Perbandingan |
Struktur Data
Sederhana |
Struktur Data
Terstruktur |
Jumlah Tipe Data |
melibatkan satu
tipe data |
menampung beberapa
tipe data |
Ukuran memori |
Terkecil |
Kumpulan dari
beberapa macam struktur data sederhana |
OPERATOR DALAM PASCAL
Dalam menulis program kita tidak mungkin terlepas dari penggunaan operator.
Operator sendiri didefinisikan sebagai sesuatu yang digunakan untuk melakukan
operasi-operasi tertentu, misalnya operasi aritmatika, penggabungan string dan
banyak lagi yang lainnya.
Nilai yang
dioperasikan oleh operator bersama operand membentuk suatu ekspresi.
Contoh :
1 + 2 – 3, yang
disebut ekspresi. Tanda + dan – merupakan tanda operator sedangkan nilai 1,2
dan 3 disebut operand.
Operator Assignment
Operator assignment digunakan untuk melakukan pemberian nilai terhadap
suatu variabel sehingga operator ini juga sering dikenal dengan operator
penugasan. Dalam bahasa Pascal operator yang digunakan untuk melakukan hal ini
adalah operator :=. Berikut ini bentuk umum untuk melakukan pemberian nilai
terhadap suatu variabel.
NamaVariabel := nilai_yang_akan_dimasukkan;
Contoh:
Var
x: integer;
y: real;
str: string;
Begin
x := 123;
y := 56.04;
str := ‘Mencoba memasukkan nilai ke
dalam variabel’;
....
End.
Operator Aritmatika
Bahasa Pascal menyediakan beberapa operator yang dapat digunakan dalam
operasi aritmatika, seperti penjumlahan, pengurangan, perkalian, pembagian dan
penentuan sisa bagi.
Operator |
Jenis Operasi |
Tipe Operand |
Tipe Hasil |
Contoh |
+ |
Penjumlahan |
Integer, real |
Integer, real |
a + b |
- |
Pengurangan |
Integer, real |
Integer, real |
x – 1 |
* |
Perkalian |
Integer, real |
Integer, real |
a * b |
/ |
Pembagian untuk bilangan riil |
Integer, real |
real |
5 / 3 |
div |
Pembagian untuk bilangan bulat |
Integer |
Integer |
10 div 4 |
mod |
Sisa bagi |
integer |
integer |
10 mod 3 |
Operator Logika
Operator logika digunakan untuk melakukan operasi-operasi yang menghasilkan
nilai logik (true dan false). Bahasa pascal menyediakan 4 buah operator logika,
yaitu:
Operator |
Jenis Operasi |
Tipe Operand |
Tipe Hasil |
not |
Negasi |
boolean |
boolean |
and |
Conjunction |
boolean |
boolean |
or |
Disjunction |
boolean |
boolean |
xor |
Exlusive disjunction |
boolean |
boolean |
OPERATOR NOT
Operator ini digunakan untuk menentukan
negasi atau pengingkaran dari nilai logik lain. Jika nilai yang dihasilkan
adalah true maka negasi-nya adalah false. Begitu
juga sebaliknya. Berikut ini table yang menunjukkan hubungan operator not.
A |
not A |
true |
False |
false |
true |
Contoh program dengan operator not
Program
operator_not;
Uses
wincrt;
Var
A:boolean;
Begin
Clrscr;
A:=false;
A:=not
A;
Writeln(A);
Readln;
End.
OPERATOR and
Untuk memudahkan penggunaan operator and,
ingatlah bahwa operand and hanya akan bernilai true jika semua
operandnya bernilai true. Selain itu operasi akan menghasilkan nilai false.
A |
B |
A and B |
True |
True |
True |
True |
False |
False |
False |
True |
False |
false |
false |
false |
Contoh program
menggunakan operator and:
Program
Operator_And;
Uses wincrt;
Begin
Clrscr;
Writeln(‘TRUE and
TRUE =’, true and true);
Writeln(‘TRUE and FALSE =’,
true and false);
Writeln(‘FALSE and TRUE =’,
false and true);
Writeln(‘FALSE and FALSE
=’,false and false);
Readln;
End.
OPERATOR or
Operator or akan
menghasilkan nilai true apabila satu atau semua operand-nya bernilai true.
Untuk memudahkan ingatlah bahwa operator or akan menghasilkan nilai false
apabila semua operandnya bernilai false. Selain itu, operator ini akan
menghasilkan nilai true.
A |
B |
A
or B |
true |
true |
true |
true |
false |
true |
false |
true |
true |
false |
false |
false |
Contoh program menggunakan operator or :
Program
operatorOr;
Uses wincrt;
Begin
Clrscr;
Writeln(‘TRUE or
TRUE =’,true or true);
Writeln(‘TRUE or
FALSE =’,true or false);
Writeln(‘FALSE or
TRUE =’,false or true);
Writeln(‘FALSE or
FALSE =’,false or false);
Readln;
End.
OPERATOR xor
Operator exclusive or (xor) ini akan
menghasilkan nilai true apabila hanya terdapat satu operand yang
bernilai true. Apabila kedua operandnya bernilai true maka operasi
ini akan menghasilkan nilai false, begitu juga apabila keduanya bernilai false.
A |
B |
A xor B |
true |
true |
false |
true |
false |
true |
false |
true |
true |
false |
false |
false |
Contoh program menggunakan operator xor:
Program operator_or;
Uses wincrt;
Begin
Clrscr;
Writeln(‘TRUE xor TRUE =’,true xor
true);
Writeln(‘TRUE xor FALSE =’,true xor false);
Writeln(‘FALSE xor TRUE =’,false xor true);
Writeln(‘FALSE xor FALSE =’,false xor false);
Readln;
End.
Operator Relasional
Operator relasional adalah operator yang digunakan untuk menentukan relasi
atau hubungan dari dua buah nilai atau operand. Operator ini terdapat dalam
sebuah ekspresi yang selanjutnya akan menentukan benar atau tidaknya ekspresi
tersebut. Operator relasional biasanya digunakan untuk melakukan pengecekan
kondisi dalam blok pemilihan. Adapun yang termasuk kedalam operasional didalam
bahasa Pascal adalah sebagai berikut:
Operator |
Jenis Operasi |
Tipe Operand |
Tipe Hasil |
Contoh |
= |
Sama dengan |
Tipe dasar, string, Pchar, set |
boolean |
A = 3 |
<> |
Tidak sama dengan |
Tipe dasar, string, Pchar, set |
boolean |
A <> 3 |
< |
Lebih kecil |
Tipe dasar, string, Pchar |
boolean |
A < 1 |
> |
Lebih besar |
Tipe dasar, string, Pchar |
boolean |
A > 5 |
<= |
Lebih kecil atau sama dengan |
Tipe dasar, string, Pchar, set |
boolean |
A <= B |
>= |
Lebih besar atau sama dengan |
Tipe dasar, string, Pchar, set |
boolean |
A >= B |
Sumber
: http://hermankomputer.blogspot.co.id/2011/07/operator-dalam-pascal-dalam-menulis.html
Komentar
Posting Komentar