Blog for Learning

| lesson material | material summary | questions and answers | definitions | types and examples | other information | materi pelajaran | ringkasan materi | pertanyaan dan jawaban | definisi | jenis-jenis dan contoh-contoh | informasi lainnya |

Powered by Blogger.

Pages

Operasi String pada Pascal

STRING


String merupakan kumpulan karakter , berbentuk array yang dimulai dengan indeks 1
 Misalkan terdapat string S sebagai berikut:
P
A
S
C
A
L
           
            String ‘PASCAL’ di atas merupakan array di mana S[1] = P,   S[2] = A,   S[3] = S,   S[4] = C,   S[5] = A,   S[6] = L
           
OPERASI STRING
¨         Menggabung String
Di dalam bahasa Pascal, penggabungan dua buah string atau lebih dapat dilakukan dengan dua cara, yaitu dengan menggunakan operator plus (+) dan dengan menggunakan fungsi concat, yang memiliki bentuk deklarasi sebagai berikut:

        Function concat(s1[,s2, … , sn]:string):string;

Contoh :        ‘D3’ + ‘STATERKOM’   dapat juga dituliskan dengan
                          Concat(‘D3’,’STATERKOM’)

¨         Menghapus Substring
        Untuk melakukan penghapusan substring dari suatu string, dapat digunakan prosedur delete yang memiliki bentuk deklarasi sebagai berikut:

        Procedure delete (var S:string; i,n : integer);

Prosedur tersebut akan menghapus substring sebanyak n karakter dari string S mulai dari posisi ke-i.

¨         Menyalin string
        Proses penyalinan string dilakukan dengan fungsi copy yang memiliki bentuk deklarasi sebagai berikut:

        Function copy(S:string; i,n :integer) : string

Fungsi ini akan melakukan penyalinan substring dari string S sebanyak n karakter dimulai dari posisi atau indeks ke-i.

¨         Menyisipkan string
        Untuk melakukan penyisipan substring ke dalam string tertentu adlah dengan menggunakan prosedur insert, yang memiliki bentuk deklarasi sebagai berikut:

        Procedure insert(S1:string; var S2: string; i : integer);

 Prosedur di atas akan menyisipkan string S1 ke dalam S2 pada posisi ke-i.

¨         Mendapatkan posisi string
        Untuk mengetahui posisi substring di dalam suatu string, maka digunakan fungsi Pos yang memiliki bentuk deklarasi sebagai berikut:

        Function Pos (substr : string; S : string) : byte;

Fungsi tersebut akan mengembalikan indeks berupa nilai (bertipe integer) yang merupakan posisi dari substring yang dicari.

¨         Mendapatkan panjang string
   Panjang sring merupakan jumlah karakter yang terdapat di dalam suatu string. Untuk mendapatkan panjang string dalam bahasa Pascal digunakan fungsi length yang memiliki bentuk deklarasi sebagai berikut:

   Function length(S:string):integer;

Fungsi tersebut akan mengembalikan panjang string S.

¨         Konversi Bilangan ke String atau sebaliknya
        Untuk mengkonversi suatu bilangan menjadi string dapat dilakukan dengan menggunakan prosedur Str yang memiliki bentuk deklarasi sebagai berikut:

        Procedure Str(Bilangan[:Lebar[:Desimal]];var StHasil:string);

v  Bilangan adalah nilai numeris yang akan dikonversi
v  StHasil adalah variable yang akan menerima hasil konversi

Sedangkan untuk mengkonversi string ke bilangan dapat digunakan prosedur val yang memilki bentuk deklarasi sebagai berikut:

            Procedure val(St; var V; var Kode):integer;

v  St adalah string yang berisi bilangan
v  V adalah variable yang akan diisi dengan nilai numeris dari St
v  Kode adalah variable yang akan diisi dengan nilai numeris yang menyatakan ada tidaknya kesalahan sewaktu pengkonversian. Variable ini berisi nol kalau St berhasil dikonversi. Nilai selain nol menyatakan letak kesalahan

¨         Konversi ke kapital
        Untuk mengkonversi dari huruf kecil menjadi huruf capital dapat digunakan fungsi Upcase dengan argumen bertipe char memberikan hasil berupa huruf capital dari argumennya.Sekiranya argumen tidak berupa huruf kecil, nilai balik fungsi ini akan sama dengan argumennya.

¨         Karakter ke ASCII atau sebaliknya
        Dua fungsi yang berkaitan dengan pengkonversian karakter ke nilai ASCII dan sebaliknya adalah Ord dan Chr.
v  Ord memberikan nilai ASCII dari sebuah karakter
v  Chr mendapatkan karakter berdasarkan suatu nilai ASCII
Contoh : Ord(‘A’) memberikan hasil 65
               Chr(65) memberikan hasil ‘A’



TUGAS STRING
v Jalankan TPW
v Tuliskan kode program berikut ini

   Program string1;
Uses wincrt;
Var
   Kata_1, Kata_2, Kata_4, Hasil : String;
   Spasi                                : String[1];
Begin                      
   ClrScr;
   Spasi := ' ';
   Kata_2 := 'Latin';
   Kata_1 := 'Concatenate';
   Kata_4:= 'join';
{Menggunakan tanda + untuk menggabungkan kata}
   Hasil := Kata_1 + Spasi + 'is' + Spasi + Kata_2 + ' for ' +  Kata_4;
   WriteLn(Hasil);
End.

v Simpan kode program diatas dengan nama string1.pas kedalam folder anda!
v Jalankan kode program tersebut dan lihat hasilnya di layar


Program string2;
Uses wincrt;
Var
   Tgl                         : String;
   Day, Month, Year, Error_code  : Integer;
Begin
   ClrScr;
   WriteLn('Masukkan tanggal dalam bentuk: MM-DD-YY : ');
   ReadLn(Tgl);
   {konversi bulan}
   Val(Copy(Tgl, 1, 2), Month, Error_code);
   {konversi hari}
   Val(Copy(Tgl, 4, 2), Day,   Error_code);
   {konversi tahun}
   Val(Copy(Tgl, 7, 2), Year,  Error_code);
   {Cetak Hasil}
   WriteLn('Tanggal sekarang adalah: ');
   WriteLn('          Month = ', Month);
   WriteLn('          Day   = ', Day);
   WriteLn('          Year  = ', Year + 2000);
End.

v Simpan kode program diatas dengan nama string2.pas kedalam folder anda!
v Jalankan kode program tersebut dan lihat hasilnya di layar



Program string3;
Uses wincrt;
Var
   Tgl, Temp_1, Temp_2, Temp_3  : String;
   Day, Month, Year               : Integer;
Begin
   ClrScr;
    WriteLn('Memasukkan tanggal: ');
   Write('         Month = ');   ReadLn(Month);
   Write('         Day   = ');   ReadLn(Day);
   Write('         Year  = ');   ReadLn(Year);

{ convert month }
   Str(Month, Temp_1);

{ convert day }
   Str(Day,   Temp_2);

{ convert year }
   Str(Year,  Temp_3);

 Tgl := Concat(Temp_1, '-', Temp_2, '-', Temp_3);

{ print out Hasil }
   WriteLn('Tanggalnya adalah : ', '''', Tgl, '''');
End.

v Simpan kode program diatas dengan nama string3.pas kedalam folder anda!
v Jalankan kode program tersebut dan lihat hasilnya di layar

  


program kapital2kecil;

uses wincrt;

var
  posisi : integer;
  kalimat : string;
  kar : char;

begin
  clrscr;
  kalimat := '2 * 2 SAMA DENGAN 4';
  writeln('SEMULA : ',kalimat);
  for posisi := 1 to length(kalimat) do
  begin
    kar := kalimat[posisi];
    if (kar >= 'A') AND (kar <= 'Z') then
    begin
      kar := chr(ord(kar) + 32);
      kalimat[posisi] := kar;
    end;
  end;
  writeln ('HASIL  : ',kalimat);
end.

v Simpan kode program diatas dengan nama kap2kcl.pas kedalam folder anda!
v Jalankan kode program tersebut dan lihat hasilnya di layar




TUGAS:
Buatlah program dalam bahasa Pascal dan C++ untuk soal-soal berikut ini.
1.  Buatlah program untuk membalik suatu string. Misalnya string ‘SELAMAT BELAJAR’ diubah menjadi ‘RAJALEB TAMALES’
2.     Buatlah program yang meminta suatu string dimasukkan dari keyboard, kemudian program melaporkan:
§   Jumlah huruf  kapital
§   Jumlah huruf kecil
3.     Buatlah program yang mengkonversi setiap huruf kecil menjadi huruf capital dan setiap huruf capital menjadi huruf kecil. Contoh:
‘Turbo Pascal’ menjadi ‘tURBO pASCAL’
4.     Asumsikan bahwa terdapat string MATEMATIKA, buat program yang memanipulasi string sehingga menghasilkan output seperti di bawah ini:
M
M-A
M-A-T
M-A-T-E
M-A-T-E-M
M-A-T-E-M-A
M-A-T-E-M-A-T
M-A-T-E-M-A-T-I
M-A-T-E-M-A-T-I-K
M-A-T-E-M-A-T-I-K-A
0 Komentar untuk "Operasi String pada Pascal"

Silahkan berkomentar sesuai artikel

 
Template By Kunci Dunia
Back To Top