Minggu, 15 April 2012

TURBO PASCAL

BAB 1
ELEMEN DASAR TURBO PASCAL
A.TIPE DATA DASAR
TurboPascal_TipeDataDasar
Cara mendeklarasikan suatu variabel dalam Turbo Pascal:
Var <name_var>:<type_var>;
B.STRUKTUR PROGRAM
Program <StructureSample>;
Const <ConstantDeclarations>;
Type <TypeDeclarations>;
Var <VariableDeclarations>;
Procedure/Function <Example>;
 Begin
 <BodyOfProcedure/Function>;
 End;
Begin
 <MainBodyOfProgram>;
End.
C.STRUKTUR INPUT
Readln: Untuk memasukkan nilai ke suatu variabel dengan diikuti ganti baris. Cara penulisannya: Readln(<InputList>);
Read: Untuk memasukkan nilai ke suatu variabel tanpa diikuti ganti baris. Cara penulisannya: Read(<InputList>);
Read; atau Readln; akan mengakibatkan program menunggu penekanan sembarang tombol sebelum suatu program berakhir atau berjalan kembali.
D.STRUKTUR OUTPUT
Writeln: Untuk menampilkan nilai dari suatu variabel dengan diikuti ganti baris. Cara penulisannya: Writeln(<OutputList>);
Write: Untuk menampilkan nilai dari suatu variabel tanpa diikuti ganti baris. Cara penulisannya: Write(<OutputList>);
Jika menulis Writeln; akan menambah sebuah baris kosong.
Jika menulis Write; akan sama dengan Write(‘ ‘);
ClrScr; untuk membersihkan layar monitor.
GoToXY(<Kolom>,<Baris>); untuk meletakkan posisi kursor pada kolom dan baris tertentu.
TextColor(<Warna:Byte>); untuk mengatur warna foreground dari karakter di layar.
TextBackground(<Warna:Byte>); untuk mengatur warna background dari karakter di layar.
Window(<X1>,<Y1>,<X2>,<Y2>); untuk membuat suatu jendela di layar.
BAB 2
OPERATOR
TurboPascal_Operator
BAB 3
PROCEDURE AND FUNCTION
A.PROCEDURE
Insert: Untuk menyisipi suatu string ke string yang lain. Cara penulisannya: Insert(<Source>,<Target>,<Index>);
Delete: Untuk menghapus sebagian isi dari string. Cara penulisannya: Delete(<Source>,<Index>,<Count>);
Str: Untuk mengubah type number menjadi type string. Cara penulisannya: Str(<Number>,<String>);
Val: Untuk mengubah type string menjadi type number. Cara penulisannya: Val(<String>,<Number>,<Code>);
Procedure: Untuk membuat suatu prosedur. Cara penulisannya: Procedure <Identifier>(<FormalParameterList>);
==>>FormalParameterList->[Var] <Identifier>:<DataType>;
B.FUNCTION
Abs: Untuk membuat nilai mutlak dari suatu number. Cara penulisannya: Abs(<Number>);
Sqr: Untuk menghitung pangkat dua dari suatu number. Cara penulisannya: Sqr(<Number>);
Sqrt: Untuk menghitung akar kuadrat dari suatu number. Cara penulisannya: Sqrt(<NonNegativeReal>);
Pi: Untuk menghasilkan nilai 22/7. Cara penulisannya: Pi;
Round: Untuk membulatkan suatu number. Cara penulisannya: Round(<RealNumber>);
Trunc: Untuk menghilangkan desimal dari suatu number. Cara penulisannya: Trunc(<RealNumber>);
Random: Untuk menghasilkan bilangan acak. Cara penulisannya: Random(<Integer>);
Randomize: Untuk membuat bilangan acak secara acak. Cara penulisannya: Randomize;
Length: Untuk menghitung panjang dari suatu string. Cara penulisannya: Length(<String>);
Pos: Untuk menentukan posisi suatu bagian string dari string induk. Cara penulisannya: Pos(<SubString>,<String>);
Copy: Untuk mengkopi suatu string. Cara penulisannya: Copy(<String>,<Index>,<Count>);
ConCat: Untuk menggabungkan beberapa string. Cara penulisannya: ConCat(<String1>,<String2>,<StringN>);
Chr: Untuk menampilkan karakter dari suatu kode ASCII. Cara penulisannya: Chr(<DecimalCode>);
Ord: Untuk menampilkan kode ASCII dari suatu karakter. Cara penulisannya: Ord(<OrdinalExpression>);
Function: Untuk membuat suatu function. Cara Penulisannya: Function <Identifier>(<FormalParameters>):<Type>;
BAB 4
STATEMENT
A.STATEMENT IF DAN STATEMENT CASE
1.Statement If Tunggal
If <kondisi> Then
 Begin
 <pernyataan>;
 End;
2.Statement If Ganda
If <kondisi> Then
 Begin
 <pernyataan1>;
 End
Else
 Begin
 <pernyataan2>;
 End;
3.Statement If Jamak
If <kondisi1> Then
 Begin
 <pernyataan1>;
 End
Else If <kondisi2> Then
 Begin
 <pernyataan2>;
 End
Else
 Begin
 <pernyataan3>;
 End;
4.Statement Switch
Case <variabel> of
 <nilai1>: <pernyataan1>;
 <nilai2>: <pernyataan2>;
 [Else: <pernyataan3>;]
End;
B.STATEMENT FOR, WHILE, REPEAT
1.Statement For
For <variabel>:=<awal> [Down]To <akhir> Do
 Begin
 <pernyataan>;
 End;
2.Statement While
While <kondisi> Do
 Begin
 <pernyataan>;
 End;
3.Pernyataan Repeat
Repeat
 <pernyataan>;
Until <kondisi>;
BAB 5
ARRAY
Array: Kumpulan data yang bertipe sama yang menggunakan nama sama. Dengan menggunakan array, sejumlah variabel dapat memakai nama yang sama. Antara variabel yang satu dengan variabel yang lain di dalam array dibedakan berdasarkan subscript. Sebuah subscript berupa bilangan di dalam kurung siku. Melalui subscript inilah setiap elemen array dapat diakses.
Elemen array tidak lain adalah setiap variabel di dalam array. Perlu diingat, subscript dari array selalu dimulai dari nol dan terkadang disebut sebagai indeks array.
Pendefinisian array:
Var <name_array>:Array[<Range>] Of <type_array>;
Mengakses array:
name_array[subscript];
BAB 6
BEBERAPA PROGRAM SEDERHANA
Uses Crt;
Var S:String;
Begin
 ClrScr; {Membersihkan Layar}
 Write('Masukkan Kata! ');
 Readln(S);
 Writeln('Anda Memasukkan: ',S);
 Readln; {Menunggu Penekanan Tombol}
End.
----------
Uses Crt;
Var I:Integer;
Begin
 ClrScr;
 Write('Masukkan Angka! ');
 Readln(I);
 If I Mod 2=0 Then
 Writeln(I,' Bilangan Genap!');
 Readln;
End.
----------
Uses Crt;
Var I:Integer;
Begin
 ClrScr;
 Write('Masukkan Angka! ');
 Readln(I);
 If I=0 Then
 Writeln(I,' Bilangan Nol!')
 Else If I Mod 2=0 Then
 Writeln(I,' Bilangan Genap!')
 Else
 Writeln(I,' Bilangan Ganjil!');
 Readln;
End.
----------
Uses Crt;
Var I,J:Integer;
Begin
 ClrScr;
 Write('Masukkan Angka! ');
 Readln(I);
 J:=I Mod 2;
 Case I Of
 0:Writeln(I,' Bilangan Nol!')
 Else
 Case J Of
 0:Writeln(I,' Bilangan Genap!')
 Else Writeln(I,' Bilangan Ganjil!');
 End;
 End;
 Readln;
End.
----------
Uses Crt;
Var I:Integer;
Begin
 ClrScr;
 For I:=1 To 10 Do
 Begin
 If I Mod 2=0 Then
 Writeln(I,' Bilangan Genap!')
 Else
 Writeln(I,' Bilangan Ganjil!');
 End;
 Readln;
End.
----------
Uses Crt;
Var I:Integer;
Begin
 ClrScr;
 I:=1;
 While I<=10 Do
 Begin
 If I Mod 2=0 Then
 Writeln(I,' Bilangan Genap!')
 Else
 Writeln(I,' Bilangan Ganjil!');
 I:=I+1;
 End;
 Readln;
End.
----------
Uses Crt;
Var I:Integer;
Begin
 ClrScr;
 I:=1;
 Repeat
 If I Mod 2=0 Then
 Writeln(I,' Bilangan Genap!')
 Else
 Writeln(I,' Bilangan Ganjil!');
 I:=I+1;
 Until I>10;
 Readln;
End.
----------
Uses Crt;
Var A:Array[1..7] Of String;
 I:Integer;
Begin
 ClrScr;
 A[1]:='Senin';
 A[2]:='Selasa';
 A[3]:='Rabu';
 A[4]:='Kamis';
 A[5]:='Jumat';
 A[6]:='Sabtu';
 A[7]:='Minggu';
 For I:=1 To 7 Do
 Writeln('Nama Hari Ke-',I,': ',A[I]);
 Readln;
End.
----------
Uses Crt;
Var A,B,I:Integer;
Function P2(N:Integer):LongInt;
Begin
 If N=0 Then
 P2:=1
 Else
 P2:=N*P2(N-1);
End;

Function P1(X,Y:Integer):LongInt;
Begin
 P1:=Trunc(P2(X)/P2(X-Y));
End;

Begin
 While A<=B Do
 Begin
 ClrScr;
 Write('Masukkan Angka Pertama! ');
 Readln(A);
 Write('Masukkan Angka Kedua! ');
 Readln(B);
 End;
 Writeln('Permutasi Dari ',A,' Dan ',B,': ',P1(A,B));
 Readln;
End.
----------
Uses Crt;
Var A,B,I:Integer;
Function K2(N:Integer):LongInt;
Begin
 If N=0 Then
 K2:=1
 Else
 K2:=N*K2(N-1);
End;

Function K1(X,Y:Integer):LongInt;
Begin
 K1:=Trunc(K2(X)/(K2(Y)*K2(X-Y)));
End;

Begin
 While A<=B Do
 Begin
 ClrScr;
 Write('Masukkan Angka Pertama! ');
 Readln(A);
 Write('Masukkan Angka Kedua! ');
 Readln(B);
 End;
 Writeln('Kombinasi Dari ',A,' Dan ',B,': ',K1(A,B));
 Readln;
End.
----------
Uses Crt;
Var A,B,I,J:Integer;
Begin
 ClrScr;
 Write('Masukkan Batas Bawah! ');
 Readln(A);
 Write('Masukkan Batas Atas! ');
 Readln(B);
 For I:=A To B Do
 Begin
 If I=1 Then
 Writeln(I,' Bilangan Ganjil!')
 Else If I=2 Then
 Writeln(I,' Bilangan Genap Prima!')
 Else If I Mod 2=0 Then
 Writeln(I,' Bilangan Genap!')
 Else
 Begin
 J:=2;
 While Not (I Mod J=0) Do
 J:=J+1;
 If I=J Then
 Writeln(I,' Bilangan Ganjil Prima!')
 Else
 Writeln(I,' Bilangan Ganjil!');
 End;
 End;
 Readln;
End.
----------
Uses Crt;
Var A,B,I,J:Integer;
Begin
 ClrScr;
 Write('Masukkan Bilangan Pertama! ');
 Readln(A);
 Write('Masukkan Bilangan Kedua! ');
 Readln(B);
 I:=A;
 J:=1;
 While Not((A Mod I=0)And(B Mod I=0)) Do
 I:=I-1;
 While Not((A*J) Mod B=0) Do
 J:=J+1;
 Writeln('FPB Dari ',A,' Dan ',B,' Adalah ',I);
 Writeln('KPK Dari ',A,' Dan ',B,' Adalah ',A*J);
 Readln;
End.
----------
Uses Crt;
Var A,I,J,K:Integer;
Begin
 ClrScr;
 K:=0;
 Write('Masukkan Bilangan! ');
 Readln(A);
 If A=1 Then
 Writeln('Faktor Bilangan Dari 1: 1')
 Else
 Write('Faktor Bilangan Dari ',A,': ');
 For I:=2 To A Do
 Begin
 J:=2;
 While Not(I Mod J=0) Do
 J:=J+1;
 If I=J Then
 Begin
 While A Mod J=0 Do
 Begin
 If K=1 Then
 Write('x',I)
 Else
 Write(I);
 J:=J*I;
 K:=1;
 End;
 End;
 End;
 Readln;
End.
----------

like...