String adalah data yang
berisi sederetan karakter dimana banyakya karakter berubah-ubah sesuai dengan
kebutuhan yaitu dari 1 sampai 255 karakter.tipe string yang tidak dinyatakan
panjang karakternya dianggap mempunyai 255 karakter.
Bentuk umum dari deklarasi tipe string adlah; tyape pengenal=string[panjang];
keterangan;pengenal;nama tipe data panjang;banyaknya karakter(bilangan bulat)
contoh deklarasi tipe data string:
type kata=string[30];
Bentuk umum dari deklarasi tipe string adlah; tyape pengenal=string[panjang];
keterangan;pengenal;nama tipe data panjang;banyaknya karakter(bilangan bulat)
contoh deklarasi tipe data string:
type kata=string[30];
tak jarang pula string dikatakan
sebagai array of character.
ada berbagai manipulasi string yang terdapat dalam pascal antara lain
String Manipulation Functions
ada berbagai manipulasi string yang terdapat dalam pascal antara lain
String Manipulation Functions
-function Copy(S; Index, Count: Integer): string;
-function Length(S): Integer;
-function MidStr(const AText: string; const AStart, ACount: Integer): string;
-function Pos(Substr: string; S: string): Integer;
-function PosEx(const SubStr, S: string; Offset: Cardinal = 1): Integer;
-function RightStr(const AText: string; const ACount: Integer): string;
-function Trim(const S: string): string;
-function TrimLeft(const S: string): string;
-function Length(S): Integer;
-function MidStr(const AText: string; const AStart, ACount: Integer): string;
-function Pos(Substr: string; S: string): Integer;
-function PosEx(const SubStr, S: string; Offset: Cardinal = 1): Integer;
-function RightStr(const AText: string; const ACount: Integer): string;
-function Trim(const S: string): string;
-function TrimLeft(const S: string): string;
-procedure Delete(var S: string; Index,
Count:Integer);
-procedure Insert(Source: string; var S: string; Index: Integer);
-procedure Insert(Source: string; var S: string; Index: Integer);
contoh penggunaan string dalam pascal misalnya
var
nama string;
begin
write(‘Inputkan nama anda’);readln(nama);
writeln(‘Nama anda adalah’, nama);
end.
nama string;
begin
write(‘Inputkan nama anda’);readln(nama);
writeln(‘Nama anda adalah’, nama);
end.
Pada string juga bisa di lakukan operasi
penjumalahan
misalnya kita mempunyai string
misalnya kita mempunyai string
nama:nov;
aku:hard;
aku:hard;
jika dilakukan penjumlahan
nama+aku maka akan menjadi novhard
nama+aku maka akan menjadi novhard
PROSEDUR STANDAR PADA OPERASI STRING:
1. DELETE
Digunakan untuk
membuang/menghapus sejumlah karakter (jumlah karakter yang dibuang ditunjukan
oleh nilai integar count)mulai dari posisi tertentu (ditunjukan oleh nilai
integar index) dari suatu nilai string(ditunjukan oleh pengenal variebel string
s).
Jika posisi index lebih besar dari panjaang string s,maka tidak ada karakter yang akan terhapus.
bentuk umum:DELETE(Var s:string s,index:integar,count:integar);
Jika posisi index lebih besar dari panjaang string s,maka tidak ada karakter yang akan terhapus.
bentuk umum:DELETE(Var s:string s,index:integar,count:integar);
Syntax : delete(s,i,n);
Contoh :
Contoh :
program hapus;
uses wincrt;
var s : string;
begin
s:='saya seorang insinyur';
delete(s,6,3);
writeln(s); { 'saya sang insinyur'}
end.
uses wincrt;
var s : string;
begin
s:='saya seorang insinyur';
delete(s,6,3);
writeln(s); { 'saya sang insinyur'}
end.
2. INSERT
Digunakan untuk menyisipi suatu
string s(mulai dari posisi yang ditunjukan oleh nilai integar index.
Jika hasil dari penyisipan
menjadi string yang panjang lebig dari 255 karakter,maka akan menjadi sampai
dengan 255 karakter saja.
Bentuk umum:INSERT(source :string ,var s;string ,index:integer);
Bentuk umum:INSERT(source :string ,var s;string ,index:integer);
3. STR
Digunakan untuk mengubah nilai
numerik (ditunjukkan oleh nilai X ) menjadi nilai stirng (ditunjukkan oleh
pengenal variabel string S). Nilai X dapat berupa nilai numerik integer maupun
nilai numerik real. Hasilnya dapat terformat maupun tidak terformat. Jika width
atau decimals disebutkan, maka akan dihasilkan nilai string dengan format
panjang tertentu. Nilai width menunjukkan format panjang dari nilai utuh dan
nilai decimals menunjukkan format dari panjang nilai dibelakang koma.
Bentuk Umum : STR(x[:width[[:decimals],var S : String);
Bentuk Umum : STR(x[:width[[:decimals],var S : String);
Syntax : str(numvar,strvar)
Contoh :
program konversiangka_1;
uses wincrt;
var s : string;
i : integer;
begin
write('masukkan angka: ');
readln(i);
str(i,s);
writeln('itu adalah: ',s);
end.
uses wincrt;
var s : string;
i : integer;
begin
write('masukkan angka: ');
readln(i);
str(i,s);
writeln('itu adalah: ',s);
end.
4. VAL
Digunakan untuk mengubah suatu
nilai string (ditunjukkan oleh nilai S) menjadi nilainumerik (ditunjukkan oleh
nilai variabel numerik V). Sring harus berisi angka atau tanda plus atau tanda
minus jika tidak berarti salah dan letak kesalahannya ditunjukkan pada nilai
variabel code. Nilai variabel code akan nol jika tidak ada salah.
Bentuk Umum: VAL(S : string,V,var code);
Bentuk Umum: VAL(S : string,V,var code);
Syntax : val(strvar,numvar,errorcode)
strvar adalah variabel string yang akan dikonversi, numvar variabel numerik ( bisa integer atau real, dan errorcode adalah variabel integer yang menyimpan error code (kode kesalahan). Jika errorcode adalah 0, konversi berhasil. Sebaliknya, hal ini akan menunjukan posisi dimana pada strvar yang menyebabkan kegagalan.
strvar adalah variabel string yang akan dikonversi, numvar variabel numerik ( bisa integer atau real, dan errorcode adalah variabel integer yang menyimpan error code (kode kesalahan). Jika errorcode adalah 0, konversi berhasil. Sebaliknya, hal ini akan menunjukan posisi dimana pada strvar yang menyebabkan kegagalan.
Contoh :
program konversiangka;
uses wincrt;
var s : string;
e : integer; r : real;
begin
write('masukkan angka : ');
readln(s);
val(s,r,e);
if e<>0 then writeln('salah pada posisi : ',e)
else writeln('itu adalah : ',r:4:3);
end.
uses wincrt;
var s : string;
e : integer; r : real;
begin
write('masukkan angka : ');
readln(s);
val(s,r,e);
if e<>0 then writeln('salah pada posisi : ',e)
else writeln('itu adalah : ',r:4:3);
end.
FUNGSI STANDAR UNTUK OPERASI STRING
1. COPY
Digunakan untuk menyalin
sejumlah karakter (jumlah karakter yang disalin ditunjukkan oleh nilai count)
mulai dari posisi yang ditunjukkan oleh nilai integer index dari nilai string
yang ditunjukkan oleh s.
Nilai yang dihasilkan dari fungsi ini berupa string.
Bentuk Umum : COPY(s : string, index : integer, count : integer);
Nilai yang dihasilkan dari fungsi ini berupa string.
Bentuk Umum : COPY(s : string, index : integer, count : integer);
Syntax : copy(s,dari,banyaknya)
Contoh : st:=copy(s,5,3); mengekstrak 3 karakter dari s, dimulai dari karakter kelima.
Misal s:='Who are you ?'; st adalah 'are'.
catatan: bila indek lebih besar dari panjang string maka hasilnya akan kosong:
Contoh : st:=copy(s,15,4); { kosong} jika banyaknya string yang akan diekstrak lebih besar dari s, maka hasilnya adalah bagian yang tersisa dari string.
Contoh : st:=copy(s,9,10); st hasilnya adalah 'you ?'
Contoh : st:=copy(s,5,3); mengekstrak 3 karakter dari s, dimulai dari karakter kelima.
Misal s:='Who are you ?'; st adalah 'are'.
catatan: bila indek lebih besar dari panjang string maka hasilnya akan kosong:
Contoh : st:=copy(s,15,4); { kosong} jika banyaknya string yang akan diekstrak lebih besar dari s, maka hasilnya adalah bagian yang tersisa dari string.
Contoh : st:=copy(s,9,10); st hasilnya adalah 'you ?'
2. CONCAT
Digunakan untuk merangkai atau
menggabungkan beberapa nilai string yang ditunjukkan oleh nilai string S1,
S2,…,Sn. Operasi ini sama dengan opersai string +.
Bentuk Umum : CONCAT(S1[,S2,...,Sn]);
Bentuk Umum : CONCAT(S1[,S2,...,Sn]);
Syntax : concat(s1,s2,...,sn)
Contoh : st:=concat(s1,s2); Jikas1='ABC' dan s2='DEF',
st akan menjadi 'ABCDEF' st:=concat('Borland ','Pascal ','ver. ','7.0'); akan menjadi 'Borland Pascal ver. 7.0'
-Insert : Menyisipkan suatu string ke dalam string yang lain.
Syntax : insert(asal,target,indek)
Contoh : st:=concat(s1,s2); Jikas1='ABC' dan s2='DEF',
st akan menjadi 'ABCDEF' st:=concat('Borland ','Pascal ','ver. ','7.0'); akan menjadi 'Borland Pascal ver. 7.0'
-Insert : Menyisipkan suatu string ke dalam string yang lain.
Syntax : insert(asal,target,indek)
Contoh :
program sisip ;
uses wincrt;
var s1, s2 : string;
begin
s1:='tidak ';
s2:='saya bekerja';
insert(s1,s2,6);
writeln(s2); {saya tidak bekerja }
end.
uses wincrt;
var s1, s2 : string;
begin
s1:='tidak ';
s2:='saya bekerja';
insert(s1,s2,6);
writeln(s2); {saya tidak bekerja }
end.
Jika hasilnya lebih dari 255 maka akan terpotong
menjadi 255.
3. POS
Digunakan untuk mencari posisi
letak dari suatu nilai string (ditunjukkan oleh substr) yang ada didalam nilai
string yang lain (ditunjukkan oleh s).
Nilai yang dihasilkan berupa nilai byte yang menunjukkan letaknya. Nilai akan nol jika posisi string yang dicari tidak ada.
Bentuk Umum : POS(substr : string, s :string);
Nilai yang dihasilkan berupa nilai byte yang menunjukkan letaknya. Nilai akan nol jika posisi string yang dicari tidak ada.
Bentuk Umum : POS(substr : string, s :string);
Syntax : Pos(substr,s)
Contoh : n:=pos('are','Who are you ?'); { n:=5; }
Jika substring tidak ditemukan, maka hasilnya 0.
Contoh : n:=pos('are','Who are you ?'); { n:=5; }
Jika substring tidak ditemukan, maka hasilnya 0.
4. LENGTH
Digunakan untuk menghitung
panjang atau jumlah karakter yang ada di nilai string yang ditunjukan oleh
s.Hasil dari fungsi ini adalah nilai numerik integar positif.
Bentuk umum
Bentuk umum
Length :
menghasilkan panjang string.
Syntax : length(s)
Contoh : n:=length(s);
Misal s:='pemrograman'; n akan sama dengan 11.
Syntax : length(s)
Contoh : n:=length(s);
Misal s:='pemrograman'; n akan sama dengan 11.
No comments:
Post a Comment