Selasa, 22 November 2016

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)
Contoh:
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)
Contoh 1:
uses crt;
var
   s1, s2 : string;
begin
   clrscr;
   s1:='AS';
   s2:='PCAL';
   Insert(s1,s2,2);
   writeln('setelah disisipi=',s2);
   readln;
end.

Output 1:
setelah disisipi=PASCAL

Contoh 2:
VAR
   kata : string[25];
BEGIN
   kata := ‘algoritma pemograman’;
   insert(‘dan ’,kata,11);
   writeln(kata);
   readln;
END.

Output 2:  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)
Contoh:
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 :
# Var_string_angka berisi data string yang berupa angka.
# Var_nilai berisi data hasil konversi.
# Jika terjadi kesalahan data maka akan posisi kesalahan disimpan pada kode.
Contoh:
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])
Contoh:
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)
Contoh:
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)
Contoh:
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.
Contoh:
VAR
   s : string[20];
BEGIN
   s := ‘Pascal’;
   WriteLn(‘Lenght : ’, ‘”‘,s, ‘”‘ ,‘ adalah ‘, length(s));
   Readln;
END.

Output :
Length : “Pascal” adalah 6

Tidak ada komentar:

Posting Komentar