Membuat Aplikasi Inventaris Sederhana dengan C++


Minggu lalu saya sudah membahas Cara Membuat Aplikasi Kasir Restoran dengan C++. Sekarang saya akan membahas Membuat Aplikasi Inventaris Sederhana dengan C++. Disini saya tetap menggunakan aplikasi MinGw Developer Studio. Langsung saja kita bahas sama-sama ^_^

Peratama kalian buat project dengan cara klik File => New.. Lalu pilih Win32 Console Application pada tab Projects. Dan isi pada bagian Project name: dengan nama Project yang ingin dibuat, misalnya Inventaris. Dibagian Location: kalian biarkan default saja. Kemudian pilih OK.


Setelah selesai membuat project.. Pada bagian FileView yang ada pada sisi kiri Window, kalian buat Source Files baru. Dengan cara klik Source Files nya lalu kalian klik File => New.. Lalu pilih C/C++ Source File pada tab Files. Dan isi pada bagian File Name: dengan nama File C++ yang ingin dibuat, misalnya main. Dibagian Location: kalian biarkan default saja. Dan ceklis pada box Add to project. Kemudian pilih OK.


Jika sudah semua nya, maka akan terlihat seperti ini.


Sekarang mulai kebagian coding nya.. Disetiap baris kode sudah saya berikan komentar tentang penjelasan kode tersebut.


#include <iostream.h>
/* Header file yang digunakan untuk menggunakan perintah
   cin, cout, endl. */

int main(){
/* Fungsi utama atau main program yang akan dibuat. */
 main:
 /* Label yang digunakan untuk melompat dari baris yang diinginkan. */
 cout<<endl;
 /* Membuat baris baru */
 char hardware [100][100];
 /* Untuk menampung data hardware yang akan dimasukkan.
    - Arti [100] adalah banyak nya jumlah data yang bisa ditampung.
   Ditulis dua kali, jika setiap yang dimasukkan jumlah kata nya haya satu.
      Jika jumlah kata yang ingin dimasukkan adalah dua, maka ditulis tiga kali.
      Karena setiap kali kita memasukkan kata, maka akan ada spasi yang akan dimasukkan dikata berikutnya. */
 char type [100][100];
 /* Untuk menampung data type yang akan dimasukkan. */
 char sn [100][100];
 /* Untuk menampung data sn yang akan dimasukkan. */
 char pn [100][100];
 /* Untuk menampung data pn yang akan dimasukkan. */
 int jumlah, i;
 /* Deklarasi variable jumlah dan variable i. */
 
 cout<<"Masukkan jumlah Hardware yang ingin di inventaris : ";
 /* Menampilkan tulisan "Masukkan jumlah Hardware yang ingin di inventaris : " */
 cin>>jumlah;
 /* /* Meminta inputan user untuk variable jumlah. */
 cout<<endl;
 /* Membuat baris baru. */
 
 if(!(cin.fail())){
 /* Melakukan pengecekan jika inputan yang diberi tidak sesuai perintah. */
  for(i=0;i<jumlah;i++){
   /* Membuat perulangan meminta jenis hardware, type hardware, sn hardware, pn hardware yang akan di inventaris. */
   cout<<"Masukkan jenis Hardware Ke-"<<i+1<<" : ";
   /* Menampilkan tulisan "Masukkan jenis Hardware Ke-(Berdasarkan urutan hardware) :" */
   cin>>hardware[i];
   /* Meminta inputan user untuk ditampung pada array hardware. */
   cout<<endl;
   /* Membuat baris baru. */
   cin.clear();
   /* Menghapus kembali hasil inputan. */
   cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
   /* Untuk melakukan ignore terhadap newline \n agar tidak masuk kedalam input berikut nya. */
   cout<<"Masukkan type Hardware : ";
   /* Menampilkan tulisan "Masukkan type Hardware : " */
   cin>>type[i];
   /* Meminta inputan user untuk ditampung pada array type. */
   cout<<endl;
   /* Membuat baris baru. */
   cin.clear();
   /* Menghapus kembali hasil inputan. */
   cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
   /* Untuk melakukan ignore terhadap newline \n agar tidak masuk kedalam input berikut nya. */
   cout<<"Masukkan SN Hardware : ";
   /* Menampilkan tulisan "Masukkan sn Hardware : " */
   cin>>sn[i];
   /* Meminta inputan user untuk ditampung pada array sn. */
   cout<<endl;
   /* Membuat baris baru. */
   cin.clear();
   /* Menghapus kembali hasil inputan. */
   cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
   /* Untuk melakukan ignore terhadap newline \n agar tidak masuk kedalam input berikut nya. */
   cout<<"Masukkan PN Hardware : ";
   /* Menampilkan tulisan "Masukkan pn Hardware : " */
   cin>>pn[i];
   /* Meminta inputan user untuk ditampung pada array pn. */
   cout<<endl;
   /* Membuat baris baru. */
   cin.clear();
   /* Menghapus kembali hasil inputan. */
   cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
   /* Untuk melakukan ignore terhadap newline \n agar tidak masuk kedalam input berikut nya. */
  }
 } else {
  cout<<"Tolong masukan dalam bentuk angka!!\n"<<endl;
  /* Menampilkan pesan karena tidak memasukan sesuai perintah. */
  cin.clear();
  /* Menghapus kembali hasil inputan. */
  cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
  /* Untuk melakukan ignore terhadap newline \n agar tidak masuk kedalam input berikut nya. */
  system("PAUSE");
  /* Menunggu user untuk melanjutkan proses berikutnya. */
  goto main;
  /* Melompat ke baris di statement dengan label kasir. */
 }
 
 cout<<"===============================\n"<<endl;
 /* Menampilkan tulisan "===============================" */
 
 for(i=0;i<jumlah;i++){
 /* Fungsi perulangan untuk menampilkan data yang sudah dimasukkan. */
  cout<<i+1<<". "<<hardware[i]<<endl;
  /* Menampilkan tulisan no berdasarkan urutan dan menampilkan tulisan jenis hardware yang telah dimasukkan. */
  cout<<"- Type : "<<type[i]<<endl;
  /* Menampilkan tulisan "- Type : " (Berdasarkan type yang telah dimasukkan). */
  cout<<"- SN : "<<sn[i]<<endl;
  /* Menampilkan tulisan "- SN : " (Berdasarkan sn yang telah dimasukkan). */
  cout<<"- PN : "<<pn[i]<<endl;
  /* Menampilkan tulisan "- PN : " (Berdasarkan pn yang telah dimasukkan). */
  cout<<endl;
  /* Membuat baris baru. */
 }

}


Jika sudah selesai kalian dapat menjalankan programnya dengan cara menekan tombol Ctrl+F5 atau meng klik icon (!) Execute Program yang ada pada menu Toolbar MinGW Developer Studio.

Sampai jumpa dipostingan berikutnya.. Maybe, next time saya akan membahas cara mengexport nya ke Excel..

Sekian Terimakasih..  :)

Membuat Aplikasi Kasir Restoran dengan C++

Kali ini saya tidak membahas tentang Android, tetapi kali ini saya akan bahas tentang C++. Saya akan membahas cara Membuat Aplikasi Kasir Restoran dengan C++. Disini saya menggunakan Aplikasi MinGW Developer Studio. Langsung saja kita bahas sama-sama ^_^

Peratama kalian buat project dengan cara klik File => New.. Lalu pilih Win32 Console Application pada tab Projects. Dan isi pada bagian Project name: dengan nama Project yang ingin dibuat, misalnya KasirRestoran. Dibagian Location: kalian biarkan default saja. Kemudian pilih OK.


Setelah selesai membuat project.. Pada bagian FileView yang ada pada sisi kiri Window, kalian buat Source Files baru. Dengan cara klik Source Files nya lalu kalian klik File => New.. Lalu pilih C/C++ Source File pada tab Files. Dan isi pada bagian File Name: dengan nama File C++ yang ingin dibuat, misalnya main. Dibagian Location: kalian biarkan default saja. Dan ceklis pada box Add to project. Kemudian pilih OK.


Jika sudah semua nya, maka akan terlihat seperti ini.


Sekarang mulai kebagian coding nya.. Disetiap baris kode sudah saya berikan komentar tentang penjelasan kode tersebut.

#include <iostream.h>
/* Header file yang digunakan untuk menggunakan perintah
   cin, cout, strlen, endl. */


void tengah(int lebar, char* teks) {
/* Fungsi untuk membuat tulisan berada di tengah aplikasi console.
   Terdapat dua parameter, yaitu lebar dan teks. */
 int i;
 /* Deklarasi variable i, yang akan digunakan untuk perulangan. */
 int panjang = strlen(teks);
 /* Deklarasi variable panjang, dengan nilai strlen(s).
    strlen adalah fungsi untuk menghitung
    panjang dari sebuah character.
    Dengan isi teks, mengambil dari parameter teks
    yang ada pada fungsi tengah. */
 int posisi = (int)((lebar-panjang)/2);
 /* Deklarasi variable posisi, dengan nilai diambil
    dari lebar dikurang panjang teks lalu dibagi dua.*/
 for(i=0;i<posisi;i++){
 /* Statement perulangan untuk membuat teks sebanyak yang dibutuhkan.
    - Arti i=0 adalah nilai awal dari i adalah 0.
    - Arti i<posisi adalah maksimal pengulangan yang dilakukan
      sebanyak nilai yang telah didapatkan pada variable posisi.
    - Arti i++ adalah menambahkan nilai setiap
      pengulangan yang sudah di eksekusi. */
  cout<<" ";
  /* Menampilkan spasi sebanyak nilai yang
     didapatkan pada perulangan diatas. */
 }
 cout<<teks;
 /* Menampilkan teks yang diambil dari parameter
    teks yang ada pada fungsi tengah. */
}


void garis(int nilai){
/* Fungsi perulangan untuk membuat tulisan sebanyak yang dibutuhkan.
   Terdapat sebuah parameter, yaitu nilai. */
 int i;
 /* Deklarasi variable i, yang akan digunakan untuk perulangan. */
 for(i=0;i<nilai;i++){
 /* Statement perulangan untuk membuat teks sebanyak yang dibutuhkan.
    - Arti i=0 adalah nilai awal dari i adalah 0.
    - Arti i<nilai adalah maksimal pengulangan yang dilakukan
      sebanyak nilai yang telah didapatkan pada parameter nilai.
    - Arti i++ adalah menambahkan nilai setiap
      pengulangan yang sudah di eksekusi. */
  cout<<"=";
  /* Menampilkan = sebanyak nilai yang
     didapatkan pada perulangan diatas. */
 }
}


int main(){
/* Fungsi utama atau main program yang akan dibuat. */
 kasir:
 /* Label yang digunakan untuk melompat dari baris yang diinginkan. */
 tengah(80, "Menu Restoran Tegal\n");
 /* Menampilkan teks ditengah dengan fungsi tengah yang telah dibuat.
    - Arti 80 adalah lebar yang dipakai untuk menentukan lebar
      dari console. Default console biasanya adalah 80.
    - "Menu Restoran Tegal\n" adalah teks yang akan ditampilkan.
    - Arti \n adalah untuk membuat baris baru. */
 cout<<endl;
 /* Membuat baris baru. */
 garis(80);
 /* Menampilkan teks dengan fungsi perulangan yang telah dibuat.
    - Arti 80 adalah sebagai nilai perulangan
      yang akan menampilkan teks sebanyak 80 kali. */
 cout<<endl;
 /* Membuat baris baru. */
 const char* makanan [16] = {
  "Sate Wedus",
  "Nasi Lengko",
  "Soto Tauco",
  "Tahu Aci",
  "Tahu Pletok",
  "Nasi Bogana",
  "Ayam Goreng",
  "Ayam Kalasan",
  "Pecak Cucut",
  "Sate Ayam",
  "Nasi Campur",
  "Nasi Kuning",
  "Nasi Langgi",
  "Nasi Rames",
  "Nasi Opor",
  "Nasi Bakmoy"
 };
 /* Deklarasi variable array makanan.
       - Arti const char* adalah tipe data yang disimpan di array dalam
      bentuk karakter tapi dalam bentuk banyak (lebih dari satu).
    - Arti [16] adalah untuk menginisialisasi array atau jumlah
      data yang disimpan di dalam array. */
 const char* harga_makanan [16] = {
  "Rp.45000",
  "Rp.17000",
  "Rp.18000",
  "Rp.17500",
  "Rp.20000",
  "Rp.22000",
  "Rp.16000",
  "Rp.16000",
  "Rp.13000",
  "Rp.27000",
  "Rp.22000",
  "Rp.22000",
  "Rp.22000",
  "Rp.22000",
  "Rp.22000",
  "Rp.19000"
 };
 /* Deklarasi variable array harga_makanan.
       - Arti const char* adalah tipe data yang disimpan di array dalam
      bentuk karakter tapi dalam bentuk banyak (lebih dari satu).
    - Arti [16] adalah untuk menginisialisasi array atau jumlah
      data yang disimpan di dalam array. */
 const char* minuman [16] = {
  "ES Teh Tawar",
  "ES Teh Manis",
  "Teh Tawar",
  "Teh Manis",
  "ES Jeruk",
  "JUS Jambu",
  "JUS Jeruk",
  "JUS Tomat",
  "JUS Sirsak",
  "JUS Melon",
  "JUS Alpukat",
  "JUS Tape",
  "JUS Mangga",
  "JUS Veggie",
  "JUS Apel",
  "Teh Botol"
 };
 /* Deklarasi variable array minuman.
       - Arti const char* adalah tipe data yang disimpan di array dalam
      bentuk karakter tapi dalam bentuk banyak (lebih dari satu).
    - Arti [16] adalah untuk menginisialisasi array atau jumlah
      data yang disimpan di dalam array. */
 const char* harga_minuman [16] = {
  "Rp.3500",
  "Rp.4000",
  "Rp.2500",
  "Rp.3500",
  "Rp.10000",
  "Rp.10000",
  "Rp.10000",
  "Rp.11000",
  "Rp.12000",
  "Rp.10000",
  "Rp.12000",
  "Rp.10000",
  "Rp.12000",
  "Rp.12000",
  "Rp.15000",
  "Rp.5000"
 };
 /* Deklarasi variable array harga_minuman.
       - Arti const char* adalah tipe data yang disimpan di array dalam
      bentuk karakter tapi dalam bentuk banyak (lebih dari satu).
    - Arti [16] adalah untuk menginisialisasi array atau jumlah
      data yang disimpan di dalam array. */
 cout<<"Makanan :\t\t\t\t"<<"Minuman :\n"<<endl;
 /* Untuk menampilkan tulisan Makanan : dan Minuman :
    - Arti \t adalah untuk membuat Tabulasi Horizontal.
    - Arti \n adalah untuk membuat Baris Baru. */
 for(int menu=0;menu<16;menu++){
 /* Fungsi perulangan untuk membuat daftar Makanan dan Minuman
    berdasarkan data pada Array yang telah dibuat. 
    - Arti menu=0 adalah nilai awal dari i adalah 0.
    - Arti menu<16 adalah maksimal pengulangan yang dilakukan
      sebanyak 16 kali.
    - Arti menu++ adalah menambahkan nilai setiap
      pengulangan yang sudah di eksekusi. */
  cout<<menu+1<<". "<<makanan[menu]<<"\t\t"<<harga_makanan[menu]<<"\t"<<menu+1<<". "<<minuman[menu]<<"\t\t"<<harga_minuman[menu]<<endl;
  /* - Arti menu+1 adalah untuk membuat nomer. Ditambah satu
             karena menu dimulai dari 0, bukan dari satu.
     - Arti makanan[menu] adalah untuk menampilkan data yang diambil
       dari array makanan.
           - Arti harga_makanan[menu] adalah untuk menampilkan data yang diambil
       dari array harga_makanan.
     - Arti minuman[menu] adalah untuk menampilkan data yang diambil
       dari array minuman.
     - Arti harga_minuman[menu] adalah untuk menampilkan data yang diambil
       dari array harga_minuman.*/
 }
 cout<<endl;
 /* Membuat baris baru. */
 garis(80);
 /* Menampilkan teks dengan fungsi perulangan yang telah dibuat.
    - Arti 80 adalah sebagai nilai perulangan
      yang akan menampilkan teks sebanyak 80 kali. */
 int a,b,c,d,e = 0,f = 0,g,h,i,j,k = 0,l = 0,m,n = 0,o;
 /* Deklarasi variable :
    - a untuk membuat perulangan makanan yang dibeli.
       - b untuk menyimpan jumlah makanan yang dibeli.
    - c untuk menyimpan harga makanan yang dibeli.
    - d untuk menyimpan jumlah yang dipesan per makanan.
       - e untuk menyimpan hasil perkalian dari harga dan jumlah pesanan makanan.
    - f untuk menyimpan hasil penjumlahan semua harga makanan.
    - g untuk membuat perulangan minuman yang dibeli.
       - h untuk menyimpan jumlah minuman yang dibeli.
    - i untuk menyimpan harga minuman yang dibeli.
    - j untuk menyimpan jumlah yang dipesan per minuman.
       - k untuk menyimpan hasil perkalian dari harga dan jumlah pesanan minuman.
    - l untuk menyimpan hasil penjumlahan semua harga minuman.
    - m untuk menyimpan hasil penjumlahan total harga makanan dan minuman.
    - n untuk menyimpan harga pembayaran.
    - o untuk menyimpan hasil pengurangan dari harga pembayaran dengan total harga.*/
 cout<<"Masukkan jumlah makanan yang dibeli : ";
 /* Menampilkan tulisan Masukkan jumlah makanan yang dibeli : */
 cin>>b;
 /* Meminta inputan user untuk variable b. */
 cout<<endl;
 /* Membuat baris baru. */
 if(!(cin.fail())){
 /* Melakukan pengecekan jika inputan yang diberi tidak sesuai perintah. */
  for(a=1;a<=b;a++){
  /* Membuat perulangan meminta harga dan jumlah makanan yang dipesan. */
   cout<<"Harga makanan ke-"<<a<<"\t : ";
   /* Menampilkan tulisan Harga makanan ke-(Berdasarkan urutan makanan) : */
   cin>>c;
   /* Meminta inputan user untuk variable c. */
   cout<<endl;
   /* Membuat baris baru. */
   if(cin.fail()){
   /* Melakukan pengecekan jika inputan yang diberi tidak sesuai perintah. */
    cout<<"Tolong masukan dalam bentuk angka!!\n"<<endl;
    /* Menampilkan pesan karena tidak memasukan sesuai perintah. */
    cin.clear();
    /* Menghapus kembali hasil inputan. */
    cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
    /* Untuk melakukan ignore terhadap newline \n agar tidak masuk kedalam input berikut nya. */
    system("PAUSE");
    /* Menunggu user untuk melanjutkan proses berikutnya. */
    goto kasir;
    /* Melompat ke baris di statement dengan label kasir. */
   }
   cout<<"Jumlah yang dipesan \t : ";
   /* Menampilkan tulisan Jumlah yang dipesan : */
   cin>>d;
   /* Meminta inputan user untuk variable d. */
   cout<<endl;
   /* Membuat baris baru. */
   if(cin.fail()){
   /* Melakukan pengecekan jika inputan yang diberi tidak sesuai perintah. */
    cout<<"Tolong masukan dalam bentuk angka!!\n"<<endl;
    /* Menampilkan pesan karena tidak memasukan sesuai perintah. */
    cin.clear();
    /* Menghapus kembali hasil inputan. */
    cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
    /* Untuk melakukan ignore terhadap newline \n agar tidak masuk kedalam input berikut nya. */
    system("PAUSE");
    /* Menunggu user untuk melanjutkan proses berikutnya. */
    goto kasir;
    /* Melompat ke baris di statement dengan label kasir. */
   }
   e=c*d;
   /* Mengalikan hasil dari inputan Harga dan Jumlah makanan yang dipesan. */
   f+=e;
   /* Menjumlahkan semua hasil harga makanan. */
  }
  garis(40);
  /* Menampilkan teks dengan fungsi perulangan yang telah dibuat.
        - Arti 40 adalah sebagai nilai perulangan
          yang akan menampilkan teks sebanyak 40 kali. */
  cout<<endl;
  /* Membuat baris baru */
  cout<<"Total Harga Makanan \t : Rp."<<f<<endl;
  /* Menampilkan tulisan Total Harga Makanan : Rp.(Berdasarkan hasil harga makanan) */
  cout<<endl;
  /* Membuat baris baru */
 } else {
  cout<<"Tolong masukan dalam bentuk angka!!\n"<<endl;
  /* Menampilkan pesan karena tidak memasukan sesuai perintah. */
  cin.clear();
  /* Menghapus kembali hasil inputan. */
        cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
  /* Untuk melakukan ignore terhadap newline \n agar tidak masuk kedalam input berikut nya. */
  system("PAUSE");
  /* Menunggu user untuk melanjutkan proses berikutnya. */
  goto kasir;
  /* Melompat ke baris di statement dengan label kasir. */
 }
 cout<<"Masukkan jumlah minuman yang dibeli : ";
 /* Menampilkan tulisan Masukkan jumlah minuman yang dibeli : */
 cin>>h;
 /* Meminta inputan user untuk variable h. */
 cout<<endl;
 /* Membuat baris baru */
 if(!(cin.fail())){
 /* Melakukan pengecekan jika inputan yang diberi tidak sesuai perintah. */
  for(g=1;g<=h;g++){
  /* Membuat perulangan meminta harga dan jumlah minuman yang dipesan. */
   cout<<"Harga minuman ke-"<<g<<"\t : ";
   /* Menampilkan tulisan Harga minuman ke-(Berdasarkan urutan minuman) : */
   cin>>i;
   /* Meminta inputan user untuk variable i. */
   cout<<endl;
   /* Membuat baris baru */
   if(cin.fail()){
   /* Melakukan pengecekan jika inputan yang diberi tidak sesuai perintah. */
    cout<<"Tolong masukan dalam bentuk angka!!\n"<<endl;
    /* Menampilkan pesan karena tidak memasukan sesuai perintah. */
    cin.clear();
    /* Menghapus kembali hasil inputan. */
    cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
    /* Untuk melakukan ignore terhadap newline \n agar tidak masuk kedalam input berikut nya. */
    system("PAUSE");
    /* Menunggu user untuk melanjutkan proses berikutnya. */
    goto kasir;
    /* Melompat ke baris di statement dengan label kasir. */
   }
   cout<<"Jumlah yang dipesan \t : ";
   /* Menampilkan tulisan Jumlah yang dipesan : */
   cin>>j;
   /* Meminta inputan user untuk variable j. */
   cout<<endl;
   /* Membuat baris baru */
   if(cin.fail()){
   /* Melakukan pengecekan jika inputan yang diberi tidak sesuai perintah. */
    cout<<"Tolong masukan dalam bentuk angka!!\n"<<endl;
    /* Menampilkan pesan karena tidak memasukan sesuai perintah. */
    cin.clear();
    /* Menghapus kembali hasil inputan. */
    cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
    /* Untuk melakukan ignore terhadap newline \n agar tidak masuk kedalam input berikut nya. */
    system("PAUSE");
    /* Menunggu user untuk melanjutkan proses berikutnya. */
    goto kasir;
    /* Melompat ke baris di statement dengan label kasir. */
   }
   k=i*j;
   /* Mengalikan hasil dari inputan Harga dan Jumlah minuman yang dipesan. */
   l+=k;
   /* Menjumlahkan semua hasil harga makanan. */
  }
  garis(40);
  /* Menampilkan teks dengan fungsi perulangan yang telah dibuat.
        - Arti 40 adalah sebagai nilai perulangan
          yang akan menampilkan teks sebanyak 40 kali. */
  cout<<endl;
  /* Membuat baris baru */
  cout<<"Total Harga Minuman \t : Rp."<<l<<endl;
  /* Menampilkan tulisan Total Harga Minuman : Rp.(Berdasarkan hasil harga minuman) */
  cout<<endl;
  /* Membuat baris baru */
 } else {
  cout<<"Tolong masukan dalam bentuk angka!!\n"<<endl;
  /* Menampilkan pesan karena tidak memasukan sesuai perintah. */
  cin.clear();
  /* Menghapus kembali hasil inputan. */
        cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
  /* Untuk melakukan ignore terhadap newline \n agar tidak masuk kedalam input berikut nya. */
  system("PAUSE");
  /* Menunggu user untuk melanjutkan proses berikutnya. */
  goto kasir;
  /* Melompat ke baris di statement dengan label kasir. */
 }
 m=f+l;
 /* Menjumlahkan hasil dari total harga Makanan dan Minuman. */
 cout<<"Harga Total \t\t : Rp."<<m<<endl;
 /* Menampilkan tulisan Harga Total : Rp.(Berdasarkan harga total yang didapat) */
 cout<<"Membayar sejumlah \t : Rp.";
 /* Menampilkan tulisan Membayar sejumlah : Rp. */
 cin>>n;
 /* Meminta inputan user untuk variable n. */
 cout<<endl;
 /* Membuat baris baru */
 o=n-m;
 /* Mengurangkan harga pembayaran dengan total harga. */
 garis(40);
 /* Menampilkan teks dengan fungsi perulangan yang telah dibuat.
  - Arti 40 adalah sebagai nilai perulangan
    yang akan menampilkan teks sebanyak 40 kali. */
 cout<<endl;
 /* Membuat baris baru */
 if(o>0){
 /* Melakukan pengecekan jika nilai dari o lebih dari 0 */
  cout<<"Kembaliannya \t\t : Rp."<<o;
  /* Maka akan menampilkan tulisan Kembaliannya : Rp.(Berdasarkan dari pengurangan pembayaran dengan total harga). */
 } else if(o==0){
   /* Melakukan pengecekan jika nilai dari o sama dengan 0 */
  cout<<"Uangnya Pas";
  /* Maka akan menampilkan tulisan Uangnya Pas. */
 } else {
   /* Jika kondisi tidak atau bukan seperti yang lebih dari 0 atau sama dengan 0 */
  o=-o;
  /* Merubah nilai dari negative menjadi positive */
  cout<<"Uang Kurang \t\t : Rp."<<o;
  /* Maka akan menampilkan tulisan Uang Kurang : Rp.(Berdasarkan dari pengurangan pembayaran dengan total harga). */
 }
 cout<<endl<<endl;
 /* Membuat baris baru */
 tengah(80, "Terimakasih Telah Membeli\n");
 /* Menampilkan teks ditengah dengan fungsi tengah yang telah dibuat.
    - Arti 80 adalah lebar yang dipakai untuk menentukan lebar
      dari console. Default console biasanya adalah 80.
    - "Terimakasih Telah Membeli\n" adalah teks yang akan ditampilkan.
    - Arti \n adalah untuk membuat baris baru. */
 tengah(80, "^__^\n");
 /* Menampilkan teks ditengah dengan fungsi tengah yang telah dibuat.
    - Arti 80 adalah lebar yang dipakai untuk menentukan lebar
      dari console. Default console biasanya adalah 80.
    - "^__^\n" adalah teks yang akan ditampilkan.
    - Arti \n adalah untuk membuat baris baru. */
 system("PAUSE");
 /* Menunggu user untuk melanjutkan proses berikutnya. */
 goto kasir;
 /* Melompat ke baris di statement dengan label kasir. */
 return 0;
 /* Mengembalikan nilai 0 ke OS supaya tahu bahwa program(EXIT_SUCCES). */
}

Jika sudah selesai kalian dapat menjalankan programnya dengan cara menekan tombol Ctrl+F5 atau meng klik icon (!) Execute Program yang ada pada menu Toolbar MinGW Developer Studio.

Maka hasil program nya akan seperti berikut:


Terimakasih..

Aplikasi Jadwal Pelajaran SMK Negeri 2 Cikarang Barat + Source Code


Assalamualaikum Wr Wb

Sebelumnya saya sudah pernah menulis tentang Aplikasi Jadwal Pelajaran SMKN 2 Cikarang BaratPada kali ini saya akan membagikan kepada kalian Source Code Aplikasi Jadwal Pelajaran nya.

Sebelumnya kalian bisa lihat terlebih dahulu tampilan Aplikasi nya:







Pada menu Info saya masih memakai data-widget-id Twitter orang lain. Karena saya tidak memiliki data-widget-id Twitter Sekolah saya, sehingga tweets yang terlihat bukanlah tweets dari sekolah saya.. Hehehe


Langsung saja yang ingin mendownload Aplikasi + Source code nya:

Beberapa Hal Tentang Sertifikat Dicoding Indonesia


Pernah dengar nama Dicoding Indonesia..?

Menurut saya Dicoding adalah sebuah program yang dapat membantu siapapun untuk dapat belajar tentang teknologi-teknologi yang sedang berkembang dewasa ini. Misalnya seperti Mobile Apps, Games, Web, Internet of Things, dan masih banyak lagi..

Nah di Dicoding itu ada yang namanya Dicoding Academy dan Dicoding Event.

Dicoding Academy adalah tempat untuk belajar secara online bagi yang belum memiliki kemampuan programming (beginner) hingga yang sudah mahir (advance).

Sedangkan Dicoding Event adalah tempat untuk meningkatkan kemampuan teknis sekaligus membuka jaringan dengan developer terbaik melalui seminar atau workshop yang diselenggarakan oleh partner yang telah bekerja sama dengan Dicoding.

Jika kalian sudah mengikuti Dicoding Academy dan kalian telah berhasil lulus dari kelas yang kalian ikuti maka kalian akan mendapatkan sebuah Sertifikat Kelulusan. Begitu juga dengan Dicoding Event, apabila kalian telah mengikuti sebuah seminar atau workshop maka kalian akan mendapatkan sebuah Sertifikat Kehadiran.

Ingin tahu seperti apa bentuk sertifikatnya..? Lihat sertifikatnya dibawah ini..
















Lalu apa kelebihan Sertifikat dari Dicoding ini....? Simak pertanyaan saya dibawah ini, yang sudah dijawab oleh Adrianus Yoza Aprilio selaku CIO Dicoding Indonesia.

Q : Apakah sertifikat dicoding diakui oleh dunia industri? Jika iya, boleh tau contoh perusahaan yang sudah mengakuinya?
A : Yes. Terutama Industri IT dan Startup yang mengetahui pentingnya validasi skill. Ada di halaman awal Dicoding (daftar lulusan yang sudah direkrut). Contohnya startup-startup aplikasi dan Game (radyalabs, Rolling Glory, Agate, dsb), bank BTPN, Tiket.com, Traveloka, OLX, dll.

Q : Lebih berpengaruh Sertifikat Kelulusan atau Sertifikat Kehadiran?
A : Kelulusan, sifatnya mengikat dan memberi nilai tambah ke pesertanya. Sebagai contoh, Raport/ijazah tentu lebih bernilai dibandingkan daftar absensi seseorang selama sekolah.

Q : Kenapa Sertifikat Kelulusan memiliki jangka waktu 3 tahun? Sedangkan Sertifikat Kehadiran tidak memiliki jangka waktu?
A : Karena tools IT umumnya tidak dianggap valid/sesuai lagi setelah 3 tahun. Dalam tahun-tahun terakhir, 1-2 tahun adalah waktu maksimal skill seseorang bisa diakui sebelum dia harus mempelajari teknologi baru. Dan karena sertifikat kehadiran lebih ke merupakan bukti hadir.

Menariknya lagi jika kalian telah lulus atau telah mengikuti sebuah event, kalian akan mendapatkan beberapa XP dan Point.

XP adalah poin reputasi yang dimiliki developer dan tidak dapat berkurang jumlahnya. Namun demikian, poin reputasi ini tidak dapat ditukarkan dengan hadiah. Sedangkan Poin sendiri adalah penghargaan Dicoding terhadap Developer. Poin dapat ditukarkan dengan hadiah yang terdapat di katalog.

Kalian tertarik memlikinya..??

Cukup sekian penjelasan tentang Sertifikat Dicoding, apabila ada yang ingin ditanyakan silahkan berkomentar di kolom komentar yang telah disediakan. Mohon maaf bila ada kata-kata yang salah.

Terimakasih.. 

Cara Edit Foto Jadi Disebelah Orang Yang Kamu Inginkan


Assalamualaikum... 

Pernahkah kalian ingin foto bareng dengan seseorang? Tapi tidak pernah bisa untuk berfoto bareng karena adanya sesuatu yang menjadi hambatan... Misalnya kalian ingin foto dengan presiden, tapi karena presiden sibuk mengurusi hal yang lebih penting dari pada foto bareng kalian.. Akhirnya kalian tidak dapat berfoto bareng :(

Nah pada kali ini saya akan memberi tahu caranya untuk Edit Foto Jadi Disebelah Orang Yang Kamu Inginkan. Disini saya menggunakan aplikasi edit foto di Android yang bernama PicsArt.

Kenapa tidak menggunakan Photoshop saja..?

Karena itu sudah biasa!!! wkwkwk....

Langsung saja ikuti tutorial berikut:
  • Pertama.. Buka foto yang ingin kalian edit dengan PicsArt pastinya.
  • Kedua.. Pilih Free Crop yang ada pada menu Tools.
  • Ketiga.. Warnai atau tandai foto yang ingin tetap ada, dengan menggunakan menu kuas yang ada dibagian bawahh. Setelah itu pilih tombol panah kekanan yang ada di pojok kanan atas.

  • Keempat.. Pilih Selection yang ada pada menu Tools juga.
  • Kelima.. Warnai lagi gambar yang ingin tetap ada yang akan dipindahkan, disini saya hanya akan memindahkannya ke orang yang ada disebelah orang saya. Setelah itu gunakan cut (gunting) yang ada pada menu edit dibagian atas. 
  • Keenam.. Paste (letakan) di tempat yang kalian inginkan.



  • Ketujuh.. Rapihkan foto kalian dengan Crop yang ada menu Tools.


  • Jadi.. wkwkwk
  • Mungkin tidak semua foto bisa di edit dengan mudah seperti cara diatas, pinter pinternya kalian saja dengan memainkan PicsArt.
Terimakasih...
Sekian dari saya, Wassalamu'alaikum warahmatullahi wabarakatuh...

Cara Mengatasi Lupa Pola tanpa Menghapus Data (Part 2)

Cara Mengatasi Lupa Pola tanpa Menghapus Data (Part 2)

Android yang semestinya aman dengan kunci pola apa jadinya jika kita lupa pola tersebut, beberapa faktor kemungkinan pola tersebut tidak dapat digunakan entah itu karena seseorang yang mencoba membuka secara terus menerus dengan pola yang salah atau kamu memang benar benar lupa sehingga sistem memblok kemanan tersebut dan diminta untuk masuk/login email apalagi jika data seluler atau WiFi tidak aktif sehingga tidak ada koneksi internet.

Mengatasi Lupa Pola
Lupa Pola Android

Ada beberapa cara yang dapat kamu lakukan untuk mengatasinya, salasatunya dengan reset ke pengaturan awal melalui sistem recovery, akan tetapi hal tersebut dapat menghapus data seperti E-mail, Message, Log Panggilan dan semua aplikasi sampai benar benar bersih, bagaimana jika semua data yang ada pada perangkat sangat penting bagi kamu. Lantas, adakah cara mengatasinya tanpa menghapus semua data atau bisa disebut dengan factory reset.

Saya akan menjawab bisa saja, kemungkinan perangkat kamu akan mendukung dengan cara yang saya berikan. Apa salahnya jika kamu mencobanya.

Mungkin kamu telah mencoba cara yang telah saya beri tahu pada postingan sebelumnya Cara Mengatasi Lupa Pola tanpa Menghapus Data (Part 1) Tetapi kamu masih belum dapat mengatasi masalah nya, maka dari itu saya akan memberi tahu cara yang kedua untuk Mengatasi Lupa Pola Pada Android.

Cara berikut ini hanya bisa dilakukan jika pada Android kalian telah terpasang CWM (Clockworkmod).

Pertama kalian harus mendownload file berikut ini www.4shared.com/zip/i7kGwsXzce/Semua_Akan_Dari_Awal.php
Setelah itu matikan hp kalian dan masuklah ke CWM
Lalu Install Zip From SdCard, dan pilih file yang telah di download tadi
Tunggu sebentar, jika telah selesai Reboot The Phone

Taraaa... Hp kalian sudah tidak terkunci lagi
Cara diatas tidak akan menghilangkan aplikasi yang telah kalian pasang, tapi akan menghapus data aplikasi nya. Seperti bbm, kalian mesti log in lagi..

Cara Mengatasi Lupa Pola tanpa Menghapus Data (Part 1)

Cara Mengatasi Lupa Pola tanpa Menghapus Data (Part 1)

Android yang semestinya aman dengan kunci pola apa jadinya jika kita lupa pola tersebut, beberapa faktor kemungkinan pola tersebut tidak dapat digunakan entah itu karena seseorang yang mencoba membuka secara terus menerus dengan pola yang salah atau kamu memang benar benar lupa sehingga sistem memblok kemanan tersebut dan diminta untuk masuk/login email apalagi jika data seluler atau WiFi tidak aktif sehingga tidak ada koneksi internet.

Mengatasi Lupa Pola
Lupa Pola Android

Ada beberapa cara yang dapat kamu lakukan untuk mengatasinya, salasatunya dengan reset ke pengaturan awal melalui sistem recovery, akan tetapi hal tersebut dapat menghapus data seperti E-mail, Message, Log Panggilan dan semua aplikasi sampai benar benar bersih, bagaimana jika semua data yang ada pada perangkat sangat penting bagi kamu. Lantas, adakah cara mengatasinya tanpa menghapus semua data atau bisa disebut dengan factory reset.

Saya akan menjawab bisa saja, kemungkinan perangkat kamu akan mendukung dengan cara yang saya berikan. Apa salahnya jika kamu mencobanya.

Baik, langkah awal yang harus kamu lakukan adalah melakukan panggilan ke nomor ponsel yang lupa pola atau possword menggunakan ponsel lain,

Segeralah jawab panggilan tersebut. Tanpa menutup panggilan, kamu dapat menekan tombol Home atau Beranda launcher kamu dan masuk pengaturan untuk mengaktifkan data seluler atau WiFi sehingga kamu dengan mudah untuk login E-mail dan me-reset keamanan tersebut.

Bagaimana, mudah bukan cara mengatasi lupa pola tanpa menghapus data pada android, semoga berhasil.

Jangan lupa bagikan ke temen temen kamu ya agar mereka tahu.

Jika cara di atas masih belum bisa cobalah cara berikut ini: Cara Mengatasi Lupa Pola tanpa Menghapus Data (Part 2)

Cara Membuat Android Menjadi Web Server

Cara Membuat Android Menjadi Web Server

Smartphone Android yang sering kita gunakan, sekarang bisa kita jadikan sebagai web server. Benar, anda tidak salah dengar, kini kita bisa mengakses web yang kita buat yang kita simpan di Android, tidak berbeda dengan hosting.

Berbagai perangkat lunak server tersedia untuk Android. Misalnya PAW Server for Android yang dirancang menjalankan situs dasar, situs non-dinamis (plugin untuk PHP juga tersedia untuk PAW). Contoh lain Ulti Server: PHP, MySQL, PMA, seperti namanya, mendukung penggunaan database untuk situs yang dijalankan dengan php.

PAW Server


Jika PAW Server sudah terinstall di perangkat Anda, jalankan aplikasi, tekan tombol Start. Nantinya sebuah ip address akan ditampilkan, akses ip tersebut dari browser PC Anda. Disini Anda akan disuruh untuk login, dengan username/password default : admin/paw.

PAW Server PAW Server


Ini adalah aplikasi yang dilengkapi dengan berbagai fitur, dari panggilan menggunakan telpon, mengirim pesan, sampai melihat media. Pada intinya Anda juga dapat menggunakan PAW server sebagai remote akses ke ponsel atau teblet serta melayani halaman web.

Untuk menggunakan PAW Server sebagai tempat untuk percobaan website anda, taruhlah index.php dan teman-temannya ke folder >> paw >> html yang ada pada SdCard kalian. Sebagai contoh percobaan website punya saya seperti di bawah ini.

PAW Server


Selamat Mencoba, Semoga Berhasil..