0% menganggap dokumen ini bermanfaat (0 suara)
102 tayangan16 halaman

Pemrograman Diskon Toko Kecantikan

Program ini merangkum laporan tugas pemrograman yang membahas program array berdimensi satu, prosedur, searching, dan sorting untuk menghitung diskon, nominal bayar, dan jumlah transaksi penjualan masker selama satu bulan. Program menganalisis persoalan, mengidentifikasi data input dan output, membuat alur kerja menggunakan flowchart, dan mengkoding program dengan menggunakan prosedur dan searching untuk mencari data transaksi tertentu.

Diunggah oleh

Yessy AD
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
102 tayangan16 halaman

Pemrograman Diskon Toko Kecantikan

Program ini merangkum laporan tugas pemrograman yang membahas program array berdimensi satu, prosedur, searching, dan sorting untuk menghitung diskon, nominal bayar, dan jumlah transaksi penjualan masker selama satu bulan. Program menganalisis persoalan, mengidentifikasi data input dan output, membuat alur kerja menggunakan flowchart, dan mengkoding program dengan menggunakan prosedur dan searching untuk mencari data transaksi tertentu.

Diunggah oleh

Yessy AD
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd

LAPORAN

TUGAS PEMOGRAMAN
Program Array Berdimensi Satu, Prosedur, Searching, dan Sorting
Data pada Toko Kecantikan Wajah Alami Blora

Untuk Memenuhi Tugas Akhir Mata Kuliah Dasar Pemrograman 2


Dosen Pembimbing: Bp. Chambali, B. Eng, M. Komp

Disusun Oleh ;
Yessy Ambar Dewi
[Link].20
LT-2C

PROGRAM STUDI D3 TEKNIK LISTRIK


JURUSAN TEKNIK ELEKTRO
POLITEKNIK NEGERI SEMARANG
2019/2020
PROGRAM ARRAY BERDIMENSI

A. TAnalisa Persoalan
Untuk menghitung diskon yang didapatkan dan nominal yang harus dibayar oleh
pembeli Masker, serta menghitung jumlah transaksi dalam satu bulan.

B. Identifikasi Data
1. Data Input
a. Jumlah Transaksi (N)
b. Kode Masker (T)
c. Jumlah Masker (JUM)

2. Proses
a. Mencari harga
 Harga_satuan_1 = 0..100 maka HS = 25000
 Harga_satuan_2 = 101..200 maka HS = 20000
 Harga_satuan_3 = 201..300 maka HS = 15000
 Harga_satuan_4 = 301..400 maka HS = 10000
b. Menghitung diskon
 Diskon_1 = JUM > 5 maka DISKON = 0,05 * HS * JUM
 Diskon_2 = JUM < 5 maka DISKON = 0 * HS * JUM
 Diskon_3 = JUM = 5 maka DISKON = 0 * HS * JUM
c. Menghitung bayar
 Bayar_1 = BAYAR = HS * JUM – (0.05 * HS * JUM).
 Bayar_2 = BAYAR = HS * JUM – (0 * HS * JUM).
 Bayar_3 = BAYAR = HS * JUM – (0 * HS * JUM).
d. Menghitung jumlah Transaksi, TOTRANS = TOTRANS + BAYAR.
3. Data Output
a. Diskon (DISKON)
b. Bayar (BAYAR)
c. Jumlah Transaksi (TOTRANS)

C. Flowchar

Mulai

Input: N

TOTRANS = 0

FOR T = 1 TO N

INPUT: KODE BARANG


(T)

0..100 HARGA_SATUAN_1

101..200 HARGA_SATUAN_2
0

201..300 HARGA_SATUAN_3
0

C B
A
C A B

301..400 HARGA_SATUAN_4
0

END

INPUT: JUMLAH
BARANG (JUM(T))

JUM[T]>5 DISKON_1 BAYAR_1


:

JUM[T]<5 DISKON_2 BAYAR_2

JUM[T]=5 DISKON_3 BAYAR_3

END

FOR T:=1 TO (N-1) DO

FOR J:=(T+1) TO N DO

F D E
D
F E

KODE[T], HS[T], JUM[T],


DISKON[T],
KODE [T]
BAYAR[T]

END

END

TOTRANS = TOTRANS + BAYAR[T]

CETAK: DAFTAR TRANSAKSI PENJUALAN JILBAB

SALE 5% UNTUK PEMBELIAN JILBAB LEBIH DARI


5 ITEM

CETAK: DATE

CETAK: ‘NO’,’KODE’,’HARGA
SATUAN’,’JUMLAH’,’DISKON’,’BAYAR,

CETAK: CHR(179,180,191,192,193,

194,195,196,197,217,218)

G
G

FOR L = 1 TO 58

CETAK: GARIS HORIZONTAL


3X

END

FOR M = 1 TO 12

CETAK: GARIS VERTIKAL


6X

END

FOR C = 1 TO N

CETAK: C, KODE[C], HS[C],


JUM[C], DISKON [C], BAYAR[C]

END

FOR C = 1 TO N

CETAK: C, KODE[C], HS[C],


JUM[C], DISKON [C], BAYAR[C]

END

CETAK: TRANSFER

SELESAI
D. PROGRAM
PROGRAM PROCEDURE_TRANSAKSI_PENJUALAN_MASKER;
USES CRT;
CONST
D=0.05;
D1=0;
D2=0;
VAR
L,M,C,U:INTEGER;
DT:STRING[10];
TOTRANS:REAL;
S1,S2,S3,S4:REAL;
S:INTEGER;
J,T,N:BYTE;
BAYAR,DISKON,HS,JUM:ARRAY[1..10] OF REAL;
KODE:ARRAY[1..10] OF INTEGER;
PROCEDURE MENGHITUNG_DISKON_1;
BEGIN
DISKON[T]:=D*HS[T]*JUM[T];
WRITE('DISKON=RP',DISKON[T]:4:0);
DISKON[T]:=DISKON[T];
END;
PROCEDURE MENGHITUNG_DISKON_2;
BEGIN
DISKON[T]:=D*HS[T]*JUM[T];
WRITE('DISKON=RP',DISKON[T]:4:0);
DISKON[T]:=DISKON[T];
END;
PROCEDURE MENGHITUNG_DISKON_3;
BEGIN
DISKON[T]:=D*HS[T]*JUM[T];
WRITE('DISKON=RP',DISKON[T]:4:0);
DISKON[T]:=DISKON[T];
END;
PROCEDURE MENGHITUNG_BAYAR;
BEGIN
BAYAR[T]:=HS[T]*JUM[T]-(D*HS[T]*JUM[T]);
WRITE('BAYAR=RP',BAYAR[T]:4:0);
BAYAR[T]:=BAYAR[T];
END;
PROCEDURE MENGHITUNG_BAYAR_1;
BEGIN
BAYAR[T]:=HS[T]*JUM[T]-(D1*HS[T]*JUM[T]);
WRITE('BAYAR=RP',BAYAR[T]:4:0);
BAYAR[T]:=BAYAR[T];
END;
PROCEDURE MENGHITUNG_BAYAR_2;
BEGIN
BAYAR[T]:=HS[T]*JUM[T]-(D2*HS[T]*JUM[T]);
WRITE('BAYAR=RP',BAYAR[T]:4:0);
BAYAR[T]:=BAYAR[T];
END;
PROCEDURE MENCARI_HARGA_SATUAN_1;
BEGIN
HS[T]:=35000;
WRITE('HARGA SATUAN=RP',HS[T]:4:0);
HS[T]:=HS[T];
END;
PROCEDURE MENCARI_HARGA_SATUAN_2;
BEGIN
HS[T]:=30000;
WRITE('HARGA SATUAN=RP',HS[T]:4:0);
HS[T]:=HS[T];
END;
PROCEDURE MENCARI_HARGA_SATUAN_3;
BEGIN
HS[T]:=25000;
WRITE('HARGA SATUAN=RP',HS[T]:4:0);
HS[T]:=HS[T];
END;
PROCEDURE MENCARI_HARGA_SATUAN_4;
BEGIN
HS[T]:=20000;
WRITE('HARGA SATUAN=RP',HS[T]:4:0);
HS[T]:=HS[T];
END;
BEGIN
CLRSCR;
BEGIN
TOTRANS:=0;
WRITE('JUMLAH TRANSAKSI=');READLN(N);
END;
WRITE('DATE=');READLN(DT);
FOR T:=1 TO N DO
BEGIN
WRITE('');
TEXTCOLOR(BLUE);WRITE('KODE BARANG=');READLN(KODE[T]);
BEGIN
CASE KODE[T] OF
0..100:
MENCARI_HARGA_SATUAN_1;
101..200:
MENCARI_HARGA_SATUAN_2;
201..300:
MENCARI_HARGA_SATUAN_3;
302..400:
MENCARI_HARGA_SATUAN_4;
END;
WRITELN('');
WRITE('JUMLAH BARANG=');READLN(JUM[T]);
IF JUM[T]>5 THEN MENGHITUNG_DISKON_1;
IF JUM[T]<5 THEN MENGHITUNG_DISKON_2;
IF JUM[T]=5 THEN MENGHITUNG_DISKON_3;
WRITE('');
IF JUM[T]>5 THEN MENGHITUNG_BAYAR;
IF JUM[T]<5 THEN MENGHITUNG_BAYAR_1;
IF JUM[T]=5 THEN MENGHITUNG_BAYAR_2;
END;
WRITE('');
TOTRANS:=TOTRANS+BAYAR[T];
END;
FOR T:=1 TO (N-1) DO
BEGIN
FOR J:=(T+1) TO N DO
BEGIN
IF KODE[T]>KODE[J] THEN
BEGIN
S:=KODE[T];
KODE[T]:=KODE[J];
KODE[J]:=S;
S1:=HS[T];
HS[T]:=HS[J];
HS[J]:=S1;
S2:=JUM[T];
JUM[T]:=JUM[J];
JUM[J]:=S2;
S3:=DISKON[T];
DISKON[T]:=DISKON[J];
DISKON[J]:=S3;
S4:=BAYAR[T];
BAYAR[T]:=BAYAR[J];
BAYAR[J]:=S4;
END;
END;
END;
TEXTCOLOR(BLUE); WRITELN('TOTAL TRANSAKSI
RP',TOTRANS:4:0);
READLN;
CLRSCR;
BEGIN
GOTOXY(17,1); TEXTCOLOR(YELLOW);WRITE('DAFTAR
TRANSAKSI PENJUALAN MASKER');
GOTOXY(13,2); TEXTCOLOR(YELLOW);WRITE('SALE 5% UNTUK
PEMBELIAN LEBIH DARI 5 ITEM');
GOTOXY(7,4); TEXTCOLOR(GREEN);WRITE('DATE=',DT);
GOTOXY(7,6); TEXTCOLOR(GREEN);WRITE('NO');
GOTOXY(12,6); TEXTCOLOR(YELLOW);WRITE('KODE');
GOTOXY(19,6); TEXTCOLOR(GREEN);WRITE('HARGA
SATUAN');
GOTOXY(34,6); TEXTCOLOR(YELLOW);WRITE('JUMLAH');
GOTOXY(43,6); TEXTCOLOR(GREEN);WRITE('DISKON');
GOTOXY(54,6); TEXTCOLOR(YELLOW);WRITE('BAYAR');
GOTOXY(7,20); TEXTCOLOR(YELLOW);WRITE('TOTAL
TRANSAKSI');
END;
FOR L:=1 TO 58 DO
BEGIN
GOTOXY(L+4,5); TEXTCOLOR(YELLOW);WRITE (CHR(196));
END;
FOR M:=1 TO 15 DO
BEGIN
GOTOXY(5,M+4); TEXTCOLOR(GREEN);WRITE(CHR(179));
GOTOXY(10,M+4);WRITE(CHR(179));
GOTOXY(17,M+4);WRITE(CHR(179));
GOTOXY(32,M+4);WRITE(CHR(179));
GOTOXY(41,M+4);WRITE(CHR(179));
GOTOXY(51,M+4);WRITE(CHR(179));
GOTOXY(62,M+4);WRITE(CHR(179));
END;
GOTOXY(5,5);TEXTCOLOR(YELLOW);WRITE(CHR(218));
GOTOXY(10,5);WRITE(CHR(194));
GOTOXY(17,5);WRITE(CHR(194));
GOTOXY(32,5);WRITE(CHR(194));
GOTOXY(41,5);WRITE(CHR(194));
GOTOXY(51,5);WRITE(CHR(194));
GOTOXY(10,7);WRITE(CHR(197));
GOTOXY(17,7);WRITE(CHR(197));
GOTOXY(32,7);WRITE(CHR(197));
GOTOXY(41,7);WRITE(CHR(197));
GOTOXY(5,7);WRITE(CHR(195));
GOTOXY(51,7);WRITE(CHR(197));
GOTOXY(5,19);TEXTCOLOR(GREEN);WRITE(CHR(192));
GOTOXY(10,19);WRITE(CHR(193));
GOTOXY(17,19);WRITE(CHR(193));
GOTOXY(32,19);WRITE(CHR(193));
GOTOXY(41,19);WRITE(CHR(193));
GOTOXY(51,19);WRITE(CHR(193));
GOTOXY(62,5);TEXTCOLOR(YELLOW);WRITE(CHR(191));
GOTOXY(62,7);WRITE(CHR(180));
GOTOXY(61,19);TEXTCOLOR(GREEN);WRITE(CHR(217));
FOR C:=1 TO N DO
BEGIN
GOTOXY(7,C+7);TEXTCOLOR(YELLOW);WRITE('',C);
GOTOXY(12,C+7);WRITE('',KODE[C]:4);
GOTOXY(20,C+7);WRITE('RP',HS[C]:4:0);
GOTOXY(35,C+7);WRITE('',JUM[C]:3:0);
GOTOXY(43,C+7);WRITE('RP',DISKON[C]:4:0);
GOTOXY(24,20);WRITE('RP',TOTRANS:4:0);
GOTOXY(53,C+7);WRITE('RP',BAYAR[C]:4:0);
END;

WRITELN;
TEXTCOLOR(WHITE);
GOTOXY(7,21);WRITE('KODE YANG DICARI:'); READLN(U);
FOR T:=1 TO N DO
IF (U=KODE[T]) THEN
BEGIN
CLRSCR;
WRITELN('DATA YANG DICARI');
WRITELN('KODE= ',KODE[T]);
WRITELN('JUMLAH BARANG=',JUM[T]:10:0);
WRITELN('DISKON=',DISKON[T]:10:0);
WRITELN('TOTAL TRANSAKSI=',TOTRANS:10:0);
END;
READLN;
END.

E.

F. CODING
G. LAYOUT

Anda mungkin juga menyukai