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; }
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 contohProgram5
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 Post-increment adalah
melakukan proses terlebih dahulu sebelum dilakukan penambahan nilai.
Contoh program6.
Output contoh Program6:
Decrement
Decrement merupakan kebalikan dari proses increment, yaitu
menurunkan (mengurangi) nilai dari suatu variabel. Dibagi dua jenis yaitu pre-decrement,
dan post-decrement.
Contoh
program7
Output contohProgram7
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; }
|
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.
Sumber : Modul Pemrograman Terstruktur STMIK AMIKOM YOGYAKARTA
Sumber : Modul Pemrograman Terstruktur STMIK AMIKOM YOGYAKARTA
No comments:
Post a Comment