Rabu, 10 Juni 2009

Statemen Masukan dan Keluaran pada Program

Statemen Assignment

Penyelesaian suatu masalah dengan bantuan komputer, memerlukan data untuk diolah, dan pengolahan data terjadi di memori, karena komputer atau lebih tepatnya CPU (Central Processing Unit) hanya dapat mengolah data, bila data telah berada dimemori, bahkan lebih dalam lagi beberapa pengolahan data memerlukan tempat di register CPU. Cara paling sederhana untuk menempatkan data di memori, bisa dilakukan dengan satemen assignment seperti pada contoh program berikut. Akan diselesaikan perhitungan luas suatu segi-empat, dari langkah-langkah yang kita ketahui selama ini dalam menghitung luas segi empat, maka kita dapat menyusun algoritma sebagai berikut :

Algoritma 3.1. Menghitung Luas Segi Empat

1. Berikan data panjang

2. Berikan data lebar

3. Hitung Luas = panjang x lebar

Setelah kita mendapatkan langkah-langkah yang diperlukan, pekerjaan selanjutnya adalah membuat program. Dalam pemrograman, yang pertama harus diperhatikan adalah mendeklarasikan variabel yang diperlukan, dalam contoh ini jelas diperlukan tiga variable yaitu masing masing untuk : panjang, lebar dan luas, katakanlah data panjang dan lebar semuanya berupa bilangan bulat yaitu masing masing 5 dan 4 (cm), maka program selengkapnya menjadi :

Contoh: Menghitung Luas Segitiga

Program Hitung_Luas_Segi_4;

var panjang,lebar,luas : integer;

{Deklarasi Variabel}

begin

panjang := 5;

lebar := 4;

luas := panjang * lebar;

end.

Disini data diberikan langsung dengan statemen assignment yaitu dengan simbol := , artinya nilai 5 diisikan kepada variabel panjang dan nilai 4 diisikan kepada variabel lebar. Sekilas sudah dapat diketahui, kelemahan cara memasukan nilai-nilai seperti diatas, yaitu adanya kekakuan dalam memberikan data, Ekspresi panjang * lebar menghasilkan suatu nilai hasil kali panjang dengan lebar dan hasil ini diserahkan kepada variabel luas. Bila kita ingin mengubah data, maka tidak ada cara lain, kecuali dengan memasukkan data baru, setelah program dihentikan, misalnya panjang := 10; dan lebar := 8;. Kekurangan ini dapat diatasi dengan menggunakan statemen input, yaitu membaca data dari luar melalui papan tombol.

Statemen Masukan

Seperti dijelaskan diatas, pemrograman dengan cara langsung menyerahkan data kepada variabel dengan statemen assignment ( := ), dan ternyata kurang memuaskan. Maka diperlukan statemen input yaitu suatu perintah untuk membaca data dari luar, dalam hal ini melalui papan tombol. Dalam bahasa Pascal perintah ini dilaksanakan dengan statemen :

read(x);

artinya : masukan data dari papan tombol ke variabel x.

Dengan perintah read(), maka program diatas dapat ditulis kembali menjadi :

Contoh 3.2 Membaca Data dari Papan-tombol

Program Hitung_Luas_Segi_4;

var panjang,lebar,luas : integer;

{Deklarasi Variabel}

begin

read(panjang);

read(lebar);

luas := panjang * lebar;

end.

Perintah read(panjang) dan read(lebar), masing masing meminta supaya data dibaca lewat papantombol untuk disimpan di variabel-variabel panjang dan lebar. Kemudian hasil perkalian kedua variabel berupa perhitungan luas, disimpan di variabel luas. Dengan cara ini dapat dihitung luas untuk berbagai data panjang dan lebar.

Statemen input lain yang serupa, adalah perintah readln, tetapi dianjurkan apabila diperlukan pembacaan data secara beruntun, maka gunakan readln(), Perintah read ataupun readln dapat menggunakan lebih dari satu argumen, read(x,yz) atau readln(A,B,C,D,E).

Statemen Keluaran

Keluaran ke Layar Monitor

Hasil perkalian panjang dengan lebar pada program hitung_luas_segi_4 diatas, terbenam didalam memori yaitu berada di variabel luas. Untuk mentayangkan hasil perkalian tersebut di layar monitor diperlukan statemen keluaran. Didalam bahasa Pascal ada dua macam perintah untuk menayangkan niliai dari suatu variabel, kedua perintah tersebut adalah :

write dan writeln. Perbedaan antara write dan writeln dapat dijelaskan sebagai berikut.

write('TEST');

writeln('TEST');

Dengan perintah write, kata TEST akan ditayangkan di layar monitor, pada posisi kursor sebelum perintah dijalankan, setelah perintah dijalankan, kursor pindah ke ujung kata TEST. Sama seperti perintah write, tetapi posisi kursor pindah ke baris berikutnya, setelah perintah writeln dijalankan.

Contoh: Menampilkan Hasil di Layar Monitor

Program Hitung_Luas_Segi_4;

var panjang,lebar,luas : integer;

begin

{1} write('Masukan data panjang : '); readln(panjang);

{2} write('Masukan data lebar : '); readln(lebar);

{3} luas := panjang * lebar;

{4} writeln('Luas = ', luas);

end.

Apabila program diatas dijalankan akan tampak dialog dilayar monitor :

Masukan data panjang : 21

Masukan data lebar : 11

Luas = 231

Text yang diberi garis bawah adalah masukan data oleh operator. Dari contoh diatas, terlihat bahwa dengan menambah perintah write pada baris 1 dan 2, operator akan tahu, data apa yang harus dimasukan, panjang atau lebar.

Contoh: Menampilkan Hasil di Layar Monitor dan mengganti Write dengan Writeln.

Program Hitung_Luas_Segi_4;

var panjang,lebar,luas : integer;

begin

{1} writeln('Masukan data panjang : '); readln(panjang);

{2} writeln('Masukan data lebar : '); readln(lebar);

{3} luas := panjang * lebar;

{4} writeln('Luas = ', luas);

end.

Ketika program diatas dijalankan akan tampak dialog dilayar monitor, sebagai berikut :

Masukan data panjang :

21

Masukan data lebar :

11

Luas = 231

Jadi dengan perintah Writeln, text apapun setelah text yang ditulis dengan perintah itu akan ditampilkan dibaris berikutnya. Ekspresi dapat menjadi argumen dalam statemen write atau writeln, seperti contoh pada baris ke tiga dan ke empat pada program utama diatas :

luas := panjang * lebar; dan writeln('Luas = ', luas);

dapat digantikan dengan satu baris perintah :

writeln('Luas = ', panjang*lebar);

Penggunaan cara diatas sepenuhnya menjadi pilihan pemrogram, karena pada beberapa kasus, penulisan yang pertama lebih jelas dan variabel luas dapat digunakan untuk pengolahan berikutnya, misalkan untuk menghitung isi.

Contoh: Menghitung volume kotak dengan membaca tiga data sekaligus

Program Hitung_Luas_Segi_4;

var p,l,t,v : integer;

begin

{1} write('Masukan data panjang,lebar,tinggi : '); readln(p, l,t);

{2} v := p * l * t;

{3} writeln('Luas = ', luas);

end.

Dialog berikut akan tampak, bila program diatas dijalankan.

Masukan data panjang, lebar, tinggi : 10 6 4

Luas : 240

Format Penulisan

Statemen write dan writeln dapat dilengkapi dengan format penulisan, ada dua format penulisan, yang pertama untuk penulisan tipe integer dan string, yang kedua adalah untuk penulisan tipe real. Format penulisan untuk tipe integer dan string : write(A:n) atau writeln(B:n) dengan : A, B = variabel yang akan ditampilkan nilainya n = maksimum tempat yang disediakan, penulisan akan diratakan disebelah kanan (right justified), n harus lebih besar dari jumlah atau angka yang berada di variabel A atau B. Misalkan isi variabel A adalah 4. Perintah Ditampilkan di layar monitor:

writeln(A : 5); 4

writeln(A*10 : 5); 40

writeln(A*100 : 5); 400

Misalkan isi variabel S1 := 'Lektor Muda', S2 := 'Mahasiswa’ dan S3 := 'Dosen'

Perintah Ditampilkan di layar monitor

writeln(S1 : 7); Lektor Muda

writeln(S2 : 7); Mahasiswa

writeln(S3 : 7); Dosen

Tempat yang disediakan, dimulai dari posisi kursor, hingga n karakter. Bila string melebihi tempat yang disediakan maka string akan terpotong dibagian awal. Format penulisan untuk tipe real : write(X : n : d) atau writeln(Y : n : d) dengan X,Y = variabel yang akan ditampilkan nilainya n = maksimum tempat yang disediakan untuk angka angka, termasuk termasuk tanda titik, sebagai pemisah desimal. d = maksimum tempat yang disediakan untuk angka desimal. Bila X = 123.75 dan Y = 12.375

Perintah Ditampilkan di layar monitor:

writeln(X : 6 : 2); 123.75

writeln(Y : 6 : 2); 12.37

Bila suatu variabel X dan Y ditampilkan di layar monitor dengan perintah write atau writeln tanpa format maka yang akan tampak di monitor adalah variabel X : 1.2375E2 variabel Y : 1.2375E1 sebagai tampilan standar untuk tipe real.

Contoh: Penulisan Format Bilangan Real

Program Bonus;

const k = 1.5;

var x : real;

begin

write('Masukan gaji anda : '); readln(x);

writeln('Anda mendapat bonus 50 % ');

writeln('bulan ini anda terima rp : ', x * k : 9 : 2);

end.

Akan tampak dilayar monitor :

Masukan gaji anda : 1000000

Anda mendapat bonus 50 %

Bulan ini anda terima rp 1500000.00

Keluaran ke Printer

Statemen ini bukan merupakan perintah standar Pascal, tetapi khusus untuk pemrogram yang menggunakan TURBO Pascal. Perintah untuk menuliskan suatu hasil atau apapun ke printer dapat dilakukan dengan statemen write dan writeln, tetapi dengan tambahan argument yaitu identifier standar TURBO Pascal LST.

Contoh Write(Lst, x), maka isi variabel x akan dicetak di kertas printer. Penggunaan argumen lst, harus didahului dengan penulisan uses printer pada awal program, artinya pemrogram memberitahu kompiler TURBO Pascal bahwa unit printer akan digunakan. Perlu diketahui bahwa sebagai kelengkapan Library, mulai dari versi 4.0 keatas TURBO Pascal menyediakan unit library pilihan yaitu :

  • Unit CRT untuk manipulasi layar
  • Unit PRINTER untuk printer
  • Unit GRAPH untuk penggunaan grafik

Jadi perintah-perintah yang berkenaan dengan grafik akan terdapat pada Unit Graph dan perintah-perintah berkenaan dengan layar monitor akan terdapat pada Unit CRT. Keterangan lebih rinci, dapat ditemui pada buku manual TURBO Pascal.

Contoh: Penulisan Hasil ke Printer

Uses printer;

var x : real;

begin

write('Masukan gaji anda : '); readln(x);

writeln(Lst,'Anda mendapat bonus 50 % ');

writeln(Lst,'bulan ini anda terima rp : ', 1.5*x : 9 : 2);

0 komentar:

Posting Komentar