modul struktur program pascal

27
BAB I STRUKTUR PROGRAM PASCAL, TIPE DATA, VARIABEL, DAN KONSTANTA I. Teori Struktur program Pascal terdiri dari tiga bagian (Gambar 1.1), yaitu : 1. Judul Program. Judul program sifatnya optional dan tidak signifikan di dalam program. Jika ditulis dapat digunakan untuk memberi nama program dan daftar dari parameter tentang komunikasi program dengan lingkungannya yang sifatnya sebagai dokumentasi saja. Judul program bila ditulis harus terletak pada awal dari program dan diakhiri dengan titik koma. Contoh : 2. Bagian Deklarasi. Bagian deklarasi digunakan bila didalam program menggunakan pengenal (identifier) yang dapat berupa label, konstanta, tipe, variable, prosedur dan fungsi. Perlu diingat, penulisan identifier dalam bahasa pascal tidak mengenal huruf besar atau kecil, jadi variabel nilai, NILAI, Nilai, dianggap sama. a. Deklarasi Konstanta Definisi konstanta diawali dengan kata cadangan Const diikuti oleh kumpulan identifier yang diberi suatu nilai konstanta. Data konstanta nilainya sudah ditentukan dan pasti, tidak dapat dirubah didalam program. program CONTOH;(* Judul Program *) begin writeln (‘Hello World’) ; end. program contoh_konstanta; const potongan = 0.2; gaji = 25000; namaperusahaan = 'PT ABC'; begin writeln ( 'Potongan =',potongan); writeln ( 'Gaji =',gaji);

Upload: danan-sulistyo

Post on 16-Apr-2015

237 views

Category:

Documents


2 download

DESCRIPTION

STRUKTUR PROGRAM PASCAL,TIPE DATA, VARIABEL, DAN KONSTANTA

TRANSCRIPT

Page 1: modul struktur program pascal

BAB I

STRUKTUR PROGRAM PASCAL,

TIPE DATA, VARIABEL, DAN KONSTANTA

I. Teori

Struktur program Pascal terdiri dari tiga bagian (Gambar 1.1), yaitu :

1. Judul Program. Judul program sifatnya optional dan tidak signifikan di dalam

program. Jika ditulis dapat digunakan untuk memberi nama program dan daftar dari

parameter tentang komunikasi program dengan lingkungannya yang sifatnya sebagai

dokumentasi saja. Judul program bila ditulis harus terletak pada awal dari program

dan diakhiri dengan titik koma.

Contoh :

2. Bagian Deklarasi. Bagian deklarasi digunakan bila didalam program menggunakan

pengenal (identifier) yang dapat berupa label, konstanta, tipe, variable, prosedur dan

fungsi. Perlu diingat, penulisan identifier dalam bahasa pascal tidak mengenal huruf

besar atau kecil, jadi variabel nilai, NILAI, Nilai, dianggap sama.

a. Deklarasi Konstanta

Definisi konstanta diawali dengan kata cadangan Const diikuti oleh kumpulan

identifier yang diberi suatu nilai konstanta. Data konstanta nilainya sudah

ditentukan dan pasti, tidak dapat dirubah didalam program.

Contoh :

b. Deklarasi Variabel

Variabel adalah identifier yang berisi data yang dapat diubah-ubah nilainya

didalam program. Menggunakan kata cadangan Var sebagai judul didalam bagian

deklarasi variable dan diikuti oleh satu atau lebih identifier yang dipisahkan koma,

diikuti dengan titik dua dan tipe dari datanya diakhiri dengan titik koma.

Adapun type variable yang disediakan pada Bahasa Pascal yaitu:

1

program CONTOH;(* Judul Program *)begin writeln (‘Hello World’) ;end.

program contoh_konstanta;const potongan = 0.2; gaji = 25000; namaperusahaan = 'PT ABC';begin writeln ( 'Potongan =',potongan); writeln ( 'Gaji =',gaji); writeln ( 'Nama =',namaperusahaan);end.

Page 2: modul struktur program pascal

- Integer

Type variable yang beguna untuk pengolahan data yang bulat, type ini masih

terbagi atas berberapa menurut jangkauan data dan ukurannya :

Type Jangkauan UkuranShortint -128..127 8 bitInteger -32768..32767 16 bitLongint -2147483648..2147483647 32 bitByte 0..255 8 bitWord 0..65535 16 bit

- Char

Type variabel yang berguna untuk pengolahan character ASCII, type

character ini penulisannya ditandai dengan dua buah petik tunggal seperti :

'A', '3', '*'.

- String

Berbeda dengan tipe data char, tipe data string dapat menampung hingga 256

karakter. Untuk penulisan tipe data string digunakan dua buah petik tunggal,

seperti ‘hello’.

- Boolean

Type variabel yang berguna untuk pengolahan hal yang hanya mempunyai

dua ketentuan yaitu benar (TRUE) dan salah (FALSE) saja.

- Real

Type variable yang beguna untuk pengolahan data yang tidak bulat.

Contoh :

- Deklarasi Tipe

Pascal menyediakan beberapa macam tipe data, yaitu :

Tipe data sederhana, terdiri dari :

- tipe data standar : integer, real, char, string, Boolean.

- Tipe data didefinisikan pemakai : enumerated atau scalar, subrange.

Tipe data terstruktur : array, record, file, set.

Tipe data penunjuk: pointer.

2

Program contoh_variable;varalas,tinggi : integer;luas : real;begin alas := 5; tinggi :=10; writeln('Luas Segitiga'); writeln('Alas : ',alas); writeln('Tinggi : ', tinggi); luas :=(alas*tinggi)/2; writeln('Luas : ',luas); readln;

Page 3: modul struktur program pascal

- Deklarasi Label

Jika program menggunakan statement Goto untuk meloncat ke suatu statement

yang tertentu, maka dibutuhkan suatu label pada statement yang dituju dan label

tersebut harus di deklarasikan terlebih dahulu pada bagian deklarasi.

Menggunakan kata cadangan Label diikuti oleh kumpulan identifier label dengan

dipisahkan oleh koma dan diakhiri dengan titik koma.

3. Bagian Deskripsi. bagian ini digunakan untuk meletakkan seluruh instruksi program.

Instruksi-instruksi yang akan diberikan untuk dikerjakan ditulis di antara “ begin ” dan

“ end ”. Penulisan “ end “ diakhiri dengan tanda baca titik (“ . ”). Yang perlu

diperhatikan bahwa setiap instruksi diakhiri dengan tanda baca titik koma (“ ; ”).

Tabel 1.1. Notasi Bahasa Pascal

3

(* JUDUL PROGRAM *)program NAMA_PROGRAM;{ Penjelasan mengenai program, yang berisi uraian singkatmengenai apa yang dilakukan oleh program }(* DEKLARASI *)[const]{ semua nama tetapan dan harga tetapannya didefinisikan disini }[type]{ semua nama tipe bentukan didefinisikan di sini }[var]{ semua nama variable global didefinisikan di sini }

{ deklarasi prosedur dan fungsi didefinisikan di sini }

(* DESKRIPSI *)begin { semua instruksi program dituliskan di sini }end.

Page 4: modul struktur program pascal

Kelompok Notasi Pascal Ket.1. Tipe Dasar Boolean

ByteShortintWordIntegerLongintRealDoubleExtendedCharStringString [N]Record

field1 : type;field2 : type;…fieldN : type;

end;

1 byte1 byte2 byte2 byte4 byte

2. Operatora. Aritmatika

b. Perbandingan

c. Logika

+-*/DivMod<<=

>>=

=<>NotAndOrXor

PenjumlahanPenguranganPerkalianPembagianHasil bagiSisa bagiLebih kecil dariLebih kecil atau sama denganLebih besar dariLebih besar atau sama denganSama denganTidak sama dengan

3. Komentar { komentar }(* komentar *)

4. Lain-lain ConstTypeTrueFalse

4

Page 5: modul struktur program pascal

II. Praktikum

Percobaan 1 :

Salinlah program berikut ini :

program percobaan1_1;

{ program untuk menampilkan data diri }

uses Crt;

var

nama, alamat,hobby : string;

{ program utama }

begin

Writeln(' Program Penampil Data Diri ');

Writeln(' ******************************** ' );

Write('Masukkan Nama : ');

Readln(nama);

Write('Masukkan Alamat : ');

Readln(alamat);

Write('Masukkan Hobby : ');

Readln(hobby);

Writeln;

Writeln('Hallo ',nama,' !!! kamu tinggal di ',

alamat, ' dan Hobbymu adalah ',hobby);

Readln;

end.

Kompilasi program tersebut dengan menekan Alt+F9 dan jalankan program tersebut dengan

menekan Ctrl+F9, kemudian amati hasilnya bila dimasukkan masukan tertentu.

Sekarang simpan program tersebut dengan memilih menu File lalu pilih Save. Simpan

dengan nama Prak1_1.PAS.

Kemudian coba lakukan kompilasi ke pengingat bantu. Hasil dari kompilasi ke pengingat

bantu ini adalah sebuah berkas bernama Prak1_01.EXE.

5

Page 6: modul struktur program pascal

Percobaan 2 :

Salinlah program berikut :

Program percobaan2_1;

{ program untuk Menampilkan Biodata Diri }

uses Crt;

type

str10 = string[10];

const

koma=',';

var

nama1,nama2 : str10;

alamat : string;

usia ,thn_lhr,thn_skr: Integer;

begin

Write('Masukkan Nama Depan : ');

Readln(nama1);

Write('Masukkan Nama Belakang : ');

Readln(nama2);

Write('Masukkan Alamat : ');

Readln(alamat);

Write('Masukkan Tahun Lahir : ');

Readln(thn_lhr);

Write('Masukkan Tahun Sekarang : ');

Readln(thn_skr);

usia := thn_skr - thn_lhr;

Writeln;

Writeln('=== BIODATA DIRI ===');

Writeln(nama2,koma,nama1);

Writeln(alamat);

Writeln(usia,' tahun');

Readln;

end.

6

Page 7: modul struktur program pascal

Latihan !

1. Buatlah program untuk menghitung luas dan keliling lingkaran, gunakan tipe data

konstanta untuk menyimpan nilai Phi.

2. Buatlah program untuk menentukan hasil pengurangan atau penjumlahan dari 2 atau

lebih bilangan bulat.

3. Buatlah program untuk menentukan hasil dari pembagian bilangan bulat san sisa

pembagian bulat dari 2 bilangan bulat.

4. Buatlah program yang menampilkan data mahasiswa berupa NPM, Nama, Nilai

Tugas, Nilai UTS, Nilai UAS dan Total Nilai.

7

Page 8: modul struktur program pascal

BAB II

PENYELEKSIAN KONDISI

I. Teori

A. Pernyataan if (if statement)

Pada umumnya satu permasalahan yang komplek memerlukan suatu penyelesaian

kondisi. Dengan menyeleksi suatu kondisi, maka selanjutnya dapat ditentukan tindakan apa

yang harus dilakukan, tergantung pada hasil kondisi penyeleksian. Jadi suatu aksi hanya

dikerjakan apabila persyaratan atau kondisi tertentu terpenuhi.

Pernyataan if (if statement) akan memeriksa suatu persyaratan dan menentukan

apakah syarat tersebut benar atau salah, kemudian melakukan pekerjaan sesuai dengan nilai

pernyataan tersebut.

Berikut adalah bentuk-bentuk dari pernyataan if yang sering digunakan :

a. Penyeleksian Satu Kasus, dengan menggunakan struktur if-then

Pada penyeleksian satu kasus, kondisi akan diseleksi oleh statemen If. Bila

kondisi bernilai benar (true), maka aksi sesudah kata then (dapat berupa satu atau

lebih aksi) akan diproses. Bila kondisi bernilai salah (false), maka tidak ada aksi yang

akan dikerjakan. Statemen endif adalah untuk mempertegas bagian awal dan bagian

akhir struktur if - then.

b. Penyeleksian Dua Kasus, menggunakan struktur if-then-else

Dalam struktur if-then-else, aksi 1 akan dilaksanakan jika kondisi bernilai

benar (true), dan jika kondisi bernilai salah (false) maka aksi 2 yang akan

dilaksanakan. Statemen else menyatakan ingkaran (negation) dari kondisi.

8

If dengan satu pernyataan (statement)

If (kondisi) then

aksi ;

If dengan dua atau lebih pernyataan (statement)

If (kondisi) then

begin

aksi1 ;

aksi2 ;

end;

Page 9: modul struktur program pascal

c. Penyeleksian Tiga Kasus atau Lebih (Penyeleksian Tersarang)

Untuk penyeleksian tiga kasus atau lebih juga menggunakan struktur if-then-

else sebagaimana halnya permasalahan dua kasus.

Contoh :

Percobaan 1

Program sederhana dengan pernyataan If

Berikut contoh program sederhana untuk menghitung luas segitiga dan lingkaran. Yang mana

perhitungan luas dua buah bangun tersebut digabung menjadi satu program, dan pemakai

dapat memilih masalah mana yang akan dipecahkan.

Sebagaimana diketahui untuk menghitung luas segitiga adalah

dengan :

L=1/2 . a . t

Dan luas lingkaran adalah dengan :

L = Phi. r. r

Untuk lebih jelasnya salin program berikut :

program percobaan1_2 ;

var

alas, tinggi, jejari, luas: Real;

pilih: Integer;

begin

Writeln ('1. Segitiga 2. Lingkaran');

Readln(pilih);

9

If dan else

If (kondisi) then

begin

aksi1 ;

aksi2 ;

end;

else

begin

aksi1 ;

aksi2 ;

Page 10: modul struktur program pascal

if pilih = 1 then

begin

Readln(alas, tinggi);

luas := 1 / 2 * alas * tinggi;

Writeln('Luas Segitiga : ', luas);

end ;

else

begin

Readln(jejari);

luas := pi * Sqr(jejari);

Writeln('Luas Segitiga : ', luas);

end;

Readln;

end.

Jalankan program tersebut. Pada program tersebut disajikan dua macam pilihan kepada

pemakai untuk menghitung luas segitiga atau luas lingkaran. Peubah pilih digunakan untuk

pemakai guna menentukan pilihannya.

B. Struktur case (case statement)

Struktur ini dapat digunakan untuk menganalisa penyeleksian dua kasus atau lebih dan

bentuknya adalah lebih sederhana daripada struktur IF-THEN-ELSE yang memiliki bentuk

bertingkat-tingkat.

Contoh :

Buatlah program untuk menentukan nilai “Luas Segitiga” dan “Luas Lingkaran” dengan

menggunakan struktur case.

10

case <peubah> of tetapan1: pernyataan1; tetapan2: begin pernyataan1; pernyataan2; … end; tetapan3, tetapan4: pernyataan1; tetapan5 .. tetapan8: pernyataan1; else pernyataan1;

Page 11: modul struktur program pascal

program percobaan2_2;

var

alas, tinggi, r, luas: Real;

pilih: Integer;

begin

Writeln('1. Segitiga 2. Lingkaran');

Readln(pilih);

case pilih of

1: begin

Readln(alas, tinggi);

luas := 1 / 2 * alas * tinggi;

Writeln('Luas Segitiga : ', luas);

End;

2: begin

Readln(r);

luas := pi * Sqr(r);

Writeln('Luas Segitiga : ', luas);

end;

end;

Readln;

end.

Dari bentuk-bentuk struktur kendali yang telah dijelaskan di atas dapat terjadi dimana

struktur kendali tertentu berada pada struktur kendali yang lain, yang dikenal dengan struktur

kendali bersarang. Misalnya didalam pernyataan if terdapat pernyataan if lagi atau dalam

pernyataan case terdapat pernyataan if dan seterusnya.

Untuk lebih jelasnya salin program berikut :

program percobaan3_2;

var

nama, alamat: string;

npm: string[8];

keterangan: string[2];

grade, pilih: Char;

11

Page 12: modul struktur program pascal

nilai: Integer;

begin

Writeln('1. Memasukkan data mahasiswa 2. Keluar');

Write('Pilihan Anda : ');

Readln(pilih);

case pilih of

'1': begin

Write('Masukkan Nama Anda : ');

Readln(nama);

Write('Masukkan NPM Anda : ');

Readln(npm);

Write('Masukkan Alamat Anda : ');

Readln(alamat);

Write('Masukkan Nilai Anda : ');

Readln(nilai);

{menentukan program studi}

if (copy(npm, 3, 2)='11') then

keterangan := 'S1'

else

if (copy(npm, 3, 2)='31') then

keterangan := 'D3';

{menentukan grade}

if (nilai >= 80) then

grade := 'A'

else

if (nilai >= 70) then

grade := 'B'

else

if (nilai >= 60) then

grade := 'C'

else

grade := 'D';

Writeln('Data mahasiswa yang diinputkan');

Writeln('Nama : ',nama);

Writeln('NPM : ',npm);

12

Page 13: modul struktur program pascal

Writeln('Program Studi : ',keterangan);

Writeln('Alamat : ',alamat);

Writeln('Nilai : ',nilai);

Writeln('Grade : ',grade);

end;

'2': begin

Writeln('Anda mengakhiri program !');

Exit;

end;

else

begin

Writeln('Pilihan Anda salah !');

Exit;

end;

end;

Readln;

end.

II. Praktikum

Latihan 1.

1. Buatlah program untuk menentukan bilangan terbesar dari tiga buah bilangan bulat yang

dimasukkan melalui piranti masukan. (Asumsi: ketiga bilangan adalah bilangan yang

berbeda).

Contoh keluaran yang diinginkan;

Masukkan bilangan pertama : 4

Masukkan bilangan kedua : 2

Masukkan bilangan ketiga : 7

Bilangan yang terbesar adalah : 7

2. Buatlah program konversi dari nilai angka menjadi nama hari. (Asumsi: 1=Senin,

2=Selasa, 3=Rabu, 4=Kamis, 5=Jumat, 6=Sabtu, 7=Minggu)

Contoh keluaran yang diinginkan:

Masukkan Angka yang menunjukkan hari : 1

13

Page 14: modul struktur program pascal

Hari yang anda pilih : Senin

Latihan 2.

Ubah program percobaan3_2, tambahkan sehingga :

1. Nilai yang diinputkan ada tiga macam yaitu : nilai Tugas, nilai UTS dan Nilai UAS.

2. Perhitungan grade didapatkan dari nilai akhir dengan perhitungan :

Nilai akhir = (2 * nilai UAS + nilai Tugas + nilai UTS) / 4

3. Data mahasiswa yang ditampilkan dalam huruf besar, meskipun dalam pengisian awal

menggunakan huruf kecil.

4. Tampilkan juga apakah mahasiswa tersebut LULUS atau TIDAK LULUS dengan

ketentuan jika grade dari mahasiswa "D" maka ia TIDAK LULUS selain itu maka ia

LULUS.

5. Buatlah program untuk menentukan apakah nilai yang diinputkan bilangan genap atau

ganjil.

6. Buatlah program kalkulator sederhana dengan memberikan pilihan bagi pengguna.

Operasi-operasinya meliputi : penjumlahan, pengurangan, perkalian, pembagian, sisa hasil

bagi dan pangkat.

14

Page 15: modul struktur program pascal

BAB III

STRUKTUR PENGULANGAN

(LOOP STATEMENT)

I. Teori

Terdapat dua model struktur pengulangan, yaitu:

1. Struktur Pengulangan Tanpa Kondisi (unconditional looping). Di dalam struktur ini,

instruksi-instruksi di dalam badan pengulangan diulangi sejumlah kali yang

dispesifikasikan (jumlah pengulangan sudah diketahui sebelum eksekusi). Contoh:

Struktur FOR.

2. Struktur Pengulangan Dengan Kondisi (conditional looping). Di dalam struktur ini,

jumlah pengulangan tidak diketahui sebelum eksekusi program. Yang dapat ditentukan

hanya kondisi berhenti pengulangan, artinya instruksi-instruksi di dalam badan

pengulangan diulangi sampai kondisi berhenti terpenuhi. Contoh: Struktur WHILE dan

Struktur REPEAT.

Macam-macam struktur pengulangan :

a. Struktur FOR

Struktur pengulangan FOR digunakan untuk mengulang statemen atau satu blok

statemen berulang kali. Jumlah pengulangan diketahui atau dapat ditentukan sebelum

eksekusi. Untuk mencacah sudah jumlah pengulangan diperlukan sebuah variabel

pencacah (counter). Variabel ini nilainya selalu bertambah satu setiap kali pengulangan

dilakukan. Jika cacah pengulangan sudah mencapai jumlah yang dispesifikasikan, maka

proses pengulangan berhenti. Pada struktur FOR, pencacah haruslah dari tipe data yang

memiliki predecessor dan successor, yaitu integer atau karakter. Tipe riil tidak dapat

digunakan sebagai pencacah. Aksi adalah satu atau lebih instruksi yang diulang.

Bentuk struktur FOR ada dua macam:

Menaik (ascending)

Pada struktur FOR menaik, nilai_awal harus lebih kecil atau sama dengan

nilai_akhir. Jika nilai_awal lebih besar dari nilai_akhir, maka badan pengulangan

tidak dimasuki. Pada awalnya, pencacah diinisialisasikan dengan nilai_awal. Nilai

pencacah secara otomatis bertambah satu setiap kali aksi pengulangan dimasuki,

sampai akhirnya nilai pencacah sama dengan nilai_akhir. Jumlah pengulangan yang

15

Page 16: modul struktur program pascal

terjadi = nilai_akhir – nilai_awal + 1. Struktur Bahasa Pascal untuk pengulangan

FOR menaik.

Menurun (descending)

Pada struktur FOR menurun, nilai_akhir harus lebih besar atau sama dengan

nilai_awal. Jika nilai_akhir lebih kecil dari nilai_awal, maka badan pengulangan

tidak dimasuki. Pada awalnya, pencacah diinisialisasikan dengan nilai_akhir. Nilai

pencacah secara otomatis berkurang satu setiap kali aksi diulangi, sampai akhirnya

nilai pencacah sama dengan nilai_awal. Jumlah pengulangan yang terjadi =

nilai_akhir – nilai_awal + 1. Struktur Bahasa Pascal untuk pengulangan FOR

menurun.

b. Struktur WHILE

Pada struktur WHILE, aksi (atau runtunan aksi) akan dilaksanakan berulang kali

selama kondisi bernilai true. Jika kondisi bernilai false, badan pengulangan tidak akan

dilaksanakan, yang berarti pengulangan selesai. Yang harus diperhatikan adalah

pengulangan harus berhenti. Pengulangan yang tidak pernah berhenti menandakan bahwa

logika pemrograman tersebut salah. Pengulangan berhenti apabila kondisi bernilai false.

Agar kondisi suatu saat bernilai false, maka di dalam badan pengulangan harus ada

instruksi yang mengubah nilai variabel kondisi.

c. Struktur REPEAT

Struktur ini mendasarkan pengulangan pada kondisi boolean. Aksi di dalam badan

pengulangan diulang sampai kondisi boolean bernilai true. Dengan kata lain, jika kondisi

boolean masih false, pengulangan masih terus dilakukan. Karena proses pengulangan suatu

saat harus berhenti, maka di dalam badan pengulangan harus ada aksi yang mengubah nilai

variabel kondisi. Struktur REPEAT mempunyai makna yang sama dengan WHILE, dan

dalam beberapa masalah kedua struktur tersebut komplemen satu sama lain.

16

for pencacah := nilai_awal to nilai_akhir do aksi

for pencacah := nilai_akhir downto nilai_awal do aksi

While kondisi do aksi

Repeat aksi Until kondisi

Page 17: modul struktur program pascal

Contoh :

1. Balik Kalimat

program Percobaan1_3;

var

I, Panjang: Integer;

Kata, Balik: string;

begin

Writeln('Balik Kalimat');

Writeln('=============');

Write('Masukkan kalimat : ');

Readln(Kata);

Panjang := Length(Kata);

Balik := '';

for I := Panjang downto 1 do

Balik := Balik + Kata[I];

Writeln('Hasil pembalikannya : ', Balik);

Readln;

end.

2. Berikut contoh program untuk menampilkan bilangan genap dari 2 sampai dengan 100.

program percobaan2_3;

var

i: Integer;

begin

Writeln('Bilangan genap');

i := 1;

repeat

Inc(i);

if i mod 2 = 0 then Write(i:4);

until (i=100);

Readln;

end.

17

Page 18: modul struktur program pascal

3. Sama halnya dengan struktur kendali yang telah dibahas sebelumnya, pada struktur

perulangan dapat terjadi kasus dimana di dalam struktur perulangan tertentu terdapat

struktur perulangan yang lain dan seterusnya. Program berikut akan menerapkan struktur

perulangan dengan menggunakan while.

program percobaan3_3;

var

i, j: Integer;

M: Char;

begin

Write('Masukkan sembarang karakter : ');

Readln(M);

i := 1;

while i <= 10 do

begin

j := 1;

while j <= i do

begin

Write(M);

Inc(j);

end;

Writeln;

Inc(i);

end;

Readln;

end.

4. Faktorial dan pemangakatan

program percobaan4_3;

uses Crt;

var

Hasil: Real;

I, pilih, A, X, N: Integer;

Status: Boolean;

18

Page 19: modul struktur program pascal

begin

Repeat

Clrscr;

Writeln('1. Pemangkatan 2. Faktorial 3. Keluar');

Write('Masukkan Pilihan Anda : ');

Readln(pilih);

case pilih of

1 : begin

Write('Masukkan Sembarang angka : ');

Readln(X);

Write('Akan dipangkatkan berapa : ');

Readln(A);

Hasil := 1;

for I := 1 to A do Hasil := X * Hasil;

Writeln('Jadi ', X,' dipangkatkan ', A,' : ',

Hasil:5);

Status := False;

end;

2 : begin

Write('Masukkan Sembarang angka : ');

Readln(N);

if N <= 1 then Hasil := 1

else

begin

Hasil := 1;

for I := 2 to N do Hasil := Hasil * I;

end;

Writeln('Jadi factorial ', N,' (', N,'!) : ',

Hasil:5);

Status := False;

end;

3 : Status := True;

else

begin

Writeln('Pilihan Anda salah !');

19

Page 20: modul struktur program pascal

Status := True;

end;

end;

Readln;

until Status;

end.

II. Praktikum

Latihan.

1. Buatlah program untuk menampilkan deret bilangan ganjil antara 0 s/d 100 !

2. Buatlah program untuk menampilkan deret bilangan 1, 5, 9, 13, ... (berhenti jika melebihi

300)!

3. Buatlah algoritma untuk menampilkan deret bilangan 1, 1, 2, 1, 2, 3, ... (berhenti jika sama

dengan batas nilai tertentu yang dimasukkan melalui piranti masukan)!

Contoh keluaran:

Masukan batas nilai: 4

Deret Keluaran: 1, 1, 2, 1, 2, 3, 1, 2, 3, 4

4. Buat program untuk menampilkan angka sebagai berikut :

1

22

333

4444

55555

5. Buat program untuk menghitung gaji pegawai dengan ketentuan sebagai berikut :

· Terdapat dua buah golongan yaitu : A dengan gaji pokok 500000 dan B dengan gaji

pokok 1000000

· Pegawai akan mendapatkan tunjangan jika sudah menikah sebesar 10% dari gaji

pokok. Untuk status tidak menikah, janda, dan duda tunjangan = 0.

· Jika pemakai memasukkan inputan baik itu untuk status dan golongan tidak sesuai

dengan yang diminta maka ulang terus sampai yang diinputkan benar.

· Tampilkan nama, alamat, status, gaji pokok dan total gajinya.

20