Dengan menggunakan file master barang (msbrg.dat) dan file transaksi penjualan
(trjual.dat) akan ditampilkan informasi penjualan barang. Kedua file berupa file binary.
Setiap record barang terdiri dari field kode barang (5 karakter), nama barang (30 karakter),
kuantitas (int), dan harga jual (float). Setiap record penjualan terdiri dari field no faktur (7
karakter), tgl faktur (10 karakter), kode pelanggan (5 karakter), kode barang (5 karakter),
jumlah unit (int), dan harga unit (float). Tgl faktur disimpan dengan format yyyy-mm-dd,
misalnya tanggal 31 Januari 2005 disimpan dalam bentuk string 2005-01-31. Kedua file
dalam keadaan acak.
1
2
3
4
5
1
2
3
4
1234567890123456789012345678901234567890
INFORMASI PENJUALAN BARANG
Dari
tgl ? 99-99-9999
Sampai tgl ? 99-99-9999
Tampilkan informasi barang demi barang. Nama barang diambil dari file master barang. Tampilkan
total kuantitas dan total nilai untuk setiap barang yang terjual.
1
2
3
4
5
6
7
1
2
3
4
5
123456789012345678901234567890123456789012345678901234
INFORMASI PENJUALAN BARANG 99-99-9999 sampai 99-99-9999
Barang : xxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
No.
999
999
. .
999
Tgl
99-99-9999
99-99-9999
.
99-99-9999
Faktur
xxxxxxx
xxxxxxx
xxxxxxx
Total
22
5.
Qty
9999
9999
Harga
99999999
99999999
Nilai
999999999
999999999
9999
99999999
999999999
---------------------------99999
9999999999
BINA NUSANTARA
Nama
Maruli Simarmata
Sablin Yusuf
Firdaus Alamsjah
Aini Waliyah
Feteriadi Thoe
I Made Karmawan
Meike Kotalawata
Januar Wahjudi
Obert Awuy
Suharjito Diningrat
Shirley Hielsen
Dindin Muhibudin
Ahmad Subagja
NIM
0900300525
0900300702
0900300180
0900300821
0900300104
0900300365
0900300648
0900300206
0900300247
0900300444
0900300789
0900300907
0900300430
IPK
2.57
2.55
2.93
3.74
3.46
2.17
2.20
2.60
3.86
3.57
3.43
2.38
2.82
Buatlah program dengan algoritma interpolation search terhadap kumpulan data ini
[0]
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
[10]
[11]
[12]
Nama
Maruli Simarmata
Sablin Yusuf
Firdaus Alamsjah
Aini Waliyah
Feteriadi Thoe
I Made Karmawan
Meike Kotalawata
Januar Wahjudi
Obert Awuy
Suharjito Diningrat
Shirley Hielsen
Dindin Muhibudin
Ahmad Subagja
NIM
0900300525
0900300702
0900300180
0900300821
0900300104
0900300365
0900300648
0900300206
0900300247
0900300444
0900300789
0900300907
0900300430
IPK
2.57
2.55
2.93
3.74
3.46
2.17
2.20
2.60
3.86
3.57
3.43
2.38
2.82
BINA NUSANTARA
Jawab :
1. Program dengan fungsi template untuk mencari dan menampilkan data terbesar dan data
terkecil dari sekelompok data yang diinputkan oleh user
#include <iostream>
#include <conio.h>
using namespace std;
int mx,mn;
int nilai[3];
int input();
void tampil();
template <class T> void maxMin(T *nilai,int tipe);
int main()
{
input();
getch();
}
int input(){
int i;
int nilai[3];
cout<<"Masukkan tiga bilangan"<<endl;
for(i=0;i<3;i++){
cout << "Masukkan bilangan ke-" << i+1 << " : ";
cin >> nilai[i];
}
maxMin(nilai,0);
maxMin(nilai,1);
}
template <class T> void maxMin(T *nilai, int tipe){
int i, j;
T temp;
if (tipe==0){
for (i=1; i<3; i++){
temp = nilai[i];
for (j=i-1; (j>=0) && (nilai[j]<temp); j--)
nilai[j+1]=nilai[j];
nilai[j+1]=temp;
}
mx=nilai[0];
cout<<"max="<<mx<<endl;
}else if (tipe=1){
for (i=1; i<3; i++){
temp = nilai[i];
for (j=i-1; (j>=0) && (nilai[j]>temp); j--)
nilai[j+1]=nilai[j];
nilai[j+1]=temp;
}
mn=nilai[0];
cout<<"min="<<mn<<endl;
}
}
BINA NUSANTARA
j--;
}
cout<<"Hasil Pengurutan:"<<endl;
for (x=0; x<3; x++){
cout<<nilai2[x]<<" ";
}
3. Program dengan class template untuk merepresentasikan obyek matrix yang mempunyai
operasi tambah, kurang kali dan transpose matrix
#include <iostream>
#include<stdio.h>
#include<conio.h>
#include <iomanip>
#define ROW 3
#define COL 3
using namespace std;
template <class T>
T Matriks (T x[3][3], T y[3][3], T a, T b)
{
int i, j, k;
int z[3][3];
//Operasi Perkalian Matrix
BINA NUSANTARA
BINA NUSANTARA
BINA NUSANTARA
4. Program
5. Interpolation search
[0]
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
[10]
[11]
[12]
Nama
Feteriadi Thoe
Firdaus Alamsjah
Januar Wahjudi
Obert Awuy
I Made Karmawan
Ahmad Subagja
Suharjito Diningrat
Maruli Simarmata
Meike Kotalawata
Sablin Yusuf
Shirley Hielsen
Aini Waliyah
Dindin Muhibudin
NIM
0900300104
0900300180
0900300206
0900300247
0900300365
0900300430
0900300444
0900300525
0900300648
0900300702
0900300789
0900300821
0900300907
IPK
3.46
2.93
2.60
3.86
2.17
2.82
3.57
2.57
2.20
2.55
3.43
3.74
2.38
BINA NUSANTARA
BINA NUSANTARA