Asus ROG

Laptop gaming yang cepat dan ringan dari Asus. Laptop gaming ini mendukuing resolusi hingga 4K-UHD. Pada resolusi full-HD mesin gaming ini mampu menjalankan semua game Windows dengan smooth dan pada performa detil yang tinggi.

AlienWare 17

Versi terbaru dari Alienware 17 telah menerima pembaharuan hardware yang ditingkatkan, terutama GeForce GTX 980M Nvidia GPU, salah satu kartu grafis VGA laptop paling kuat di dunia. Laptop gaming 17 inci yang hampir sempurna disegala aspek..

Razer Blade

Razer blade kami pilih sebagai laptop gaming terbaik dikategori layar 14 inch. Laptop ini memakai sasis aluminium hitam dengan aksen hijau bercahaya yang akan membuat semua gamer tergoda. Laptop gaming yang cukup ringan dengan resolusi layar tinggi dan dilengkapi kartu grafis cepat "GeForce GTX 970M" dari Nvidia. Blade merupakan pilihan terbaik untuk gamer yang mencari laptop gaming ultimate yang tipis dan ringan.

Gigabyte P25X v2

Gigabyte P25X v2 kami pilih sebagai laptop gaming 15 inch terbaik. Packing prosesor Core i7 dan kartu grafis tangguh "Nvidia GeForce GTX 880M", membuat P25X mampu memainkan Game PC bahkan yang paling berat sehalus mentega. Hal luar biasa lainnya dari laptop gaming ini yaitu kekuatan masa baterainya yang lebih dari tujuh jam masa pakai baterai - selama surfing web - dan layar 1080p yang tajam membuat laptop gaming ini patut diperhitungkan.

Aorus X7 Pro-Sync

Aorus X7 Pro-Sync kami anugrahi sebagai laptop gaming 17 inch terbaik. Laptop gaming yang langsing, ringan yang memenangkan antar performa dan portabilitas. Sepasang kartu grafis Nvidia GeForce GTX 970M dalam konfigurasi SLI, membuat X7 Pro-Sync menjadi salah satu laptop gaming yang paling kuat sekarang ini. Laptop gaming ramping yang mengambil keuntungan dari teknologi G-Sync Nvidia, memastikan grafis halus tanpa sedikitpun lag.

Thursday, May 12, 2016

PERCABANGAN


Tujuan:

Dapat menggunakan instruksi percabangan di dalam pemecahan masalah
     I.     PERCABANGAN
Salah satu permasalahan yang pasti akan dijumpai dalam pembuatan program adalah percabangan. Percabangan  adalah suatu pemilihan statemen yang akan dieksekusi dimana pemilihan tersebut didasarkan atas kondisi tertentu. Di dalam C++ terdapat dua buah jenis struktur  yang digunakan untuk mengimplementasikan suatu percabangan, yaitu dengan menggunakan struktur if dan struktur switch.
1. Sturktur IF
a. Struktur if satu kondisi.
Struktur ini merupakan struktur yang paling sederhana karena hanya melibatkan satu buah ekspresi yang akan diperiksa. Bentuk umum dari struktur percabangan yang memiliki satu kondisi adalah sebagai berikut:

 //jika hanya terdiri satu statemen if (kondisi) statemen
//jika terdapat lebih dari satu statemen if (kondisi) {     statemen1;     statemen2;
    …..          }

        Contoh 4.1:

//contoh if satu kondisi #include <iostream> using namespace std; int main() {   int nilai;
  // Inputkan sebuah bilangan bulat   cout<<"Inputkan    sebuah bilangan bulat: ";    // Membaca nilai yang diinputkan dari keyboard   cin>>nilai;
  // Menampilkan sebuah teks 
  // jika nilai yang tersimpan lebih besar dari 0    if (nilai > 0) 
    cout<<"Nilai yang Anda inputkan adalah bilangan positif ";   return 0;
}

            Output contoh 4.1:
          

   Hasil dari program diatas akan menampilkan teks Nilai yang anda masukkan adalah   bilangan positif jika input  nilai yang lebih besar dari 0. Jika lebih kecil dari 0 maka tidak akan dieksekusi.

      Contoh 4.2 :

//contoh if satu kondisi dua statement
#include <iostream> using namespace std; int main() {   int bilangan;
  //masukkan sebuah bilangan   cout<<"Masukkan sebuah bilangan bulat: ";     cin>>bilangan;   if ((bilangan > 0) && (bilangan < 30))    { cout<< "bilangan lebih besar dari nol" ;      cout<<" dan lebih kecil dari tigapuluh";
     }
  return 0; }

     Output contoh 4.2 :
    
 Keterangan : pada contoh 4.2  hampir sama dengan contoh 4.1, hanya pada contoh
4.2.  statementnya ada dua baris sehinggan menggunakan tanda { }.
b. Struktur if dua kondisi.
Struktur percabangan jenis ini sedikit lebih kompleks bila dibandingkan dengan struktur yang hanya memiliki satu buah kondisi. Bentuk umum dari struktur percabangan dengan dua kondisi adalah sebagai berikut:

if (kondisi) 

   {   statemen_jika_kondisi_terpenuhi;    }
                   else 
                       {  statemen_jika_kondisi_tidak_terpenuhi;
                           }
Dalam menuliskan kondisi/syarat selalu digunakan operator relasional sebagai sarana untuk  melakukan proses pengecekan 
Operator
Arti
>
Lebih besar
<
Lebih kecil
= =
Sama dengan
>=
Lebih atau sama
<=
Kurang atau sama
!=
Tidak sama dengan
Contoh 4.3.
//contoh if dua kondisi  #include <iostream> using namespace std; int main() {   int bilangan;   cout<<"Masukkan bilangan bulat yang akan dicek ";   cin>>bilangan;
  // Melakukan pengecekan bilangan apakah habis    if (bilangan % 2 == 0) {     cout<<bilangan<<" adalah bilangan genap";
  } else {     cout<<bilangan<<" adalah bilangan ganjil";
  }   return 0;
}
Output contoh 4.3 :


  c. Struktur If Tiga Kondisi atau Lebih
      Struktur jenis ini merupakan perluasaan dari struktur yang memiliki  dua kondisi yaitu dengan menambahkan satu atau lebih kondisi kedalamnya. Strukturny yaitu:

if (kondisi_1)  {       statemen             _jika_kondisi_1_terpenuhi;
    } else if   (kondisi_2)
    {   statemen_jika_kondisi_2_terpenuhi;
     } else if (kondisi_3)
    {
       statemen_jika_kondisi_3_terpenuhi;
    }
Else   {
       statemen_jika_semua_kondisi_diatas_tdk_terpenuhi;
    }
             

Berikut contoh program:
Contoh 4.4 :

//contoh if tiga kondisi 

#include <iostream>

using namespace std;

int main() {

  int bil;    cout<<"Masukkan sebuah bilangan bulat "         <<"yang akan diperiksa: ";     cin>>bil;    if (bil > 0) {     cout<<bil<<" adalah bilangan Positif";

  } else if (bil < 0) {

    cout<<bil<<" adalah bilangan Negatif";

  } else {

    cout<<"Anda memasukkan bilangan NOL";

  }

  return 0;
}   

Output  contoh 4.4 :


Latihan Menggunakan struktur IF.
1.      Buatlah program untuk menentukan nilai kelulusan, jika rata nilai >60 maka lulus jika <= 60 maka gagal.
2.      Buatlah program untuk mengkonversikan nilai menjadi nilai indeks.
Nilai >= 85        = A
70 <=  Nilai<85  = B 55<= Nilai<70    = C
40<= Nilai< 55   = D Nilai < 40           = E
3.      Buatlah program untuk mengetahui hari  dari  angka yang di inputkan
4.      Buatlah program untuk mengetahui  bulan dari  angka yang di inputkan


 2. Percabangan Menggunakan Statemen Switch.
Selain menggunakan struktur if, C++ juga mempunyai percabangan dengan menggunakan switch. Bentuk umum struktur percabangan switch yaitu

switch (ekspresi) {       case nilai_konstanta1  : 
              statemen(pernyataan);
              break;       case nilai_konstanta2  :
              statemen(pernyataan);               break;
       …….
      default :
             
statemen(pernyataan)_alternatif;
}
             
 Tipe data dari ekspresi diatas harus berupa tipe ordinal, seperti bilangan bulat dan karakter. Selain tipe tersebut C++  tidak mengijinkan. Statement default berguna untuk mengeksekusi statement alternatif, yaitu jika nilai yang kita masukkan ternyata tidak sesuai dengan nilai-nilai konstant yang telah didefinisikan. Kita dapat mendefinisikan nilai konstan tersebut dengan statemen case.  Statemen break berfungsi sebagai statemen peloncatan, akan dibahas dalam perulangan.
  Contoh 4.5 :
    
      Contoh output 4.5 :

Konstants Dan Operator


Tujuan:

1.      Dapat mendeklarasikan konstanta.
2.      Dapat menuliskan ekspresi aritmatik dengan benar, berikut pemilihan tipe data yang benar.
3.      Dapat menggunakan operator gabungan dan ekspresi increasing dan decreasing.
4.      Mengaplikasikan konstanta dan operator aritmatik dalam program.

     I.     KONSTANTA

Konstanta adalah jenis identifier yang bersifat konstant atau tetap.artinya nilai dari konstanta di dalam program tidak dapat diubah. Konstanta berguna untuk menentukan nilai yang merupakan tetapan, misalnya nilai pi ( π), kecepatan cahaya dan lainnya.

Deklarasi konstanta

Ada dua cara untuk mendeklarasikan konstanta:
1.  Menggunakan Preprocessor  #define Contoh program 1:

//contoh deklarasi konstanta 1         
  #include <iostream>  using namespace std;  #define MAX 7  int main() {  int A[MAX];  
  for (int C=0; C<MAX; C++) {

    // mengisi nilai ke dalam A[C]

    A[C] = C * 10;

    cout<<A[C]<<endl;  }

  return 0; }

Keterangan: dari contoh diatas bilangan 7 adalah suatu konstanta. Jika terjadi perubahan kita hanya melakukan perubahan nilai terhadap konstantannya saja.
Catatan: Penggunaan  #define tidak diakhiri tanda titik koma (;)
Contoh Program 2:

// deklarasi konstanta 
#include <iostream> #include <conio.h> using namespace std;
#define phi 3.14
#define r1 3
#define r2 10.7
#define kar 'Z'
#define teks "Contoh deklarasi konstanta"
#define x true main() {   cout<<teks<<"\n";   cout<<kar<<"\n";   cout<<x<<"\n";   cout<<phi<<"\n";   cout<<r1<<"\n";   cout<<r2<<"\n";   getch();   return 0;
}   


Keterangan contoh program2 :
       phi dan r2 adalah konstanta yang tipenya float
       r1 adalah konstanta yang bertipe int
       kar adalah konstanta yang bertipe char
       teks adalah konstanta karakter string, tipe char
       x adalah konstanta yang tipenya boolean

Output contohprogram1:

Output contohprogram2:
  



2. Menggunakan kata kunci  const
Selain dengan cara  # define, di dalam C++ kita dapat mendefinisikan sebuah konstanta dengan menggunakan  kata kunci Const.
Bentuk umumnya:
Const tipe_data nama_konstanta= nilai_tetapan Contoh pendeklarasian konstanta:
Const double pi=3.14;
Const int Nilai_MAX=100;

Contoh Program3:

//  contoh deklarasi konstanta3
#include <iostream>  using namespace std;  const int MAX = 5;  int main() {    int A[MAX];  
  for (int C=0; C<MAX; C++) {

    // mengisi nilai ke dalam A[C]

    A[C] = C * 5;

    // menampilkan nilai A[C]     cout<<A[C]<<endl;
  }
  return 0;
}

Output contohProgram3:

Konstanta tidak dapat diubah nilainya, berbeda dengan proses inisialisasi, dimana nilainya dapat diubah-ubah.




II.      OPERATOR


Operator adalah tanda yang digunakan untuk melakukan operasi operasi tertentu di dalam program. Dengan operator kita dapat melakukan operasi
perhitungan,perbandingan, manipulasi,dan lain-lain. Operator-operator yang sering digunakan yaitu:
1. Operator aritmatik, terdiri :
a)                   Penjumlahan (+)
b)                  Pengurangan (-)
c)                   Perkalian (*)
d)                  Pembagian (/)
e)                  Modulo (%) Contoh Program 4:
 //operator aritmatik 1
 #include <iostream>  #include <conio.h>  using namespace std;  int main() {
 int a,b,plus,min,kali,bagi,mod;
 cout<<"Contoh penggunaan operator aritmatik\n";  cout<<"Masukkan angka pertama (a) = ";cin>>a;  cout<<"Masukkan angka kedua (b) = ";cin>>b;  plus=a+b; min=a-b; kali=a*b; bagi=a/b; mod=a%b;

cout<<"\nJumlah = "<<plus;

cout<<"\nKurang = "<<min;

cout<<"\nKali = "<<kali;

cout<<"\nBagi = "<<bagi;

cout<<"\nModulo = "<<mod;

getch();

 return 0; }

Output contoh Program4:

2. Operator Relasional
Operator relasional adalah operator yang digunakan untuk menentukan relasi atau hubungan dari dua buah operand. Adapun yang termasuk oerator relasional di dalam C++ adalah sebagai berikut
Operator
Jenis operasi
Contoh
>
Lebih besar
7>3
<
Lebih kecil
4<2
>=
Lebih besar atau sama dengan
5>=5
<=
Lebih kecil atau sama dengan
5<=2
==
Sama dengan
5==2
!=
Tidak sama dengan
4!=2
Operator ini banyak digunakan untuk melakukan pemeriksaan terhadap sebuah ekspresi (kondisi) dalam struktur percabangan dan pengulangan.

3. Operator logika

Operator logika adalah operator yang digunakan untuk melakukan operasi dimana nilai yang dihasilkan dari operasi tersebut hanya berupa nilai benar dan salah. Nilai ini disebut Boolean.  Adapun yang termasuk kedalam operator logika  dalam
C++ adalah seperti tabel berikut ini:


Contoh Program5:
 #include <iostream>  #include <conio.h>  using namespace std;  int main() {
 cout<<"1 && 1 = "<<(1 && 1)<<endl;  cout<<"1 && 0 = "<<(1 && 0)<<endl;  cout<<"0 && 0 = "<<(0 && 0)<<endl;  cout<<"0 && 1 = "<<(0 && 1)<<endl;  cout<<"1 || 1 = "<<(1 || 1)<<endl; cout<<"1 || 0 = "<<(1 || 0)<<endl;

cout<<"0 || 0 = "<<(0 || 0)<<endl;

cout<<"0 || 1 = "<<(0 || 1)<<endl;

cout<<"!1 = "<<!1<<endl;

cout<<"!0 = "<<!0<<endl;

getch();

 return 0;

}


 Output dari contoh Program 5:


Increment Dan Decrement

Increment  

Increment adalah suatu penambahan nilai yang terjadi pada sebuah variable. Adapun operator yang digunakan untuk melakukan increment adalah operator ++. Operator ini akan menambahkan nilai dari suatu variable dengan nilai 1. Dalam bahasa C++ ada dua jenis increment  yaitu pre-increment dan post-increment. Pre-increment adalah melakukan penambahan nilai sebelum suatu variable itu diproses, sedangkan Postincrement  adalah melakukan proses terlebih dahulu sebelum dilakukan penambahan nilai.
Contoh Program 6:


Output contoh Program 6:


Decrement

             Decrement    merupakan    kebalikan    dari    proses    increment,    yaitu    menurunkan 
(mengurangi) nilai dari suatu variabel. Dibagi dua jenis yaitu pre-decrement, dan postdecrement.

Contoh program 7 :

Output contoh Program 7:




Tipe Casting
Tipe casting yaitu  tipe data sementara, artinya mengubah tipe data suatu variable hanya dalam operasi aritmatika. Setelah operasi aritmatika,tipe data variabel tersebut tetap sesuai deklarasi awalnya.
Contoh program8:

 //contoh penggunaan type casting
 #include <iostream>

#include <conio.h>

using namespace std;

int main() {

int x,y,mod;

float hasil;

cout<<"Contoh penggunaan / dan %\n\n";  
cout<<"Masukkan angka pertama (x) = ";cin>>x;  
cout<<"Masukkan angka kedua (y) = ";cin>>y;
 hasil=x/y;  mod=x%y;
 cout<<"\nHasil pembagian = "<<hasil;  cout<<"\nSisa hasil bagi = "<<mod;
 getch();    return 0;
 }

Output Program 8:
 Penjelasan:
untuk hasil pembagian seharusnya 3,5 karena dari 7 dibagi 2 adalah 3,5. Mengapa demikian?karena variabel a dan b bertipe integer. Tetapi jika variabel a dan b dirubah menjadi tipe data float maka akan eror . Untuk dua variabel x dan y yang bertipe integer tersebut tidak bisa digunakan untuk operasi aritmatik mod %, sedangkan operasi pembagian /  untuk variabel hasil dan salah satu variabel yang akan dibagi harus bertipe float. Jadi artinya dengan adanya dua operasi aritmatik tersebut dalam satu program  dan dengan variabel yang sama ini tidak bisa dikerjakan. Dengan demikian agar kedua operasi tersebut bisa berjalan bersama dalam satu program maka dibutuhkan type casting  sehingga menjadi seperti berikut ini:
          #include <iostream>
          #include <conio.h> using namespace std;

int main() {

int x,y,mod;

float hasil;

cout<<"Contoh penggunaan / dan %\n\n";  
cout<<"Masukkan angka pertama (x) = ";cin>>x;   cout<<"Masukkan angka kedua (y)   = ";cin>>y;
              hasil=float(x)/y;  hasil= x/float(y);
              mod=x%y;
                cout<<"\nHasil pembagian = "<<hasil;    cout<<"\nSisa hasil bagi = "<<mod;   getch();  return 0; }
                                     \ i i i                
Outputnya adalah:

Mengatur angka desimal dan non desimal

Caranya:
1.       menggunakan instruksi setprecision(n)
2.       menggunakan instruksi setiosflag(ios::fixed) Kedua instruksi diatas memerlukan header file iomanip.h
Contoh program 9:
            //penggunaan setprecision
            #include <iostream>
                #include <conio.h>   #include <iomanip.h>   main() {        int a,b;        float c;
                  cout<<"Contoh penggunaan / dan %\n\n";           cout<<"Masukkan angka pertama (a) = ";cin>>a;            cout<<"Masukkan angka kedua   (b) = ";cin>>b;            c=float(a)/b;   cout<<"\nHasilpembagian = "<<setprecision(3)<<c;

  getch();

return 0;

}


Keterangan : 
setprecision (3) à tempat yang dipesan baik untuk nilai bulat maupun desimal adalah 3.
Contoh Program 10:
//penggunaan setprecision dan setiosflags

#include <iostream>

#include <conio.h>

#include <iomanip.h>


 main() {
   int a,b;
   float c;
   cout<<"Contoh penggunaan / dan %\n\n";

  cout<<"Masukkan angka pertama (a) = ";cin>>a;

  cout<<"Masukkan angka kedua   (b) = ";cin>>b;

  c=float(a)/b;

  cout<<"\nHasil pembagian          = "  
 <<setiosflags(ios::fixed)<<setprecision(2)<<c;  
  getch();}

Keterangan :
setiosflags(ios::fixed)<<setprecision(2) à tempat yang dipesan untuk angka desimal saja.
Contoh program 11:
 //penggunaan setprecision untuk data yang nilainya besar
 #include <iostream>
 #include <conio.h>
 #include <math.h>  #include <iomanip.h>
 main() {    char nama[10];
   double gpokok,pot,tunj,gbersih;    cout<<"Nama karyawan : ";cin>>nama;    cout<<"Gaji pokok    : ";cin>>gpokok;    cout<<"Tunjangan     : ";cin>>tunj;    cout<<"Potongan      : ";cin>>pot;   gbersih=gpokok+tunj-pot;

  cout<<"\n\nGaji bersih : "<<setpecision(10)<<gbersih;

  getch();}



Keterangan:
Instruksi setprecision(10) bisa dihilangkan seandainya gaji bersih kurang dari 1 juta, tetapi jika lebih dari 1 juta maka akan ditampilkan dalam bentuk eksponensial sehingga perlu ketelitian dalam membaca hasilnya.

Language