OPERASI STRING PADA BAHASA PASCAL
·
Suatu String
dalam Bahasa Pascal dapat dioperasikan dengan berbagai macam tujuan. Pascal
menyediakan berbagai prosedur standar dan fungsi standar untuk operasi string.
·
Dalam Operasinya
String hanya mempunyai sebuah operator, yaitu operator ‘+’. Bila operator ini
digunakan untuk dua buah elemen string,maka akan menjadi penggabungan dua buah
string menjadi satu.
·
Panjang Maksimal
suatu string yang diijinkan oleh Pascal adalah 255 karakter.
Contoh:
Const
Jenis = 'bahasa';
Nama = 'Pascal';
Var
Sifat : String[15];
Kalimat : String [80];
Begin
Sifat := 'terstruktur';
Kalimat := Nama+' merupakan '+Jenis+' '+Sifat;
WriteLn(Kalimat);
readln;
End.
Output: Pascal merupakan bahasa terstruktur
Prosedur
Standar
àyang berguna untuk
memanipulasi string
·
DELETE
·
INSERT
·
STR
·
VAL
Fungsi
Standar Untuk Operasi String
·
CONCAT
·
COPY
·
POS
·
LENGTH
Prosedur
Standar
·
DELETE
Menghapus substring dari
suatu string, dimulai dari posisi i, sebanyak n
karakter.
Bentuk umum : DELETE (string, i, n)
uses
crt;
var
s,akhir, awal : string;
begin
clrscr;
s:='informatika';
akhir:=s;
awal:=s;
writeln('sebelum
dihapus:',s);
writeln;
{hapus akhir}
delete(akhir,5,7);
writeln('setelah dihapus:',akhir);
{hapus awal}
delete(awal,1,3);
writeln('setelah dihapus awal:',awal);
readln;
end.
Output:
sebelum
dihapus:informatika
setelah
dihapus:info
setelah
dihapus awal:ormatika
·
Insert
Menyisipkan string ke dalam
suatu string lainnya, pada posisi i.
Bentuk umum : INSERT (string1, string2, i)
uses
crt;
var
s1, s2 : string;
begin
clrscr;
s1:='AS';
s2:='PCAL';
Insert(s1,s2,2);
writeln('setelah disisipi=',s2);
readln;
end.
Output:
setelah
disisipi=PASCAL
contoh2:
VAR
kata : string[25];
BEGIN
kata := ‘algoritma pemograman’;
insert(‘dan ’,kata,11);
writeln(kata);
readln;
END.
Output: algoritma dan
pemograman
·
STR
Mengubah bentuk numerik(x)
menjadi nilai string(s)
Bentuk umum : STR (x [ : n [
:m ] ], string)
Nilai ‘n’ menunjukkan format
panjang dari nilai utuh dan nilai ‘m’ menunjukkan format panjang desimal (nilai
dibelakang koma)
VAR
N1, N2 : integer;
S1, S2 : string;
BEGIN
N1 := 1234; N2 := 567;
Writeln (N1+N2);
Str (N1:4,S1);{jika “:4” dihapus maka output tanpa spasi}
Str (N2:4,S2);
Writeln(S1+S2);
Readln;
END.
Output :
1801
1234
·
VAL
mengubah nilai suatu argumen string menjadi nilai
numerik
Bentuk umum :
Val(Var_string_angka,Var_nilai,kode)
Keterangan :
o
Var_string_angka
berisi data string yang berupa angka.
o
Var_nilai berisi data hasil konversi.
o
Jika terjadi
kesalahan data maka akan posisi kesalahan disimpan pada kode.
VAR
Nilaistring:string[10];
Nilaireal:real;
Posisisalah:integer;
BEGIN
Nilaistring:=’-123.45’;
Val(nilaistring,nilaireal,posisisalah);
Writeln(‘nilai string : ’,nilaistring);
Writeln(‘nilai real : ’,nilaireal);
Writeln(‘posisi salah : ‘,posisisalah’);
Nilaistring:=’-123.A5’;
Val(nilaistring,nilaireal,posisisalah);
Writeln(‘nilai string :
’,nilaistring);
Writeln(‘nilai real :
’,nilaireal);
Writeln(‘posisi salah :
‘,posisisalah’);
Readln;
END.
Output :
nilai string : -123.45
nilai real : -1.2345000000E+02
posisi salah : 0
nilai string : -123.A5
nilai real :
0.0000000000E+00
posisi salah : 6
Fungsi Standar
·
CONCAT
Menggabungkan dua string
secara berurut. Fungsi standar ini mempunyai operasi yang sama dengan operator
string ‘+’, yaitu merangkai beberapa nilai string.
Bentuk umum : ConCat(S1,S2[,S3,…, Sn])
uses crt;
VAR
S1, S2 : string[8] ;
S3 : string[20];
BEGIN
clrscr;
S1 := 'infor';
S2 := 'matika';
S3 := CONCAT(S1,S2);
Write ('Setelah digabung = ', S3);
readln;
END.
Output:
Setelah digabung =
informatika
·
COPY
Mengambil bagian string
(substring) dari suatu string, dimulai dari posisi i,sebanyak n karakter.
Bentuk umum : COPY (String, i, n)
uses crt;
Var
s,r : string;
BEGIN
clrscr;
s := 'informatika';
r := copy (s,3,6);
WriteLn ('Nilai r(COPY) adalah ', r);
readln;
END.
Output:
Nilai r(COPY) adalah format
·
POS
Mencari posisi letak dari
suatu substring yang ada dalam suatu string
Bentuk umum : POS
(subString, string)
VAR
Kata,S : String[20];
BEGIN
S := ‘ABCDEFGHIJKLMNOPQRST’;
Kata := ‘FGH’;
WriteLn(Kata, ‘ di posisi
‘,POS(Kata,S);
Readln;
END.
Output: FGH di posisi 6
·
LENGTH
Memberikan nilai panjang
atau jumlah karakter dari suatu string.
VAR
s : string[20];
BEGIN
s := ‘Pascal’;
WriteLn(‘Lenght : ’, ‘”‘,s,
‘”‘ ,‘ adalah ‘, length(s));
Readln;
END.
Output :
Length : “Pascal” adalah 6
terima kasih sebelumnya, tapi maaf saya mau bertanya. Di awal kalimat, anda mengatakan kalau operator string itu identik dengan tanda "+', sedangkan mengapa untuk di contoh bagian "delete" - nya, tidak ada operator "+" ya?
BalasHapusmohon penjelasannya yaa
Terima Kasih telah mengunjungi blog saya. dikatakan bahwa string hanya mempunyai 1 operator "+", yang digunakan untuk menyambung string. dan pada contoh delete bukan penggabungan string hanya menghapus substring dari suatu string.
Hapusom coba reference yang lain dong
BalasHapus