7 Apr 2015

Langkah pertama yaitu buatlah form baru, kemudian desainlah perhitungan yang akan dibuat menggunakan fasilitas textbox dan command button, terlihat seperti gambar berikut :












Kemudian rubahlah caption pada setiap command button yang ada, dengan cara klik kanan pada comman button kemudian pilih properties, sehingga keluar dialog berikut :
Pada properties semua textbox isi maksimal karakter data yang dapat dimasukan yaitu maxlength, jika maxlength = 10 maka pada inputmask isikan angka 9 sebanyak pengisian maxlenght yaitu 10x.
Agar hasil keluaran pada textbox4,&5 tidak menampilkan tanda koma(,) pilih properties isi jumlah maxlength = 0 dan tanpa menghapus inputmask atau inputmask tetap seperti pengisian di atas. 
      












Selesai sudah membuat sebuah tampilan perhitungan keuangan sederhana dengan foxpro, tapi perhitungan ini belum berfungsi, ini baru sekedar gambarnya saja. Berikut ini kita masuk ketahap codingnya agar kalkulator ini dapat berfungsi. Double klik pada command button yang bertanda (OK),  nanti akan muncul tempat untuk mengisikan kode-kode yang diperlukan seperti gambar dibawah ini, pada procedure kita pilih “Click”. kemudian 
masukan kode berikut.






* Fungsi VAL() disini digunakan untuk mengubah tipe data yang ada pada textbox dari String (STR) menjadi Numerik agar dapat melakukan operasi bilangan pada perhitungan ini.
Setelah semuanya selesai maka save projectnya dan jalankan program tersebut, berikut hasil dari program perhitungan keuangan sederhananya.









isi bonus, gajih yang didapat, dan berapa pengeluarannya. setelah itu klik "OK"


3 Apr 2015

Program Stok barang pada pascal

pada menu program ini menggunakan perulangan di menu 1 dan 2 kemudian menu 3 menggunakan function exit agar dapat keluar dari looping perulangan.

berikut contoh skrip :

program stok;
uses crt;
var
jml, tmbh, krg, kode : integer;
pil:char;
begin
clrscr;
write('Masukan jumlah stok awal barang = ');
readln(jml);

repeat;
clrscr;
writeln('Total jumlah stok barang = ',jml);
writeln;
writeln('Menu Pilihan :');
writeln;
writeln('1. tambah stok');
writeln('2. kurangi stok');
writeln('3. keluar');
writeln;
write('pilihan = ');
readln(kode);
writeln;

case kode of
1:begin
write('Jumlah stok yang ditambah = ');
readln(tmbh);
jml:=jml+tmbh;
end;
2:begin
write('Jumlah stok yang dikurangi = ');
readln(krg);
jml:=jml-krg;
end;
3:begin
exit;
end;
end;

if (kode=1) then pil:='1' else
if (kode=2) then pil:='2' else
writeln('Pilihan hanya 1 - 3');
readln(pil);
until (pil='1') or (pil='2');

end.

coba lihat screenshot pada menu 1 dan 2 akan terulang secara terus menerus penambahan atau pengurangan pada nilai total stok barang tersebut sesuai pilihan menunya.
semoga bermanfaat..

27 Mar 2015

Program pascal toko buah


uses crt;
var
nmpmbli, nmbuah, bonus, ket : string;
hrga, jmlbuah, disc, hasil, total, uangpmbyrn, hrgabuah, uangkmbln : real;
kode, ul : char;

begin
repeat
clrscr;
writeln('====================================');
writeln('|| "TOKO BUAH " ||');
writeln('====================================');
writeln('|| KODE || NAMA BUAH || HARGA(/KG)||');
writeln('====================================');
writeln('|| 1. || Anggur || Rp.8000 ||');
writeln('|| 2. || Apel || Rp.7000 ||');
writeln('|| 3. || Mangga || Rp.15000 ||');
writeln('|| 4. || Semangka || Rp.6000 ||');
writeln('|| 5. || Sirsak || Rp.11000 ||');
writeln('====================================');
writeln;
write('NAMA PEMBELI : '); readln(nmpmbli);
write('KODE BUAH : '); readln(kode);

if kode='1' then nmbuah:='Anggur' else
if kode='2' then nmbuah:='Apel' else
if kode='3' then nmbuah:='Mangga' else
if kode='4' then nmbuah:='Semangka' else
if kode='5' then nmbuah:='Sirsak';

case kode of
'1':hrgabuah:=8000;
'2':hrgabuah:=7000;
'3':hrgabuah:=15000;
'4':hrgabuah:=6000;
'5':hrgabuah:=11000;
end;

writeln('HARGA BUAH : Rp.',hrgabuah:0:0,'/KG');
write('JUMLAH BUAH : '); readln(jmlbuah);

if ((nmbuah='Anggur') and (jmlbuah >5)) then bonus:='Jam Dinding'
else if ((nmbuah='Apel') and (jmlbuah >5)) then bonus:='Baju Kaos'
else if ((nmbuah='Mangga') and (jmlbuah >5)) then bonus:='Jam Tangan'
else if ((nmbuah='Semangka') and (jmlbuah >5)) then bonus:='Payung'
else if ((nmbuah='Sirsak') and (jmlbuah >5)) then bonus:='Tas'
else bonus:='-';

writeln('KETERANGAN BONUS : ',bonus);

hasil:=hrgabuah*jmlbuah;

writeln('TOTAL HARGA : Rp.',hasil:0:0);

if ((hasil >50000) and (hasil <=100000)) then
begin
disc:=5/100*hasil;
ket:='(5%)';
end
else
begin
if hasil >100000 then
begin
disc:=10/100*hasil;
ket:='(10%)';
end;
end;

total:=hasil-disc;

write('UANG TUNAI : '); readln(uangpmbyrn);

uangkmbln:=uangpmbyrn-total;

clrscr;
writeln('====================================');
writeln(' "TOKO BUAH " ');
writeln('====================================');
writeln('NAMA PEMBELI : ',nmpmbli);
writeln('KODE BUAH : ',kode);
writeln('NAMA JENIS BUAH : ',nmbuah);
writeln('HARGA BUAH(/KG) : Rp.',hrgabuah:0:0);
writeln('JUMLAH PEMBELIAN : ',jmlbuah:0:0,'KG');
writeln('MENDAPATKAN DISKON : ',disc:0:0,' ',ket);
writeln('DAN BONUS PEMBELIAN: ',bonus);
writeln('TOTAL BAYAR ADALAH : Rp.',total:0:0);
writeln('UANG TUNAI : Rp.',uangpmbyrn:0:0);
writeln('UANG KEMBALIAN : Rp.',uangkmbln:0:0);
writeln('====================================');
writeln('Terimakasih Atas Kunjungan Anda');
writeln('Silahkan Datang Kembali..');
writeln('====================================');
writeln;
writeln;
writeln('Apakah Ingin Mengulang Program ?');
write('[Y/T] : '); readln(ul);
until upcase(ul)<>'Y';
end.

Perulangan di dalam perulangan.
Output contoh program ini , anda akan disuruh menginputkan jumlah perulangan awal kemudian jumlah sub perulangannya.

misalnya :
-saya menginputkan jumlah perulangan = 2
-dan menginputkan jumlah sub perulangan = 3

berikut screenshot output program :


dan script program :

program ulang;
uses crt;
var
           i,n,byk,sub:integer;
begin
            clrscr;
 write('Masukan jumlah perulangan = ');
            readln(byk);
            write('Masukan jumlah sub perulamgan = ');
 readln(sub);
 repeat
            n:=n+1;
            writeln;
            writeln(' ini perulangan ke ',n);
for i:= 1 to sub do
                        begin
                        writeln('  ini perulangan ke ',n,' yang ke ',i);
                        end;
until
            (n = byk);
            readkey;

end.

Seperti program di atas jika tanpa menggunakan perulangan bayangkan berapa banyak anda harus melakukan pengetikan, dengan adanya perulangan maka akan membantu dalam mempersingkat dan membuat simpel program yang dibuat.