turbo pascal ela

34
Perulangan (loop) dengan statement for digunakan untuk sebuah blok statement berulang kali sejumlah yang ditentukan. Ada tiga bentuk perulangan dengan statement for, yaitu: 1. Perulangan positif Perulangan positif adalah perulangan dengan penghitungan dari kecil ke besar atau dengan kata lain pertambahannya positif. Perulangan positif dibentuk dengan menggunakan statement For-To- Do, dengan bentuk umum: For variabel := nilai_awal To nilai_akhir Do statement; Variabel, nilai_awal, dan nilai_akhir harus mempunyai tipe yang sama, yaitu integer. contoh : 1 2 3 4 5 6 var i : integer; begin for i := 1 to 5 do writeln('Turbo Pascal'); end. Bila kode program diatas dijalankan, akan didapat hasil: Turbo Pascal Turbo Pascal Turbo Pascal Turbo Pascal Turbo Pascal Jika statement yang diulang lebih dari satu statement, maka penulisannya dapat dilakukan dengan menggunakan blok statement (diawali dengan Begin dan diakhiri dengan End;).

Upload: dana-intansatari

Post on 07-Aug-2015

239 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Turbo Pascal Ela

Perulangan (loop) dengan statement for digunakan untuk sebuah blok statement berulang kali sejumlah yang ditentukan. Ada tiga bentuk perulangan dengan statement for, yaitu:

1. Perulangan positif

Perulangan positif adalah perulangan dengan penghitungan dari kecil ke besar atau dengan kata lain pertambahannya positif. Perulangan positif dibentuk dengan menggunakan statement For-To-Do, dengan bentuk umum:

For variabel := nilai_awal To nilai_akhir Do statement;

Variabel, nilai_awal, dan nilai_akhir harus mempunyai tipe yang sama, yaitu integer.

contoh :

123456

var    i : integer;begin    for i := 1 to 5 do        writeln('Turbo Pascal');end.

Bila kode program diatas dijalankan, akan didapat hasil:

Turbo Pascal

Turbo Pascal

Turbo Pascal

Turbo Pascal

Turbo Pascal

Jika statement yang diulang lebih dari satu statement, maka penulisannya dapat dilakukan dengan menggunakan blok statement (diawali dengan Begin dan diakhiri dengan End;).

contoh :

1234567

var    i : integer;begin    for i := 1 to 5 do    begin        write(i);        writeln(' Turbo Pascal');    end;end.

Page 2: Turbo Pascal Ela

89

Bila kode program diatas dijalankan, akan didapat hasil:

1 Turbo Pascal

2 Turbo Pascal

3 Turbo Pascal

4 Turbo Pascal

5 Turbo Pascal

2. Perulangan negatif

Perulangan negatif adalah perulangan dengan penghitungan dari besar ke kecil atau dengan kata lain pertambahannya negatif. Perulangan negatif dibentuk dengan menggunakan statement For-DownTo-Do, dengan bentuk umum:

For variabel := nilai_awal DownTo nilai_akhir Do statement;

contoh :

123456

var    i : integer;begin    for i := 5 downto 1 do        write(i);end.

Bila kode program diatas dijalankan, akan didapat hasil:

54321

3. Perulangan tersarang

Perulangan tersarang (nested-loop) adalah perulangan yang berada dalam perulangan lainnya.

contoh :

1234

var   i, j : integer;

begin   for i := 1 to 5 do

Page 3: Turbo Pascal Ela

567891011

   begin      for j := 1 to 5 do         write(j, ' ');      writeln;   end;end.

Bila kode program diatas dijalankan, akan didapat hasil:

1 2 3 4 5

1 2 3 4 5

1 2 3 4 5

1 2 3 4 5

1 2 3 4 5

contoh lainnya :

1234567891011

var   i, j : integer;

begin   for i := 1 to 5 do   begin      for j := i to 5 do         write(j, ' ');      writeln;   end;end.

Page 4: Turbo Pascal Ela

Struktur repeat...until digunakan untuk mengulang statement atau blok statement hingga kondisi yang diseleksi di until terpenuhi. Perulangan repeat...until mempunyai bentuk umum :

Repeat statement Until kondisi;

contoh:

1234567891011

var   i : integer;

begin   i := 1;   repeat      write(i);      writeln(' Turbo Pascal');      inc(i);   until i > 5;end.

Bila program dijalankan maka akan didapatkan hasil:

1 Turbo Pascal

2 Turbo Pascal

3 Turbo Pascal

4 Turbo Pascal

5 Turbo Pascal

Beberapa hal yang perlu diperhatikan dalam perulangan repeat until adalah:

1. Paling sedikit statement didalam perulangan diproses sekali, karena seleksi kondisi pada statement until yang terletak dibawah. Jadi walaupun kondisi awal sudah tidak sesuai dengan kondisi statement until, tapi blok statement setelah repeat tetap akan dikerjakan hingga statement until.

2. Pada repeat...until dapat tidak menggunakan blok statement (tidak diperlukan begin dan end untuk menunjukkan batas perulangannya), karena batas perulangannya telah ditunjukkan mulai Repeat sampai Until (Jadi Repeat dan Until merupakan pengganti begin dan end). Kalaupun ditambahkan blok statement begin dan end didalam perulangan repeat...until, hasilnya akan sama saja dengan tanpa menggunakan begin dan end.

Page 5: Turbo Pascal Ela

Untuk dapat lebih memahami maksud dari pernyataan diatas, bisa kita lihat contoh perbedaan penggunaan perulangan repeat...until dengan perulangan while-do:

contoh perulangan dengan repeat...until:

1234567891011

var   i : integer;

begin   i := 10;   repeat      write(i);      writeln(' Turbo Pascal');      inc(i);   until i > 5;end.

contoh perulangan dengan while-do:

123456789101112

var   i : integer;

begin   i := 10;   while i < 5 do   begin      write(i);      writeln(' Turbo Pascal');      inc(i);   end;end.

Kedua script diatas sengaja dibuat nilai awal yang tidak memenuhi kondisi pada tiap perulangan, baik repeat...until maupun while-do. Jika kedua script diatas dijalankan maka script dengan perulangan while-do tidak akan menampilkan hasil apapun, sementara script dengan perulangan repeat...until tetap akan menjalankan statement program minimal satu kali, dan menampilkan hasil seperti ini:

10 Turbo Pascal

Dari contoh diatas semoga kita bisa memahami perbedaan penggunaan repeat...until dan while-do.

Struktur Perulangan repeat...until tersarang

Page 6: Turbo Pascal Ela

Sama seperti perulangan lainnya, struktur perulangan repeat...until tersarang adalah suatu perulangan repeat...until yang berada didalam perulangan repeat...until lainnya.

contoh:

123456789101112131415

var   i, j : integer;

begin   i := 1;   repeat      j := 1;      repeat         write(j, ' ');         inc(j);      until j > 5;      writeln;      inc(i);   until i > 5;end.

Page 7: Turbo Pascal Ela

Statement While-Do digunakan untuk melakukan proses perulangan suatu statement atau blok statement secara terus-menerus selama kondisi ungkapan logika pada while masih bernilai logika benar. Perulangan While-Do mempunyai bentuk umum:

While ungkapan_logika Do statement;

contoh:

1234567891011

var   i : integer;

begin   i := 0;   while i < 5 do   begin      writeln(i, ' Turbo Pascal');      i := i + 1;   end;end.

Bila program dijalankan, akan didapatkan hasil:

0 Turbo Pascal

1 Turbo Pascal

2 Turbo Pascal

3 Turbo Pascal

4 Turbo Pascal

Perulangan While-Do tersarang

Perulangan while-do tersarang (nested While-Do) merupakan perulangan while-do yang berada didalam perulangan while-do lainnya.

contoh :

12345

uses wincrt;var   i, j : integer;

begin   i := 1;

Page 8: Turbo Pascal Ela

6789101112131415161718

   while i <= 5 do   begin      j := 1;      while j <= i do      begin         write(j, ' ');         j := j + 1;      end;      writeln;      i := i + 1;   end;end.

Bila program dijalankan, akan didapatkan hasil:

1

1 2

1 2 3

1 2 3 4

1 2 3 4 5

contoh lainnya :

123456789101112131

uses wincrt;

var   i, j, n : integer;   lagi : char;

begin   lagi := 'Y';   while lagi = 'Y' do   begin      clrscr;      write('Input jumlah perulangan : ');      readln(n);      i := 1;      while i <= n do      begin         j := 1;         while j <= n do         begin            write(i, ' ');            j := j + 1;         end;

Page 9: Turbo Pascal Ela

415161718192021222324252627282930

         writeln;         i := i + 1;      end;      write('Apakah anda ingin mengulang lagi ? ');      readln(lagi);      lagi := upcase(lagi);   end;end.

Bila program dijalankan, maka akan meminta inputan jumlah perulangan terlebih dahulu. Sebagai contoh jika kita input jumlah perulangan dengan nilai 5, maka didapatkan hasil sebagai berikut:

Input jumlah perulangan : 5

1 1 1 1 1

2 2 2 2 2

3 3 3 3 3

Page 10: Turbo Pascal Ela

4 4 4 4 4

5 5 5 5 5

Apakah anda ingin mengulang lagi ? _

Kita bisa melakukan perulangan lagi dengan menginput nilai Y jika ada pertanyaan apakah anda ingin mengulang lagi. Jika ya maka perulangan akan dilakukan lagi. Sebagai contoh jika kita menginput nilai 3 pada jumlah perulangan, maka akan didapatkan hasil sebagai berikut:

Input jumlah perulangan : 3

1 1 1

2 2 2

3 3 3

Apakah anda ingin mengulang lagi ? _

Didalam bahasa Turbo Pascal, ada beberapa jenis perulangan, diantaranya (While Do, Witch, dan For)

Pengertian While do:

1. While do adalah statement perulangan akan terus melakukan suatu proses perulangan selama kondisi atau syarat yang ditentukan barnilai benar

2. For adalah perulangan yang digunakan untuk melakukan suatu proses dalam suatu nlok berulang kali.....

3. Witch adalah perulangan yang akan mencari nilai ekspresi yang sesuai dengan nilai-nilai yang didaftarkan pada pernyataan case, jika salahsatu nilai ditemui, maka program akan melompat kecabang

case tersebut dan melakikan perintah tersebut, jika tidak ditemui, maka akam melompat keperintah default.

Contoh Perintah:

While doStatement While – variable syarat – do

PernyataanFor

Statement for – variable syarat – varEnd

Page 11: Turbo Pascal Ela

WitchWitch (ekspresi)

Case nilai;Perintah1

Break;Default;

Perintah_lain;Switch;

While doVar

i:integerbegini:=0;

while i=5 dobegin

edit3.seltext :=int to str (i);i:=i+1;end;end;ForVar

I:=integer;Begin

For i:=1 to 5 doEdit1.seltext:=int to str (i);

End;End;

WitchVar

Print(“masukkan nilai 1-3”);Scanf(“%d”,&nilai); return0;

Witch (nilai)Case1;

Printf (“dua/n”);Break;

Default;Print (“empat/n”);

…else

Page 12: Turbo Pascal Ela

Perulangan & Penyelesaian KondisiMateri1. Bentuk – bentuk Perulangan

Dalam hampir setiap program yang kompleks mutlak memerlukan suatu perulangan dan percabangan. Tujuan perulangan disini adalah untuk mengulang statement atau blok statement berulang kali sesuaisejumlah yang ditentukan pemakai. Dalam materi ini akan memberikan gambaran konsep dasar dari pengertian diatas.

a) Perulangan For.Perulangan dengan statemen For digunakan untuk mengulang statemen atau suatu blok statemen berulang kali. Perulangan dengan statemen For dapat berupa perunlangan positif dan perulangan

Page 13: Turbo Pascal Ela

negatif.

• Perulangan For positifcontoh : perulangan positif untuk satu statement :Uses Crt;Vari : Integer;BeginFor i := 1 To 5 Do Writeln ('I Love Dinda’);END.Maka bila program diatas dicompilehasilnya :I Love DindaI Love DindaI Love DindaI Love DindaI Love DindaPenjelasan : Berati statemen I Love Dinda akan diulang sebanyak 5 kali yaitu dengan menghitung nilai i dari i ke 1 sampai nilai i terakhir yaitu i ke 5.

# Contoh dengan menggunakan blok statement: cara penulisannya dengan pada awal blok diawali dengan Begin dan pada akhir blok diakhiri dengan End;Uses Crt;Vari : Integer;BeginFor i:= 1 To 10 DoBeginWriteln ('I Love Dinda'); { blok statement }End;End.Hasil yang akan didapat akan sama dengan contoh yang pertama, tapi yang harus diingat disini untuk penggunaan blok pada perulangan For biasanya mempunyai banyak statement [lebih dari 1 statement]

# Contoh 3 : Penggunaan perulangan For dalam blok statement untuk membuat tabel

Uses Crt;Vara,b,c : Integer;bagi : Real;BeginWriteln('----------------------------------------------');Writeln(' a a*a a*a*a 1/a ');Writeln('----------------------------------------------');

Page 14: Turbo Pascal Ela

For a := 1 To 10 DoBeginb:= a*a;c:=a*a*a;bagi := 1/a;Writeln(a:4,c:10,d:10,bagi:12:3);End;Writeln ('----------------------------------------------');End.maka hasilnya :----------------------------------------------a a*a a*a*a 1/a----------------------------------------------1 1 1 1.0002 4 8 0.5003 9 27 0.3334 16 64 0.2505 25 125 0.2006 36 216 0.1677 49 343 0.1438 64 512 0.1259 81 729 0.11110 100 1000 0.100----------------------------------------------• Perulangan For negatif : Perulangan negatif adalah perulangan dengan menghitung (counter) dari besar ke kecil.

Statement yang digunakan adalah For-DownTo-Docontoh :Uses Crt;Vari : Integer;BeginFor i := 10 DownTo 1 Do Write (i:3);End.Hasil :10 9 8 7 6 5 4 3 2 1

• Perulangan For tersarangPerulangan For tersarang adalah perulangan For yang berada pada perulangan yang lainnya. Perulangan yang lebih dalam akan diproses terlebih dahulu sampai habis, kemudian perulangan yang lebih luar baru akan bertambah, mengerjakan perulangan yang lebih dalam lagi mulai dari nilai awalnya dan seterusnya.Contoh :Vara,b : Integer;

Page 15: Turbo Pascal Ela

BeginFor a := 1 To 3 DoBeginFor b := 1 To 2 Do Write (a :4,b:2);Writeln;End;End.Hasil :1 1 1 22 1 2 23 1 3 2

• Perulangan While - DoPenyeleksian kondisi digunakan untuk agar program dapat menyeleksi kondisi, sehingga program dapat menentukan tindakan apa yang harus dikerjakan, tergantung dari kondisi yang diseleksi tersebut. Perulangan While – Do tidak dilakukan jika kondisi tidak terpenuhi.Contoh :Uses Crt;Var i : Integer;Begini := 0;While < i="5;">25; { berhenti jika b lebih besar dari 5 untukperulangan dalam }a:=a+1;Until a>3; { berhenti jika a lebih besar dari 3 untukperulangan luar }Writeln(' =======================================');End.

• Percabangan

If - ThenBentuk struktur If – Then adalah sebagai berikut :If Kondisi Then StatementUngkapan adalah kondisi yang diseleksi oleh statement If. Bila kondisi yang diseleksi terpenuhi, maka statement yang mengikuti Then akan diproses, sebaliknya bila kondisi tidak terpenuhi, maka yang akan diproses statement berikutnya.Misalnya :If Pilihan = 2 ThenBegin{ jika kondisi terpenuhi, Yaitu jika pilihan = 2 }............EndElse{ jika kondisi tidak terpenuhi, yaitu jika pilhan tidak sama dengan 2}Begin.......

Page 16: Turbo Pascal Ela

.......End;Contoh Program :Uses Crt;VarNilai : Real;BeginWrite ('Jumlah Nilai :');Readln (nilai); { Pemasukan data }If nilai > 60 Then { seleksi kondisi variabel nilai }Writeln('Lulus') { Dilaksanakan jika nilai lebih besar dari 60 }ElseWriteln('Tidak lulus'); { Dilaksanakan jika variabel nilai lebih kecil dari 60 }End.Hasil :Jika kita Memasukan 40 pada varibel nilai, Maka program diatas akan mencetak Tidak lulus.

If tersarang (nested If)Struktur If tersarang merupakan bentuk dari suatu statement If berada di dalam lingkungan statemen If yang lainya. Bentuk statement If tersarang sebagai berikut :

If kodisi1 Then atau If Kondisi1 ThenIf kondisi2 Then Beginstatemen1 IF kondisi2 ThenElse statemen1statemen2; Elsestatemen2End;

Case - OfStruktur Case – Of mempunyai suatu ungkapan logika yang disebut dengan selector dan sejumlah statemen yang diawali dengan suatu label permasalahan (case label) yang mempunyai tipe sama dengan selector.Statement yang mempunyai case label yang bernilai sama dengan case label yang bernilai sama dengan nilai selector akan diproses sedang statemen yang lainya tidak.

Bentuk struktur dari Case - Of:

Case Variabel Kondisi OfCase – Label 1; Statement 1;Case – Label 2; Statement 2;Case – Label 3; Statement 3;Case – Label 4; Statement 4;................Case – Label n ; Statement n ;

Page 17: Turbo Pascal Ela

End ; { end dari case }

Daftar Case label dapat berupa konstanta, range dari konstanta yang bukan bertipe real.Contoh program ;Program nilai;Varnil : Char ;BeginWrite ('Nilai Numerik yang didapat :');Readln (nil);Case nil Of'A': Writeln ('Sangat Baik’);'B': Writeln('Baik’);'C': Writeln('Cukup');'D': Writeln('Kurang');'E': Writeln('Sangat Kurang');End;End.hasil : Nilai Numerik yang didapat : B Input BaikContoh Listing Program untuk Dicoba

1. Program input data dengan array.Program Pemakaian_Array_Untuk_10_data_dengan_menggunakan_For;

Uses Crt;Constgaris='------------------------------------------------------';Varnil1,nil2 : Array [1..10] Of 0..100; {Array dgn Type subjangkauan}npm : Array [1..10] Of String [8];nama : Array [1..10] Of String [15];n,i,bar : Integer;jum : Real;tl : Char;BeginClrScr;{ pemasukan data dalam array }Write ('Mau Isi Berapa Data:');Readln (n);For i:= 1 To n DoBeginClrScr;GotoXY(30,4+1); Write('Data Ke-:',i:2);GotoXY(10,5+i); Write('NPM :'); Readln (npm[i]);GotoXY(10,6+i); Write('Nama :'); Readln (nama[i]);GotoXY(10,7+i); Write('Nilai 1 :'); Realdn(nil 1[i]);

Page 18: Turbo Pascal Ela

GotoXY(10,8+i); Write('Nilai 2 :'); Readln(nil 2[i]);End;{ proses data dalam array }ClrScr;GotoXY(5,4); Write(Garis);GotoXY(5,5); Write ('No');GotoXY(9,5); Write ('NPM');GotoXY(18,5); Write ('Nama');GotoXY(34,5); Write ('Nilai 1');GotoXY(41,5); Write ('Nilai 2');GotoXY(47,5); Write ('Rata');GotoXY(54,5); Write ('Abjad’);GotoXY(5,6); Write (Garis);{ proses Cetak isi array dan seleksi kondisi }bar := 7;For i:= 1 To n DoBeginjum:=(nil1[i]+nil2[i])/2;If jum>= 90 Then tl:='A'ElseIf jum>80 Then tl:='B'ElseIf jum>60 then tl:='C'ElseIf jum 50 Then tl:='D'Elsetl:='E';{ cetak hasil yang disimpan di array dan hasil }{ penyeleksian kondisi }GotoYX(5,bar); Writeln(i:2);GotoYX(9,bar); Writeln (NPM[i]);GotoYX(18,bar); Writeln (NAMA[i]);GotoYX(34,bar); Writeln (NIL1[i]:4);GotoYX(41,bar); Writeln (NIL2[i]:4);GotoYX(47,bar); Writeln (jum:5:1);GotoYX(54,bar); Writeln (tl);bar:=bar+1;End;GotoXY(5,bar+1);Writeln(garis);Readln;End.

2. Program jendela bergerak.Program Window_Bergerak_dgn_delay;Uses Crt;Var i : Integer;

Page 19: Turbo Pascal Ela

BeginFor i:=1 To 15 DoBeginSound (i*100);Delay (100);NoSound;End;TextBackGround(black);ClrScr;For i := 1 To 9 DoBeginTextBackGround(white);Window (42-i*4,10-i,38+i*4,15+i);ClrScr;Delay(100);End;TextColor(15);GotoXY(28,2);Writeln('c');GotoXY (8,3); Writeln ('3');GotoXY (28,4); Writeln ('A');TextColor(black);GotoXY (44,3); Writeln ('3');GotoXY (44,2); Writeln ('&');TextColor (29,4); Writeln ('U');TextColor (red*25);GotoXY (30,3); Writeln ('B E L A J A R');TextColor (black);GotoXY (5,5); Write('c');For i := 6 To 64 DoBeginGotoXY (i,5); Writeln ('');End;For i := 6 To 20 DoBeginGotoXY(5,i); Writeln('3 ');End;GotoXY (5,21); Writeln (' ');TextColor(white);GotoXY(65,5); Write('U');For i := 6 To 65 DoBeginGotoXY (i,21); Writeln(' `);End;For i := 6 To 20 DoBeginGotoXY(65,i); Writeln('3');

Page 20: Turbo Pascal Ela

End;GotoXY (65,21); Writeln ('c');TextColor(yellow);Readln;End.

Soal LatihanBuatlah program untuk soal dibawah ini dengan tampilan sebagus mungkin (gunakan perintah Window, Textcolor dll). Jumlah suku sesuai dengan input dari keyboard.1. Buat deret hitung 3,7,11,15,......................=?Program akan berhenti jika pada pertanyaan "Hitung Lagi [Y/T] ?" diisi huruf T.2. Buat deret ukur 3,9,27,................................=?Program akan berhenti jika pada pertanyaan "Hitung Lagi [Y/T] ?" diisi huruf T.3. Buat tabel deret bergoyang 1,-2,4,-8,...........=?Program akan berhenti jika pada pertanyaan "Hitung Lagi [Y/T] ?" diisi huruf T.4. Buat deret suku harmonis 1,1/2,1/3,.............=?Program akan berhenti jika pada pertanyaan "Hitung Lagi [Y/T] ?" diisi huruf T.5. Buat deret fibbonaci 1,1,2,3,5,.....................=?Program akan berhenti jika pada pertanyaan "Hitung Lagi [Y/T] ?" diisi huruf T.6. Buat deret seperti berikut 1,-2,3,-4,.............=?Program akan berhenti jika pada pertanyaan "Hitung Lagi [Y/T] ?" diisi huruf T.7. Buat deret kuadrat 1, 4, 9,............................=?Program akan berhenti jika pada pertanyaan "Hitung Lagi [Y/T] ?" diisi huruf T.8. Buat deret seperti berikut 100, 90, 70 ,...........=?Program akan berhenti jika pada pertanyaan "Hitung Lagi [Y/T] ?" diisi huruf T.9. Buat deret seperti berikut 256, 196, 144,............=?Program akan berhenti jika pada pertanyaan "Hitung Lagi [Y/T] ?" diisi huruf T.10. Buat deret seperti berikut 1, 1, 1, 2, 2, 3, 6, 4, 24, 5..........=?Program akan berhenti jika pada pertanyaan "Hitung Lagi [Y/T] ?" diisi huruf T.11. Buatlah program untuk mencari faktorial, sesuai dengan input yang diminta.12. Buatlah program huruf yang berjatuhan sehingga membentuk suatu kalimat yang telah diinput dari keyboard .

Percabangan

Percabangan

3.1. Operator Percabangan

Page 21: Turbo Pascal Ela

percabangan adalah merupakan operator yang digunakan untuk menentukan pilihan terhadap beberapa pilihan yang ada.

Dalam bahasa pemograman Delphi mengenal dua operator per cabangan

3.1.1. Percabangan If

merupakan operator percabangan yang digunakan untuk menentukan pilihan atas beberapa kondisi yang merupakan syarat terhadap pilihan yang sudah ditentukan.

Ada dua model percabangan if

a. Percabangan untuk kondisi pilihan tunggal

Merupakan operator percabangan yang digunakan untuk menentukan sebuah pilihan dengan kondisi tunggal

Bentuk Umum

If Syarat then hasil;

Contoh

If Nilai > 80 then keterangan = ‘Lulus’;

b. Percabangan untuk kondisi majemuk

Merupakan operator percabangan yang digunakan untuk menentukan pilihan dengan kondisi yang harus dipeuhi lebih dari satu.

Bentuk Umum

If Syarat1 thenHasil1ElseIf syarat2 thenHasil2Else…………….……………end;

ContohIf nilai > 80 then

Page 22: Turbo Pascal Ela

Grade = “A”Elseif nilai > 70 thengrade = “B”elseif nilai > 60 thengrade = “C”elsegrade = “E’;

3.1.3. Percabangan case

case of adalah merupakan metode lain dari sebuah percabangan, berfungsi sama seperti fungsi if yaitu untuk melakukan seleksi atas beberapa pilihan dengan kondisi sebagai syarat yang harus terpenuhi. Secara fungsi scee dan if tidak ada perbedaan tetapi untuk penulisan fungsi case lebih mudah diterapkn untuk pilihan atau kondisi lebih dari satu.

Bentuk Umum fungsi Case OF

Case of; hasil1;; hasil2;

;hasil3;………………………; hasiln;end;

atau fungsi case of bisa juga diberikan else untuk piliahn terakhir.

Bentuk Umum

Case of; hasil1;; hasil2;;hasil3;………………………elsehasiln;end;

Contoh

Case Bilangan of1:showmessage(‘Angka 1’);

Page 23: Turbo Pascal Ela

2:showmessage(‘Angka 2’);3:showmessage(‘Angka 3’);end;

3.2. Mengenal Object II (combo box, list box dan radio button)

1Checkbox Digunakan untuk menentukan pilihan lebih dari satu2Radio Button Digunakan untuk menentukan pilhan, tetapi hanya satu pilhan yang bisa digunakan3List Box Menmpilkan pilihan dalam bentuk list4Combo Box Menampilkan pilihan dalam bentuk popup

3.3. Merancang Program dengan fungsi IF

a. Hasil Yang Diperoleh

Gambar 3.1 Gambar Perhitungan GajiKetentuan Perhitungan Gaji

1. Dalam Struktur organisasi perusahaan ketentuan gaji perusahaan terbagi menjadi 3 struktur utama

Jabatan Gaji PokokDirektur 5000000Manager 3000000Karyawan 1000000

2. Besarnya tunjangan ditentukan oleh status kep

b. Desian Form

Gambar 3.2. Desain Form Gaji

c. Desain Properties

Object Name CaptionLabel 1 Label1 Nama PegawaiLabel 2 Label2 Jabatan

Page 24: Turbo Pascal Ela

Label 3 Label3 Gaji PokokLabel 4 Label4 Tunjangan StatusLabel5 Label5 Gaji BersihGroupBox GroupBox1 StatusRadioButton1 Rtetap TetapRadioButton2 Rhonorer HonorerObject Name TextEdit1 enama -Edit2 epokok -Edit3 etunjangan -Edit4 ebersih -Combo Box Cjabatan -

Object Name CaptionButton1 Btotal Total GajiButton2 Blagi Isi Data LagiButton3 Bclose Close

d. Listing Program

Memberikan pilihan pada combo box sesuai dengan piihan pada jabatan

Dengan Menggunakan Object Properties

Langkah – langkahnya1. aktifkan combo box yang akan dipilih2. pada properties pilih dan klik item, lalu klik command (…)

3. Pada jendela String list Editor, Seperti terlihat pada jendela berikut

Page 25: Turbo Pascal Ela

4. Ketikan kata sebagai kata pilihan pada jendela seperti contoh tersebut diatas.5. Setelah selesai klik OK

Melalui jendela code editorDouble click pada form, sebarang tempat dan ketikan program berikut ini.

procedureTForm1.FormCreate(Sender: TObject);begincjabatan.Items.Add('Direktur');cjabatan.Items.Add('Manager');cjabatan.Items.Add('Karyawan');end;

Program untuk mencari gaji pokok1. Aktifkan combo box untuk jabatan2. Pada pada jendela properties pilih event,3. pilih dan aktifkan onclick, Seperti yang terlihat seperti gambar berikut ini.

4.

5. Double click pada combo onclick.6. Ketikan program berikut ini

procedure TForm3.cjabatanClick(Sender: TObject);beginif cjabatan.Text = 'Direktur' thenepokok.Text := '5000000'elseif cjabatan.Text = 'Manager' thenepokok.Text := '2000000'elseif cjabatan.Text = 'Karyawan' thenepokok.Text := '1000000'else

Page 26: Turbo Pascal Ela

epokok.Text := '0'end;

Program menghitung Tunjangan Karyawan TetapDouble click pada option tetap dan ketikan program berikut ini

procedure TForm3.etetapClick(Sender: TObject);beginif etetap.Checked = true thena := strtofloat(epokok.Text);hasil :=a*0.3;etunjangan.Text := floattostr(hasil)end;

Program menghitung Tunjangan Karyawan HonorerDouble click pada option honorer dan ketikan program berikut ini

procedure TForm3.rhonorerClick(Sender: TObject);beginif rhonorer.Checked = true thena := strtofloat(epokok.Text);hasil :=a*0.1;etunjangan.Text := floattostr(hasil)end;

Program menghitung Gaji BersihDouble click pada command total gaji, dan ketikan program berikut ini :

procedure TForm3.btotalClick(Sender: TObject);begina := strtofloat(epokok.Text);b := strtofloat(etunjangan.Text);c := a+b;ebersih.Text := floattostr(c);end;

Program bersihDouble click pada Isi Data Lagi, dan ketikan program berikut ini

procedure TForm3.blagiClick(Sender: TObject);begincjabatan.Text := 'Jabatan';enama.Text := '';ebersih.Text := '0';etunjangan.Text := '0';epokok.Text := '0';

Page 27: Turbo Pascal Ela

etetap.Checked := false;rhonorer.Checked := false;end;

Program Close dengan pesan, seperti tampilan sebagai berikut.

Gambar 3.3 Form Pesan

procedure TForm3.bcloseClick(Sender: TObject);beginif (application.MessageBox('Anda Yakin akan keluar','Informasi',MB_YESNO)= IDYES)thencloseend;

3.4. Program Biaya Ujian

Buatlah program untuk mencari biaya ujian untuk calon siswa pada suatu perguruan tinggi.

Tampilan yang diinginkan adalah sebagai berikut

Ketentuan Pencarian Biaya1. Nilai murni didapat dari penjumlahan (nilai Prkatek * 60%) ditambah (Nilai Teori * 40 %).2. Keterangan = Gagal jika nilai murni <>= 603. Biaya perjurusan diperoleh dari dua pilihan jurusan yang ada:1. jika pilhan MI maka biayanya = 2500002. jika pilihan TK maka biaya = 3000004. Pilihan Biaya Waktu Ujian diperoleh dari 2 waktu kuliah yang ada.Jika pilihan pagi maka biaya kuliah = 50000, 1000000 untuk biaya kuliah malam.5. Total biaya diperoleh dari penjumlahan Semua jurusan ditambah biaya waktu kuliah.

Page 28: Turbo Pascal Ela

6. Isi data lagi untuk mengulang input data7. close untuk mentup program.