Minggu, 19 Oktober 2014

Manipulasi String Pada Pascal

OPERASI STRING

Suatu String dalam Bahasa Pascal dapat dioperasikan dengan berbagai macam tujuan. Pascal menyediakan berbagai prosedur standar dan fungsi stanfar untuk opersai string.

Prosedur Standar Fungsi Standar

1. DELETE 1. CONCAT

2. INSERT 2. COPY

3. STR 3. POS

4. VAL 4. LENGHT

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 = ‘Turbo Pascal’;
            Var
               Sifat : String[10];
               Kalimat : String [80];
            Begin
               Sifat := ‘terstruktur’;
               Kalimat := Jenis+’  ‘+Nama+’  ‘+’merupakan’+Jenis+’  ‘+Sifat;
               WriteLn(Kalimat);
            End.
à Bahasa Turbo Pascal merupakan Bahas terstrukur

Procedure Standart pada String
1.      DELETE (Procedure)
ð menghapus substring dari suatu string, dimulai dari posisi i, sebanyak n à String
BU : DELETE ( string, i, n)
 Cat. Jika jumlah I lebih besar dari jumlah karakter dalam string, maka tidak ada karakter yang terhapus
 Contoh :       VAR   s,h : string;
BEGIN
    s := ‘ABCDEF’;
    h := delete(s,2,3);
    WriteLn(‘String pertama =  ’, s);
    WriteLn(‘String akhir =   ‘, h);
 END.
à    String pertama = ABCDEF
String kedua =  AEF

2.       INSERT     ð insert (menyisipkan) substring (string1) dalam suatu string (string2), pada posisi I à String

BU : INSERT (string1, string2, i)
Contoh :       VAR   r,s : string[24];
    s := ‘UNIVERSITAS DARMA’;
BEGIN
    r := insert(‘GUNA’,s,7);                                
   writeLn(‘Hasil r adalah  ‘, r);
END.
 à Hasil r adalah  UNIVERSITAS GUNADARMA
Cat. Apabila hasil penyisipan menjadi String yang panjangnya lebih dari 255 karakter, maka yang dianggap signifikan hanya sampai 255 karakter saja.

3.       STR ð mengubah bentuk numerik (x) menjadi nilai string (s)
BU : STR (x [ : n [ :m ] ], string)

Nilai  ‘n’ menunjukkan format panjang dari nilai utuh dan nilai ‘m’ menunjukkan format panjang desimal (nilai dibelakang koma)
C/:       VAR    N1,N2            : integer;
                       S1,S2  : string;
            BEGIN
                 N1 := 1234;  N2 := 567;
     Writeln (N1+N2);                                                
     Str (N1:4,S1); 
     Str (N2:4,S2);
     Writeln(S1+S2);                                                  

                       END.  
                        à 1801_ terdapat spasi 1
                                                                                    1234  567

4.       VAL ð mengubah nilai suatu argumen string menjadi nilai numerik
BU :

Val(Var_string_angka,Var_nilai,kode)
                                                                                  posisi salah

Cat.     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

C/:      
VAR    N1, N2                        : Real;
S1, S2                        : String[6];
            Salah1,salah2          : Integer;
BEGIN
            S1 := ‘123.45’
            S2 := ‘765.A3’
            Val (S1, N1, salah);
            Val (S2, N2, salah);
            WriteLn(‘Nilai String1 = ‘ , S1);
WriteLn(‘Nilai String2 = ‘, S2);
            WriteLn(‘Nilai Real1   =’, N1);
            WriteLn(‘Nilai Real2   =’, N2);
            WriteLn(‘Posisi Salah N1 = ‘, salah1);
            WriteLn(‘Posisi Salah N2 = ‘, salah2);
END.

Nilai String1 = 123.45  
Nilai String2 = 765.A3
Nilai Real1   = 1.2345000000E+02
Nilai Real2   = 7.6500000000E+02
Posisi Salah N1 = 0
Posisi Salah N2 = 5


Fungsi Standar pada Operasi String

  1. CONCAT ð menggabungkan dua string secara berurut

BU :
ConCat(S1,S2[,S3,…, Sn])

Cat. Fungsi standar ini mempunyai operasi yang sama dengan operator string ‘+’, yaitu merangkai beberapa nilai string.

 

C/:       VAR
                 S1, S2 : string[3] ;
                 S3  : string[6];
            BEGIN
                S1 := ‘ABC’;    S2 := ’XYZ’;
    S3 := CONCAT(S1,S2);
    Write (‘Nilai S3 = ‘, S3);                                                  
                        END.

                              à        Nilai S3 = ‘ABCXYZ’                 


2.    COPY       ð mengambil bagian string (substring) dari suatu string, dimulai dari posisi i, sebanyak n à String


BU :COPY (String, i, n )

C/:       VAR
                             s,r : string;
            BEGIN
                 s := ‘ABCDEF’;
                 r := copy (s,2,3);
    WriteLn (‘Nilai r adalah  ‘, r);
            END.

à        Nilai r adalah  BCD
           
3.    POS        ð Mencari posisi letak dari suatu substring yang ada dalam suatu string à Interger


BU : POS (subString, string)

Cat : Jika SubString yang dicari terdiri dari beberapa karakter, maka dalam pencariannya akan mencari deretan karakter yang sesuai. 

C/:       VAR
                 K1, K2, K3, K4     : string[4];
                 S                            : String[20];
            BEGIN
                 S := ‘ABCDEFGHIJKLMNOPQRST’;
                 K1 := ‘ FGH’;
     K2 := ‘H’;
     K3 := ‘JUGA’;
     K4 := ‘PQRS’;
     WriteLn(K1, ‘ di posisi  ‘,POS(K1,S);                          
     WriteLn(K2, ‘ di posisi  ‘,POS(K2,S);                          
     WriteLn(K3, ‘ di posisi  ‘,POS(K3,S);                          
     WriteLn(K4, ‘ di posisi  ‘,POS(K4,S);                          
            END.

                        à        FGH di posisi 6
H diposisi 6
JUGA diposisi 0
PQRS diposisi 16

4.      LENGTH ð memberikan nilai panjang atau jumlah karakter dari suatu string à integer

 

C/:       VAR         s : string[20];
                 i : word;
            BEGIN
.                s := ‘program pascal’;
                 i := LENGTH(s);
                             WriteLn(‘Panjang string : ’, ‘‘‘‘,s, ‘‘‘‘ ,‘  adalah  ‘, I, ‘  karakter’);                                END.
                                    à     Panjang string “program pascal” adalah  14 karakter

Konsep Dasar Bahasa Pascal

Sejarah Singkat Bahasa PASCAL
Bahasa PASCAL pertama kali dikembangkan pada awal tahun 70-an oleh NICLAUS WIRTH di Technical University, Zurich – Swiss. Nama PASCAL diambil dari nama seorang ahli matematika bangsa Perancis, yaitu BLEISE PASCAL yang telah berjasa menemukan alat hitung mekanis pertama di dunia pada abad ke-17. Bahasa pemrograman ini termasuk kategori “High Level Language”. Instruksi-instruksi yang digunakan dalam bahasa pemrograman ini sangat sistematis dan terstruktur. Pada awalnya bahasa pemrograman ini diperkenalkan dengan tujuan untuk menjelaskan masalah pemrograman komputer bagi mahasiswa yang belajar pemrograman komputer. Ternyata dalam waktu singkat, bahasa pemrograman ini menjadi salah satu bahasa yang sangat populer dikalangan universitas, sehingga menjadi julukan sebagai bahasa universitas.
Mulai dari awal perkembangannya hingga saat ini banyak sekali jenis bahasa pemrograman ini, masing-masing merupakan hasil pengembangannya, antara lain :
  • UCSD Pascal
  • Microsoft Pascal
  • Apple Pascal
  • Turbo Pascaldsb

Diantara versi-versi yang ada, Turbo Pascal merupakan versi yang sangat populer saat ini.
Struktur Dan Komponen Dasar Program Pascal.
Struktur dari suatu program Pascal terdiri dari sebuah judul program dan suatu blok program atau badan program. Blok program dibagi lagi menjadi dua bagian, yaitu bagian deklarasi dan bagian pernyataan (statement).
Struktur program :
Judul Program PROGRAM nama-program;
Blok Program
Bagian deklarasi
- deklarasi label LABEL nama-label;
- deklarasi konstanta CONST…………..;
- deklarasi tipe         TYPE …………….;
- deklarasi variabel VAR ……………...;
- deklarasi prosedur PROCEDURE nama-prosedur;
……………………………….;
- deklarasi fungsi FUNCTION nama-fungsi;
………………………….;
Bagian Pernyataan
Begin
(statement)  
…………;
…………;
end.
Contoh :  Menghitung luas bidang berbentuk empat persegi panjang dengan panjang P dan lebar L.
PROGRAM Luas; {Judul}
VAR P,L,Luas : real; {Deklarasi variabel}
BEGIN
Read (P,L); {Statemant}
Luas := P*L; {Statement}
Write (P, L, Luas); {Statement}
END.
Judul program sifatnya adalah optional, dan bila ditulis, harus terletak pada awal dari program dan diakhiri dengan titik koma.
Bagian deklarasi digunakan bila di dalam program digunakan pengenal (identifier). Identifier dapat berupa label, konstanta, tipe, variabel, prosedur dan fungsi. Kalau suatu program menggunakan identifier, Pascal menuntut supaya identifier tersebut diperkenalkan terlebih dahulu sebelum digunakan, yaitu dideklarasikan terlebih dahulu pada bagian ini.
Beberapa aturan dalam program Pascal :
Akhir sebuah program Pascal ditandai dengan tanda baca titik (.) setelah END yang             paling akhir.
Tanda titik koma (;) merupakan pemisah antar instruksi satu dengan lainnya.
Beberapa statement boleh ditulis menjadi satu baris dipisahkan dengan tanda baca titk         koma (;)
Contoh : simpan  :=  akhir;   akhir := simpan + awal;
Baris komentar diletakkan diantara tanda (* dan *) atau diantara tanda { dan }
Contoh : Var rerata : real; (*nilai rata-rata*)
Nil1 : real; {nilai ujian}
Statement  (pernyataan)
Adalah instruksi atau gabungan instruksi, yang menyebabkan komputer melakukan aksi.
Type statement dalam Pascal terdiri atas :
1. Sederhana : 
- Menandai sebuah item data ke sebuah variabel (assignment statement)
contoh : X := Y * 4.135
- pemanggilan procedure dan goto statement

2. Terstruktur:
- Compound Statement
contoh : Begin 
read (x) ;
y := x + 5;
write (y)
 End.
     - Repetitive Statement
contoh : For I := 1 to 100 do 
write (count);
    - Conditional Statement
contoh : If x > 100 then write (s)
else write (p) ;
Komponen Dasar Program Pascal
Pola susun bahasa Pascal dibentuk dengan menggunakan komponen bahasa pemrograman yang umum, yaitu :
1. Simbol Dasar
2. Reserved Word (kata pasti)
3. Identifier (penyebut)


1. Simbol Dasar.
Simbol dasar terdiri atas:
1. Simbol huruf, yaitu huruf A sampai dengan Z atau a sampai dengan z.
(huruf besar dan kecil).
2. Simbol angka atau digit yaitu : 0,1,2,3,4,5,6,7,8,9.
3. Simbol khusus, yaitu
+   -   *   /   ;   :=   ,   ‘   =   <   >   <=   >=   <>   :   {  }   ( )   [   ]
2. Reserved Word (kata pasti)
Reserved Word adalah suatu kata yang secara mutlak tidak boleh diartikan lain dan harus digunakan sebagaimana yang telah didefinisikan atau ditentukan kegunaanya oleh bahasa Pascal. Reserved word ini tidak boleh didefinisikan ulang oleh pemakai, sehingga tidak dapat dipergunakan sebagai pengenal (identifier)
Reserved Word ini jumlahnya berbeda untuk masing-masing bahasa Pascal.
Contoh beberapa reserved word yang telah didefinisikan oleh bahasa pascal antara lain 
AND         ELSE LABEL   SET
ARRAY          END OF   TYPE
BEGIN         FUNCTION OR   UNTIL
CASE         FOR PROCEDURE   VAR
CONST         GOTO PROGRAM    WHILE
DO         IF RECORD   WITH
DOWNTO       IN REPEAT   dsb
3. Identifier (sebutan/pengenal)
Identifier merupakan sebuah kata yang digunakan sebagai nama atau sebutan terhadap sesuatu didalam program. Pemakai dapat mendefinisikan sendiri suatu nama sebagai identifier.
Identifier ini terdiri atas :
1. Identifier Standar, yaitu identifier yang telah didefinisikan oleh bahasa pascal.
Contoh dari Identifier standar ini antara lain:
ABS LN
ARCTAN ODB
BOOLEAN PRED
CHAR ROUND
CHR READ
COS READLN
EOF SQR
EOLN SQRT
EXP SUCC
Dan masih banyak lagi.
2. Identifier Non Standar; yaitu identifier yang didefinisikan oleh pemakai bahasa pascal; misalnya;
3. nama suatu program 
4. nama suatu konstanta
5. nama suatu variabel
6. nama suatu procedure
Identifier ini bebas, tetapi dengan ketentuan-ketentuan sebagai berikut :
Terdiri dari gabungan huruf dan angka dengan karakter pertama harus berupa huruf.              Huruf besar dan huruf kecil dianggap sama.
Tidak boleh mengandung blank.
Tidak boleh mengandung simbol-simbol khusus, kecuali garis bawah.
Panjangnya bebas, tetapi hanya 63 karakter pertama yang dianggap signifikan. Contoh :

Identifier
Keterangan
GajiKaryawan
Benar
No_Mhs
Benar
P3K
Benar
1X
Salah, karakter pertama harus huruf
A&B
Salah, tidak boleh mengandung simbol khusus
A B
Salah, tidak boleh mengandung blank

Referensi :
1. Anonim, “Algoritma & Pemrograman II”, Penerbit Gunadarma, Jakarta, 1990
2. Bryon, Goffried, “Programming with PASCAL”, Schaum Series, New York, 1986
3.  Prather, Ronald E., “Problem Solving Principle : Programming with Pascal”, Prentice Hall, New Jersey, 1982
4. Dumairy, Matematika Terapan untuk Bisnis & Ekonomi Press (BPFE Yogyakarta)
5. Yogianto H.M, Turbo Pascal 5.0 Penerbit Andi Offset, Yogyakarta.
6. Ediman Lukito, Belajar Sendiri Pemrograman dengan Turbo Pascal 7.0

7. Ir. P. Insap Santosa, Turbo Pascal versi 5.0 dan 5.5, Elexmedia Komputindo




Badan Badan Usaha di Indonesia

Badan usaha adalah kesatuan yuridis (hukum), teknis, dan ekonomis yang bertujuan mencari laba atau keuntungan. Badan Usaha seringkali disamakan dengan perusahaan, walaupun pada kenyataannya berbeda. Perbedaan utamanya, Badan Usaha adalah lembaga sementara perusahaan adalah tempat dimana Badan Usaha itu mengelola faktor-faktor produksi.

1. KOPERASI
Koperasi adalah organisasi bisnis yang dimiliki dan dioperasikan oleh orang-seorang demi kepentingan bersama. Koperasi melandaskan kegiatan berdasarkan prinsip gerakan ekonomi rakyat yang berdasarkan asas kekeluargaan.

2. BUMN
Badan Usaha Milik Negara (atau BUMN) ialah badan usaha yang permodalannya seluruhnya atau sebagian dimiliki oleh Pemerintah. Status pegawai badan usaha-badan usaha tersebut adalah karyawan BUMN bukan pegawai negeri. BUMN sendiri sekarang ada 3 macam yaitu Perjan, Perum dan Persero.
     a. Perjan
       Perjan adalah bentuk badan usaha milik negara yang seluruh modalnya dimiliki oleh pemerintah. Perjan ini berorientasi pelayanan pada masyarakat, Sehingga selalu merugi. Sekarang sudah tidak ada perusahaan BUMN yang menggunakan model perjan karena besarnya biaya untuk memelihara perjan-perjan tersebut sesuai dengan Undang Undang (UU) Nomor 19 tahun 2003 tentang BUMN. Contoh Perjan: PJKA (Perusahaan Jawatan Kereta Api) kini berganti menjadi PT.KAI
     b. Perum
        Perum adalah perjan yang sudah diubah. Tujuannya tidak lagi berorientasi pelayanan tetapi sudah profit oriented. Sama seperti Perjan, perum di kelola oleh negara dengan status pegawainya sebagai Pegawai Negeri. Namun perusahaan masih merugi meskipun status Perjan diubah menjadi Perum, sehingga pemerintah terpaksa menjual sebagian saham Perum tersebut kepada publik (go public) dan statusnya diubah menjadi persero.
     c. Persero
     Persero adalah salah satu Badan Usaha yang dikelola oleh Negara atau Daerah. Berbeda dengan Perum atau Perjan, tujuan didirikannya Persero yang pertama adalah mencari keuntungan dan yang kedua memberi pelayanan kepada umum. Modal pendiriannya berasal sebagian atau seluruhnya dari kekayaan negara yang dipisahkan berupa saham-saham. Persero dipimpin oleh direksi. Sedangkan pegawainya berstatus sebagai pegawai swasta. Badan usaha ditulis PT < nama perusahaan > (Persero). Perusahaan ini tidak memperoleh fasilitas negara. Jadi dari uraian di atas, ciri-ciri Persero adalah:
  • Tujuan utamanya mencari laba (Komersial)
  • Modal sebagian atau seluruhnya berasal dari kekayaan negara yang dipisahkan yang berupa saham-saham
  • Dipimpin oleh direksi
  • Pegawainya berstatus sebagai pegawai swasta
  • Badan usahanya ditulis PT (nama perusahaan) (Persero)
  • Tidak memperoleh fasilitas negara
3. BUMS
Badan Usaha Milik Swasta atau BUMS adalah badan usaha yang didirikan dan dimodali oleh seseorang atau sekelompok orang. Berdasarkan UUD 1945 pasal 33, bidang- bidang usaha yang diberikan kepada pihak swasta adalah mengelola sumber daya ekonomi yang bersifat tidak vital dan strategis atau yang tidak menguasai hajat hidup orang banyak. Berdasarkan bentuk hukumnya Badan usaha milik swasta dibedakan atas :
  • Perusahaan Persekutuan
  • Firma
  • Persekutuan Komanditer
  • Perseroan Terbatas
  • Yayasan
a. Perusahaan Persekutuan
Perusahaan persekutuan adalah badan usaha/bisnis yang dimiliki oleh dua orang atau lebih sebagai persekutuan (partnership) yang secara bersama-sama bekerja sama untuk mencapai tujuan bisnis. Para pemilik harus mendaftarkan persekutuan mereka ke Negara bagian dan mungkin juga perlu mengajukan izin kerja. Dalam persekutuan umum (general partnership), seluruh sekutu akan memiliki kewajiban yang tidak terbatas, jadi semua sekutu akan bertanggung jawab secara pribadi atas seluruh kewajiban perusahaan. Sebaliknya, dalam persekutuan terbatas (limited partnership), perusahaan yang memiliki beberapa sekutu terbatas, kewajibannya dibatasi atas uang atau harta yang telah mereka sumbangkan pada persekutuan. Keuntungan yang dibagikan kepada masing-masing sekutu mencerminkan penghasilan pribadi dan menjadi subyek dari pajak penghasilan pribadi yang dibayarkan ke kantor pajak.

b. Firma
Firma adalah suatu bentuk persekutuan bisnis yang terdiri dari dua orang atau lebih dengan nama bersama yang tanggung jawabnya terbagi rata tidak terbatas pada setiap pemiliknya. Pada umumnya Persekutuan Firma disebut juga sebagai perusahaan yang tidak berbadan hukum karena firma telah memenuhi syarat/unsur materiil namun syarat/unsur formalnya berupa pengesahan atau pengakuan dari Negara berupa peraturan perundang-undangan belum ada. Hal inilah yang menyebabkan Persekutuan Firma bukan merupakan persekutuan yang berbadan hukum. Dalam Persekutuan Firma hanya terdapat satu macam sekutu, yaitu sekutu komplementer atau Firmant. Sekutu komplementer menjalankan perusahaan dan mengadakan hubungan hukum dengan pihak ketiga sehingga bertanggung jawab pribadi untuk keseluruhan.

c. Persekutuan Komanditer
Persekutuan Komanditer (commanditaire vennootschap atau CV) adalah suatu bentuk badan usaha bisnis yang didirikan dan dimiliki oleh dua orang atau lebih untuk mencapai tujuan bersama dengan tingkat keterlibatan yang berbeda-beda di antara anggotanya. Satu pihak (sekutu aktif atau sekutu Komplementer) dalam CV mengelola usaha secara aktif yang menjalankan perusahaan dan berhak melakukan perjanjian dengan pihak ketiga yang melibatkan harta pribadi. Artinya, semua kebijakan perusahaan dijalankan oleh sekutu aktif. Sementara pihak lainnya (sekutu pasif atau sekutu Komanditer) hanya menyertakan modal saja tanpa harus melibatkan harta pribadi ketika krisis finansial. Jika perusahaan menderita rugi, mereka hanya bertanggung jawab sebatas modal yang disertakan dan begitu juga apabila untung, uang mereka memperoleh terbatas tergantung modal yang mereka berikan.

d. Peseroan Terbatas
Perseroan terbatas adalah organisasi bisnis yang memiliki badan hukum resmi untuk menjalankan usaha yang memiliki modal terdiri dari saham di mana pemiliknya memiliki bagian sebanyak saham yang dimilikinya. Karena modalnya terdiri dari saham-saham yang dapat diperjualbelikan, perubahan kepemilikan perusahaan dapat dilakukan tanpa perlu membubarkan perusahaan. Di dalam PT pemilik modal tidak harus memimpin perusahaan, karena dapat menunjuk orang lain di luar pemilik modal untuk menjadi pimpinan.

e. Yayasan
Yayasan adalah suatu badan usaha, tetapi tidak merupakan perusahaan karena tidak mencari keuntungan. Badan usaha ini didirikan untuk sosial dan berbadan hukum.


Referensi : 
  • S., Alam (2007). Ekonomi 3 untuk SMA dan MA Kelas XII. Jakarta: Esis/Erlangga. ISBN 979-734-533-5. (Indonesia)
  • Kraakman, Reinier H.; et al. (2004). Anatomy of Corporate Law: A Comparative and Functional Approach. New York: Oxford University Press. ISBN 0-19-926063-X.
  • Lowry, John; Dignam, Alan (2006). Company Law. New York: Oxford University Press. ISBN 0-19-928446-6.