You are here

Program 8 Operasi String

Yang ini sebenarnya program tambahan, habis program-program sebelumnya kan kebanyakan bermain logika matematik (tentang angka melulu). Ehh... dipikir-pikir, operasi tentang string kok gak ada? Tenaaannggg.... sekarang udah ada kok :p
 1: var nama : string;
 2:   urutan, posisi: integer;
 3: begin
 4:   nama:='Dijas Keren';
 5:   writeln('Yang ini delete');
 6:   for urutan:=1 to 11 do
 7:   begin
 8:     posisi:= 13 - urutan;
 9:     delete(nama, posisi, 1);
10:     writeln(nama);
11:   end;
12:   writeln;
13:   nama:='DijasKeren';
14:   writeln('Yang ini insert');
15:   writeln('Sebelum di Insert : ', nama);
16:   insert('-', nama, 6);
17:   writeln('Setelah di Insert : ', nama);
18:   readln;
19: end.

Outputnya seperti di bawah ini

Yang ini delete
Dijas Keren
Dijas Kere
Dijas Ker
Dijas Ke
Dijas K
Dijas 
Dijas
Dija
Dij
Di
D
Yang ini insert
Sebelum di Insert : DijasKeren
Setelah di Insert : Dijas-Keren

Jadi isi penggunaan delete itu => delete(string, posisinya, jumlah yang di hapus). Sedangkan insert => insert(yang mau disisipkan, string, posisinya). Gampang kan? Dengan ini bisa dibuat kayak Program 5 loh (tentang bintang).

Bagaimana jika suatu saat kamu pengen ngerubah string jadi numerik atau numerik jadi string?

  • str(angkanya:desimal yang diambil, variabel string tempat
    hasilnya disimpan) prosedur ini untuk mengubah numerik ke string
  • val(string, variabel numerik tempat hasilnya disimpan,
    posisi salah) prosedur ini untuk mengubah string ke numerik. Khusus posisi salah, yang dideteksi
    adalah posisi salah yang pertama (walaupun ada 5 biji yang salah, yang ke tangkap yang pertama)
  • Concat(string, string, string) : string
    Yang ini untuk menggabungkan string, ini
    fungsi loohh.. jadi hasil penggabungannya ditampung di Concat

Ini program terakhir tentang operasi string, program pembalik kata

 1: program pembalik_kata;
 2: var kata,hasil,tmp:string; i:integer;
 3: begin
 4:   write('Kata : ');readln(kata);
 5:   hasil:='';
 6:   for i :=length(kata) downto 1 do
 7:   begin
 8:     tmp:=copy(kata,i,1);
 9:     hasil:=hasil+tmp;
10:   end;
11:   write('Dibalik ',hasil);
12:   readln;
13: end.

Di program ini ada dua fungsi operasi string baru yang digunakan.

  • length(string) : integer
    Fungsi ini untuk menghitung panjang atau jumlah
    karakter.
  • copy(string, posisinya, jumlah yang akan diambil)
    Fungsi ini untuk mengambil
    sejumlah huruf dari string yang dimasukkan
  • Pos(string/huruf yang akan dicari posisinya, string awal):byte
    Fungsi ini untuk
    mengetahui posisi dari string/huruf dari kata/kalimat yang dimaksud. Bila bernilai nol berarti nilai
    string yang dicari tidak ada.

Seluruh fungsi ini bisa diliat di buku Turbo Pascal, Jogiyanto

Regards,

dj