Fungsi Terbilang Dalam Rupiah (Visual Basic)

Public Function Terbilang(Angka As Double) As String Dim strJmlHuruf$, intPecahan As Integer, strPecahan$, Urai$, Bill$, strTot$, Bil2$ Dim X As Integer, Y As Integer, z As Integer Dim Bil1 As String If IsNull(Angka) Then Terbilang = "" Exit Function ElseIf Angka = 0 Then Terbilang = " NOL RUPIAH" Exit Function ElseIf Angka < 0 Then Terbilang = "MINUS " & Terbilang(Abs(Angka)) Exit Function End If strJmlHuruf = LTrim(CStr(Angka)) intPecahan = Val(Mid(CStr(Round(Angka - Int(Angka), 2)), 3, 2)) If (intPecahan = 0) Then strPecahan = "" Else strPecahan = LTrim(Str(intPecahan)) + "/100 " strJmlHuruf = LTrim(CStr(Int(Angka))) End If X = 0 Y = 0 Urai = "" While (X < Len(strJmlHuruf)) Bil1 = "" Bil2 = "" X = X + 1 strTot = Mid(strJmlHuruf, X, 1) Y = Y + Val(strTot) z = Len(strJmlHuruf) - X + 1 Select Case Val(strTot) Case 1 If (z = 1 Or z = 7 Or z = 10 Or z = 13) Then

Soal Dan Jawaban Final Algoritma

Soal :

 Buatlah program Nota Penjualan barang dengan ketentuan:
  • Nama dan Alamat pembeli diinput
  • Nama, Harga satuan dan jumlah barang diinput
  • Jika Nama barang yang diinput adalah x maka otomatis program berhenti menginput dan langsung megeluarkan nota pembelian baran
  • tampilkan total harga masing2 barang
  • tampilkan total harga keseluruhan
  • diskon dibuat dalam bentu fungsi dengan ketentuan
  1. =>5000000 -5%
  2. 2jt-5jt -3%
  3. 1jt-2jt 2%
  4. <1jt 0%
  • Total bayar =total harga - diskon
 Jawaban:
 uses crt;
function Diskon(TH:double):double;
begin
    if TH >= 5000000 then
      Diskon := TH * 5 /100
    else if TH >= 2000000 then
      Diskon := TH * 3 /100
    else if TH >= 1000000 then
      Diskon := TH * 2 /100
    else
       Diskon := 0;
end;
var
nama: string[25];
alamat: string[50];
nabar : array [1..20] of string[30];
HSatuan, subtot : array[1..20] of double;
jmlBeli: array [1..20] of byte;
id,jBrg : byte;
TotHar, totbay: double;
begin
clrscr;
write('Nama/Toko Pembeli : ' );readln(Nama);
write('Alamat : ' );readln(Alamat);
 id:=1;

  write('Masukkan Nama Barang [x untuk berhenti] : ' );readln(Nabar[id]);
  while nabar[id] <> 'x' do
  begin
    write('Harga satuan : ' );readln(HSatuan[id]);
    write('Jumlah Beli : ' );readln(jmlBeli[id]);
    i:=i+1;
    write('Masukkan Nama Barang [x untuk berhenti] : ' );readln(Nabar[id]);
  end;
jBrg:=i-1;
clrscr;
Writeln('                            NOTA PEMBELIAN');
Writeln('Tuan/Toko : ',Nama);
Writeln('Alamat : ',alamat);
Writeln('---------------------------------------------------------------------');
Writeln('|Item|Nama Barang      |Harga Satuan |Jumlah beli|Sub Total         |');
Writeln('---------------------------------------------------------------------');
        {1234567890123456789012345678901234567890123456789012345678901234567890}
for id:= 1 to jBarang do
begin
Gotoxy(1,id+6); write('|',id:2);
Gotoxy(6,id+6); write('| ',Nabar[id]);
Gotoxy(24,id+6); write('| Rp. ',HSatuan[id]:9);
Gotoxy(38,id+6); write('| ',JmlBeli[id]:3);
SubTot[id]:=jmlBeli[id]*HSatuan[id];
Gotoxy(50,id+6); write('| Rp. ',Subtotal[id]:9);
Gotoxy(69,id+6); write('|');
TotHar:=TotHar+SubTot[id];
end;
writeln;
Writeln('---------------------------------------------------------------------');
Writeln('|Total Harga                                      | Rp. ', TotHar:9,'|');
Writeln('|Diskon                                           | Rp. ', Diskon(Tothar):9,'|');
TotBay:=TotHar-Diskon(tothar);
Writeln('|Total Bayar                                      | Rp. ', TotBay:9,'|');
Writeln('---------------------------------------------------------------------');
end;
readln;
end.

       

Komentar

Postingan populer dari blog ini

Looping /Perulangan

Fungsi Terbilang Dalam Rupiah (Visual Basic)