Bissmillahirrahmanirrahim...
Assalamualaikum Warrahmatullahi Wabarokatuh...
Kali ini saya akan sedikit sharing soal tugas akhir Mata Kuliah Algoritma & Pemrograman (praktek) pada semester 2 kemarin. Kebetulan tugas yang kami buat adalah program perhitungan
harga pulsa yang di khususkan digunakan oleh kasir konter pulsa supaya dalam
hal pelayanan terhadap konsumen bisa lebih cepat, dan ke akuratan data bisa
dipertanggung jawabkan (Asyik, heheh).
Dalam program kami terdapat penggunaan :
- Struct
- Array
- Perulangan
- If
- Tabel
Dimana penggunaan struct kami gunakan untuk
mengelompokkan beberapa tipe variabel yang berlainan. Seperti berikut:
Dalam struct tersebut terdapat beberapa
variabel yang berlainan seperti karakter (char) dan Integer (int). Dan untuk
pemanggilan struct misalkan berupa nama konsumen. Maka penulisannya sebagai
berikut :
Juga sama halnya dengan Array, tetapi array hanya
bisa digunakan untuk variabel variabel yang memiliki kesamaan tipe data.
Misalkan tidak boleh ada float dan int secara bersamaan.
Sedangkan dalam perintah perulangan, kita tidak
menggunakan while ataupun do while, tetapi menggunakan for.Dikarenakan
penggunaan for lebih simple sehingga tidak membutuhkan penulisan program yang
terlalu panjang.
Dan untuk penggunaan perintah
“If” kita gunakan untuk menentukan harga pembayar pulsa dari sebuah nominal
pulsa. Misalkan seorang konsumen ingin membeli pulsa dengan nominal 5ribu, maka
untuk mengetahui nominal harga pulsa yang dibayarkan kita menggunakan perintah
if. Dan karena kebanyakan semua operator menggunakan harga yang sama, maka kita
tidak perlu untuk menspesifikasikan harga untuk masing masing operatornya,
hanya cukup dengan harga umum semua operator, dan untuk setiap harga kita telah
mengkonvert nya kedalam suatu kode, jadi misalkan untuk nominal 5b kita konvert
dengan kode A, untuk 10rb kita konvert ke kode B, Konvert tersebut bertujuan
agar ketika kita menginputkan data tidak terlalu lama, misalkan ketika kita
menginputkan data berupa nominal 100.000 maka kita terlalu banyak dalam segi
penginputan nya, tetapi ketika kita mengguanakan kode, kita hanya tinggal
memasukan kode nya saja. Contohnya untuk 100.000 kita hanya menginputkan kode
“E” dan hasilnya sama dengan ketika kita menginputkan 100.000, tetapi lebih
efisien. Untuk
penulisannya sebagai berikut :
Sedangakan untuk pembuatan
tabel secara otomatis kita menggunakan bantuan perulangan for, untuk memasukan
data tersebut kedalam tabel, dibantu dengan fungsi setw atau yang biasa disebut
sebagai fungsi manipulator layar yang digunakan untuk
mengatur lebar tampilan dilayar dari suatu nilai variable. Tetapi untuk memasukan fungsi tersebut kita harus
menggunakan header iomanip.h (#include<iomanip.h>)
Sehingga dengan menggunakan perintah perinta diatas
dapat menghasilkan program yang sesuai dengan keinginan kami. Dan berikut
tampilan program kami:
Dan berikut syntax lengkap program kami:
#include <iostream.h>
#include <conio.h>
#include <iomanip.h>
struct pulsa
{
char
noperator[50];
char
nnama[50];
char
nnominal[10];
int
nuntung[10];
int jm;
int i ;
};
void main ()
{
int jm,total=0;
int i;
char noperator[10];
char nnohp[15];
char nnominal[10] ;
int nbayar[10]={0};
;
pulsa pls;
cout<<"------ HOGWARTS CELL
-----"<<endl<<endl;
cout<<"Nama Konsumen :
";cin.getline(pls.nnama,15);
cout<<"Jumlah isi : ";cin>>jm;
cout<<endl;
clrscr();
for(i=1;i<=jm;i++)
{
cout<<"Pengisian
#"<<i<<endl<<endl;
cout <<"Masukan Nama Operator : ";cin>>noperator;
cout <<"Masukan Nomor HP : ";cin>>nnohp;
cout<<"+-------------+--------------+"<<endl;
cout<<"| NOMINAL
| KODE NOMINAL |"<<endl;
cout<<"+-------------+--------------+"<<endl;
cout<<"| Rp 5000 |
A |"<<endl;
cout<<"| Rp 10000 |
B |"<<endl;
cout<<"| Rp 25000 |
C |"<<endl;
cout<<"| Rp 50000 |
D |"<<endl;
cout<<"| Rp 100000 |
E |"<<endl;
cout<<"+-------------+--------------+"<<endl;
cout<<endl;
cout <<"Masukan Kode Nominal : ";cin>>nnominal[i];
cout<<endl;
clrscr();
if
(nnominal[i]=='A'|nnominal[i]=='a'){nbayar[i]=5500;}
else if
(nnominal[i]=='B'|nnominal[i]=='b'){nbayar[i]=11000;}
else if
(nnominal[i]=='C'|nnominal[i]=='c'){nbayar[i]=26000;}
else if
(nnominal[i]=='D'|nnominal[i]=='d'){nbayar[i]=49000;}
else if
(nnominal[i]=='E'|nnominal[i]=='e'){nbayar[i]=99000;}
}
cout<<"------ HOGWARTS CELL
-----"<<endl<<endl;
cout<<"Nama :
"<<pls.nnama;
cout<<endl<<endl;
cout<<"+----+---------+------+\n";
cout<<"| No | nominal |
bayar|\n";
cout<<"+----+---------+------+\n";
for(i=1;i<=jm;i++)
{
cout<<"|";cout<<setiosflags(ios::left)<<setw(4)<<i;
cout<<"|";cout<<setw(9)<<nnominal[i];
cout<<"|";cout<<setw(6)<<nbayar[i];
cout<<setw(7)<<"|";cout<<"\n";
}
cout<<"+----+---------+------+\n";
for(int i=1;i<=jm;i++){
total=total+nbayar[i];
}
cout<<"| Total
|"<<setiosflags(ios::left)<<setw(6)<<total;
cout<<"|"<<endl;
cout<<"+----+---------+------+\n";
cout<<endl;
int pbayar;
cout<<"masukan uang pembayaran :
";cin>>pbayar;
cout<<endl;
cout<<"kembalian : ";
if(pbayar<total){
cout<<"DUIT
KURANG !!!!";
}else{
cout<<(pbayar-total);
}
getch();
}
Oke, semoga bisa bermanfaat ya.
Wassalamualaikum Warrohmatullahi Wabarokatuh...
Komentar