Assalaamu'alaykum Waromatulloh...
Alhamdulillah, Alloh masih memberikan kesempatan kepada kita untuk terus belajar dan berbagi dalam kebaikan..
Pada
kesempatan kali ini, saya akan sedikit berbagi tentang bahasa
pemrograman C++. Saya akan berbagi bagaimana membuat program perhitungan
zakat. Tugas ini adalah tugas akhir saya di semester 4 di Pendidikan Teknik Elektro Universitas Negeri Malang bersama salah satu teman saya.
Semoga bermanfaat :)
-------------------------------------------------------------------------------------------------------------------------
// File-file header
#include <iostream.h>
#include <stdio.h>
#include <conio.h>
#include <string.h>
// Prototipe fungsi
void tampilan();
void pilih();
void pengenalan_zakat();
void program_zakat();
void judul();
void menu();
void akhir();
// Prototipe fungsi zakat mal
void zakat_emas();
void zakat_perak();
void zakat_uang_kertas();
void zakat_pertanian();
void zakat_perniagaan();
// Fungsi bintang untuk penghias
void bintang()
{
int a;
for(a=1;a<50;a++)
cout<<"*";
}
// Struktur data untuk nama pengguna
struct
{
char A [40]; //array nama pengguna
char B [40]; //array pekerjaan pengguna
}user;
// Fungsi main
int main()
{
system("color 0D");
cout<<endl;
cout<<"##====================================================================##"<<endl;
cout<<"## *** *** ******* *** *** ******* *** ******* ##"<<endl;
cout<<"## ** ** ** ** ** ** ** ** ** ** ** ** ** ** ##"<<endl;
cout<<"## ** ** ** ** ** ** ** ** ** ** * ******* ##"<<endl;
cout<<"## ** ** ** ** ** ** ** ** ** ##"<<endl;
cout<<"## ** ** ******* ** ** ******* ******* ##"<<endl;
cout<<"##====================================================================##"<<endl;
cout<<endl;
cout<<" Chek It Out!!!!!! "<<endl;
cout<<endl;
getch();
tampilan();
}
// Fungsi tampilanh
void tampilan()
{
system("cls");
system("color 1E");
cout<<endl;
cout<<"____________________________________________________________\a\a"<<endl;
cout<<endl;
cout<<" == ======= ======== ======== ========= ======= "<<endl;
cout<<" == == == == == == ======== == == "<<endl;
cout<<" == == == == == == == "<<endl;
cout<<" == == ======== == ========= == "<<endl;
cout<<" == == == == == == "<<endl;
cout<<" == == == == == == "<<endl;
cout<<" ==== ======== == == ========= ======= "<<endl;
cout<<endl;
cout<<"____________________________________________________________"<<endl;
cout<<endl;
cout<<" Design by : "<<endl;
cout<<" Monika Faswia Fahmi 120534400670 "<<endl;
cout<<" Mona Andriana 120534431436 "<<endl;
cout<<"____________________________________________________________"<<endl;
cout<<endl;
cout<<"============================================================"<<endl;
cout<<endl;
cout<<" PROGRAM FOR ZAKAT "<<endl;
cout<<endl;
cout<<"============================================================"<<endl;
cout<<" STATE UNIVERSITY OF MALANG "<<endl;
getch();
pilih();
}
// Fungsi pilih
void pilih()
{
int a;
system("cls");
system("color 4E");
bintang();
cout<<endl;
cout<<"\t ## MENU PILIHAN ##"<<endl;
bintang();
cout<<endl;
cout<<endl;
cout<<"\t ##====================================## "<<endl;
cout<<"\t ## [1] Pengenalan Zakat ## "<<endl;
cout<<"\t ## [2] Program Zakat ## "<<endl;
cout<<"\t ## [3] Exit ## "<<endl;
cout<<"\t ##====================================## "<<endl;
cout<<endl;
masuk:
cout<<"Masukkan pilihan anda=";
cin>>a;
if (!(cin.good()))
{
cout<<" Masukkan Harus Numerik !\n";
cin.clear();
cin.ignore(INT_MAX,'\n');
goto masuk;
}
switch (a)
{
case 1:
cout<<endl;
pengenalan_zakat();
break;
case 2:
program_zakat();
break;
case 3:
akhir();
break;
default :
cout<<endl;
cout<<"Maaf kode yang anda masukkan salah"<<endl;
cout<<"Mohon Ulang Kembali"<<endl;
getch ();
pilih();
break;
}
}
// Fungsi pengenalan zakat
void pengenalan_zakat()
{
int x;
char huruf;
do
{
system("cls");
system("color 0E");
cout<<endl;
bintang();
cout<<endl;
cout<<"\t ====ATTENTION==== "<<endl;
bintang();
cout<<endl;
cout<<endl;
cout<<"##==============================================##"<<endl;
cout<<"## Sebelum anda memulai program zakat hendaklah ##"<<endl;
cout<<"## memilih menu berikut ini : ##"<<endl;
cout<<"##==============================================##"<<endl;
cout<<"## 1.Pengertian zakat ##"<<endl;
cout<<"## 2.Macam-macam zakat ##"<<endl;
cout<<"## 3.Syarat-syarat pengeluaran zakat ##"<<endl;
cout<<"## 4.Perhitungan jumlah zakat ##"<<endl;
cout<<"## 5.Orang yang tidak berhak menerima zakat ##"<<endl;
cout<<"## 6.Orang yang berhak menerima zakat ##"<<endl;
cout<<"## 7.Menu Utama ##"<<endl;
cout<<"##==============================================##"<<endl;
masuk1:
cout<<"\tPilihan menu :"; cin>>x;
if (!(cin.good()))
{
cout<<" Masukkan Harus Numerik !\n";
cin.clear();
cin.ignore(INT_MAX,'\n');
goto masuk1;
}
switch (x)
{
case 1 :
system("cls");
system("color 5A");
cout<<endl;
bintang();
cout<<endl;
cout<<"\t ==PENGERTIAN ZAKAT== "<<endl;
bintang();
cout<<endl;
cout<<endl;
cout<<"Bahasa : berkembang,suci dan berkah "<<endl;
cout<<"Istilah : bagian yang telah ditetapkan pada "<<endl;
cout<<" harta tertentu, waktu tertentu,yang "<<endl;
cout<<" diserahkan pada pihak-pihak tertentu pula "<<endl;
cout<<endl;
break;
case 2 :
system("cls");
system("color 6E");
cout<<endl;
bintang();
cout<<endl;
cout<<" ==MACAM-MACAM ZAKAT== "<<endl;
bintang();
cout<<endl;
cout<<endl;
cout<<"1) Zakat Mal :Zakat yang berupa harta benda kekayaan"<<endl;
cout<<" Macamnya :a.Zakat emas "<<endl;
cout<<" b.Zakat perak "<<endl;
cout<<" c.Zakat uang kertas "<<endl;
cout<<" d.Zakat pertanian "<<endl;
cout<<" e.Zakat perniagaan "<<endl;
cout<<endl;
cout<<"2) Zakat Fitrah :Zakat yang berupa bahan kebutuhan "<<endl;
cout<<" pokok seperti beras,gandum, dll. "<<endl;
cout<<endl;
break;
case 3 :
system("cls");
system("color 1D");
cout<<endl;
bintang();
cout<<endl;
cout<<" ==SYARAT PENGELUARAN ZAKAT== "<<endl;
bintang();
cout<<endl;
cout<<endl;
cout<<"Syarat wajib : 1.Merdeka "<<endl;
cout<<" 2.Islam "<<endl;
cout<<" 3.Berakal sehat "<<endl;
cout<<"Syarat pada zakat mal : "<<endl;
cout<<" 1.Milik Penuh "<<endl;
cout<<" 2.Berkembang "<<endl;
cout<<" 3.Sudah mencapai nishab (batas pengeluaran zakat) "<<endl;
cout<<" 4.Lebih Dari Kebutuhan Pokok "<<endl;
cout<<" 5.Bebas dari Hutang "<<endl;
cout<<" 6.Berlalu Satu Tahun (Al-Haul), khusus untuk harta perniagaan"<<endl;
break;
case 4 :
system("cls");
system("color 2F");
cout<<endl;
bintang();
cout<<endl;
cout<<" ==PERHITUNGAN JUMLAH ZAKAT=="<<endl;
bintang();
cout<<endl;
cout<<endl;
cout<<"1. Zakat emas : a. Nishab emas : 85 gram"<<endl;
cout<<" b. pengeluaran : 2,5% dari emas "<<endl;
cout<<" milik sendiri "<<endl;
cout<<endl;
cout<<"2. Zakat perak: a. Nishab perak: 85 gram"<<endl;
cout<<" b. pengeluaran : 2,5% dari perak"<<endl;
cout<<" milik sendiri "<<endl;
cout<<endl;
cout<<"3. Zakat uang kertas : a. Nishab : harga emas (1 gr) x 85 gr"<<endl;
cout<<" b. pengeluaran : 2,5% dari uang milik"<<endl;
cout<<" sendiri "<<endl;
cout<<endl;
cout<<"4. Zakat hasil pertanian : a. Nishab : 647 kg"<<endl;
cout<<" b. pengeluaran : 10 % dari hasil "<<endl;
cout<<" pertanian "<<endl;
cout<<endl;
cout<<"5. Zakat hasil perniagaan : a. Nishab : harga emas(1 gr) x 85 gr"<<endl;
cout<<" b. pengeluaran : 2,5% dari hasil "<<endl;
cout<<" perniagaan "<<endl;
cout<<endl;
cout<<"6. Zakat Fitrah : a. Nishab : Beberapa Ulama berpendapat"<<endl;
cout<<" 2,5 Kg dan 2,75 Kg"<<endl;
cout<<" b. pengeluaran : 2,5 Kg atau 2,75 Kg"<<endl;
cout<<endl;
break;
case 5 :
system("cls");
system("color 0B");
cout<<endl;
bintang();
cout<<endl;
cout<<" ==ORANG YANG TIDAK BERHAK MENERIMA ZAKAT== "<<endl;
bintang();
cout<<endl;
cout<<endl;
cout<<"1. Orang kaya dan orang yang masih memiliki tenaga "<<endl;
cout<<"2. Hamba sahaya yang masih mendapat nafkah atau tanggungan dari tuannya "<<endl;
cout<<"3. Keturunan Rasulullah (ahlul bait)"<<endl;
cout<<"4. Orang yang dalam tanggungan dari orang yang berzakat, misalnya anak dan istri."<<endl;
cout<<endl;
break;
case 6 :
system("cls");
system("color 0B");
cout<<endl;
bintang();
cout<<endl;
cout<<" ==ORANG YANG BERHAK MENERIMA ZAKAT== "<<endl;
bintang();
cout<<endl;
cout<<endl;
cout<<"1.FAKIR = Mereka yang hampir tidak memiliki apa-apa sehingga "<<endl;
cout<<" tidak mampu memenuhi kebutuhan pokok hidup "<<endl;
cout<<"2.MISKIN = Mereka yang memiliki harta namun tidak cukup untuk "<<endl;
cout<<" memenuhi kebutuhan dasar untuk hidup "<<endl;
cout<<"3.AMIL = Mereka yang mengumpulkan dan membagikan zakat "<<endl;
cout<<"4.GHARIMIN = Mereka yang berhutang untuk kebutuhan yang halal "<<endl;
cout<<" dan tidak sanggup untuk memenuhinya "<<endl;
cout<<"5.FISABILILLAH = Mereka yang berjuang di jalan Allah "<<endl;
cout<<" (misal: dakwah, perang dsb) "<<endl;
cout<<"6.IBNUS SABIL = Mereka yang kehabisan biaya di perjalanan "<<endl;
cout<<"7.MUALLAF = Mereka yang baru masuk Islam dan membutuhkan "<<endl;
cout<<" bantuan untuk menyesuaikan diri dengan keadaan barunya"<<endl;
cout<<"8.HAMBA SAHAYA = Orang yang ingin memerdekakan dirinya "<<endl;
cout<<endl;
break;
case 7 :
pilih();
break;
default:
cout<<endl;
cout<<"Kode yang anda masukkan salah"<<endl;
cout<<"Mohon Ulang Kembali";
getch ();
pengenalan_zakat();
break;
}
balik:
cout<<"Apakah anda ingin kembali ke pengenalan zakat(y/t):"<<endl;
cin>>huruf;
if (!(huruf=='y'||huruf=='Y'||huruf=='t'||huruf=='T'))
{
cout<<"Masukkan salah\n";
goto balik;
}
}
while (huruf=='y'||huruf=='Y');
pilih();
}
// Fungsi program zakat
void program_zakat()
{
char ulang ;
do
{
judul();
getch();
menu ();
cout<<endl;
cout<<"________________terima kasih__________________\n";
getch();
balik1:
cout<<endl;
cout<<"apakah anda ingin mengulang ? <y/t>";
cin>>ulang;
if (!(ulang=='y'||ulang=='Y'||ulang=='t'||ulang=='T'))
{
cout<<"Masukkan salah\n";
goto balik1;
}
}
while (ulang=='y'||ulang=='Y');
pilih();
}
// Fungsi judul
void judul()
{
system("cls");
system("color 2F");
cout<<"=============================================\a"<<endl;
cout<<endl;
cout<<" PROGRAM PERHITUNGAN ZAKAT MAL "<<endl;
cout<<endl;
cout<<"============================================="<<endl;
cout<<endl;
cout<<"============================================="<<endl;
cout<<"Ambillah zakat dari harta mereka,dengan zakat"<<endl;
cout<<" itu kamu membersihkan dan mensucikan mereka "<<endl;
cout<<" (At-Taubah : 103) "<<endl;
cout<<"============================================="<<endl;
cout<<endl;
getch();
}
// Fungsi menu
void menu()
{
int a;
char tmp[1];
system("cls");
system("color 3A");
gets(tmp);
cout<<"Masukkan Nama Anda :";
gets(user.A);
cout<<"Masukkan Pekerjaan Anda :";
gets(user.B);
cout<<endl;
cout<<"=============================================\a"<<endl;
cout<<" PILIHAN MENU PERHITUNGAN ZAKAT "<<endl;
cout<<"============================================="<<endl;
cout<<endl;
cout<<" 1. ZAKAT EMAS "<<endl;
cout<<" 2. ZAKAT PERAK "<<endl;
cout<<" 3. ZAKAT UANG KERTAS "<<endl;
cout<<" 4. ZAKAT PERTANIAN "<<endl;
cout<<" 5. ZAKAT PERNIAGAAN "<<endl;
cout<<" 6. Menu Utama "<<endl;
cout<<endl;
cout<<"============================================="<<endl;
masuk2:
cout<<"Pilihan menu anda =";
cin>>a;
if (!(cin.good()))
{
cout<<" Masukkan Harus Numerik !\n";
cin.clear();
cin.ignore(INT_MAX,'\n');
goto masuk2;
}
switch (a)
{
case 1 :
zakat_emas ();
break;
case 2 :
zakat_perak ();
break;
case 3 :
zakat_uang_kertas ();
break;
case 4 :
zakat_pertanian ();
break;
case 5 :
zakat_perniagaan ();
break;
case 6 :
pilih();
default :
cout<<"KODE YANG ANDA MASUKKAN SALAH"<<endl;
cout<<"Mohon Ulang Kembali";
cout<<endl;
getch ();
menu ();
break;
}
}
// Fungsi zakat emas
void zakat_emas ()
{
double n,ze;
cout<<endl;
cout<<"Nishab Zakat Emas : 85 gram "<<endl;
cout<<"Masukkan berat emas dalam 1 tahun (dalam gram) : ";
cin>>n;
if (n>=85)
{
cout<<endl;
bintang();
cout<<endl;
cout<<"\tANDA SUDAH BISA ZAKAT"<<endl;
bintang();
cout<<endl;
ze=0.025*n;
cout<<endl;
cout<<"Zakat emas yang bisa anda keluarkan adalah "<<ze<<" gram"<<endl;
}
else if (n<85)
{
cout<<endl;
cout<<"\tANDA BELUM BISA MENGELUARKAN ZAKAT "<<endl;
cout<<"\t KARENA BELUM MEMENUHI NISHAB "<<endl;
}
}
// Fungsi zakat perak
void zakat_perak ()
{
double n,zp;
cout<<endl;
cout<<"Nishab Zakat Perak : 85 gram"<<endl;
cout<<"Masukkan berat perak dalam 1 tahun (dalam gram) : ";
cin>>n;
if (n>=85)
{
cout<<endl;
bintang();
cout<<endl;
cout<<"\tANDA SUDAH BISA ZAKAT"<<endl;
bintang();
cout<<endl;
zp=0.025*n;
cout<<endl;
cout<<"Zakat perak yang bisa anda keluarkan adalah "<<zp<<" gram"<<endl;
}
else if (n<85)
{
cout<<endl;
cout<<"tANDA BELUM BISA MENGELUARKAN ZAKAT "<<endl;
cout<<"t KARENA BELUM MEMENUHI NISHAB "<<endl;
}
}
// Fungsi zakat uang kertas
void zakat_uang_kertas ()
{
double n, re, rp, zuk;
cout<<endl;
cout<<"Nishab Zakat Uang Kertas = Nishab Emas(sesuai harga emas) "<<endl;
cout<<"Masukkan harga emas 1 gram : Rp.";
cin>>re;
cout<<"Masukkan jumlah uang anda dalam 1 tahun (dalam gram) : Rp. ";
cin>>rp;
n=0.85*re;
if (rp>=n)
{
cout<<endl;
bintang();
cout<<endl;
cout<<"\tANDA SUDAH BISA ZAKAT"<<endl;
bintang();
cout<<endl;
zuk=0.025*rp;
cout<<endl;
cout<<"Zakat uang kertas yang anda keluarkan adalah Rp."<<zuk<<endl;
}
else if(rp<n)
{
cout<<endl;
cout<<"\tANDA BELUM BISA MENGELUARKAN ZAKAT"<<endl;
cout<<"\t KARENA BELUM MEMENUHI NISHAB "<<endl;
}
}
// Fumgsi zakat pertanian
void zakat_pertanian ()
{
double n,kg,zp;
cout<<endl;
cout<<"Nishab Zakat Hasil Pertanian : 5 wasaq(647 kg)"<<endl;
cout<<"Masukkan jumlah hasil pertanian(dalam kg) : ";
cin>>kg;
n=647;
if(kg>=n)
{
cout<<endl;
bintang();
cout<<endl;
cout<<"\tANDA SUDAH BISA ZAKAT"<<endl;
bintang();
cout<<endl;
zp=kg*0.1;
cout<<endl;
cout<<"Zakat hasil pertanian yang anda keluarkan adalah "<<zp<<" kg"<<endl;
}
else if(kg<n)
{
cout<<endl;
cout<<"\tANDA BELUM BISA MENGELUARKAN ZAKAT"<<endl;
cout<<"\t KARENA BELUM MEMENUHI NISHAB "<<endl;
}
}
// Fungsi zakat perniagaan
void zakat_perniagaan ()
{
double n, re, rp,zpr;
cout<<endl;
cout<<"Nishab Zakat Hasil Perniagaan = Nishab Emas(sesuai harga emas) "<<endl;
cout<<"Masukkan harga emas 1 gram :Rp.";
cin>>re;
cout<<"Masukkan jumlah uang anda :Rp. ";
cin>>rp;
n=0.85*re;
if (rp>=n)
{
cout<<endl;
bintang();
cout<<endl;
cout<<"\tANDA SUDAH BISA ZAKAT"<<endl;
bintang();
cout<<endl;
zpr=0.025*rp;
cout<<endl;
cout<<"Zakat hasil perniagaan yang anda keluarkan adalah Rp."<<zpr<<endl;
}
else if(rp<n)
{
cout<<endl;
cout<<"\tANDA BELUM BISA MENGELUARKAN ZAKAT"<<endl;
cout<<"\t KARENA BELUM MEMENUHI NISHAB "<<endl;
}
}
// Fungsi akhir
void akhir()
{
char *word1="|||| MATUR ||||";
char *word2="|||| NUWUN!!! ||||";
getch();
system("cls");
system("color 0C");
cout<<endl;
cout<<"\t\t||||=======================||||\a\a\a"<<endl;
cout<<"\t\t "<<word1<<endl;
cout<<endl;
cout<<"\t\t "<<word2<<endl;
cout<<"\t\t||||=======================||||"<<endl;
}
Tidak ada komentar:
Posting Komentar