+ All Categories
Home > Documents > LAPORAN PRAKTIKUM III OPERATOR

LAPORAN PRAKTIKUM III OPERATOR

Date post: 11-Nov-2023
Category:
Upload: mboir
View: 0 times
Download: 0 times
Share this document with a friend
38
LAPORAN PRAKTIKUM III OPERATOR Disusun untuk Memenuhi Matakuliah Praktikum Dasar Pemrograman C++ Dibimbing oleh Bapak Wahyu Sakti Gunawan Irianto Oleh: Wenda Aditama 150533604429 S1 PTI’15 OFF D UNIVERSITAS NEGERI MALANG FAKULTAS TEKNIK JURUSAN TEKNIK ELEKTRO PRODI S1 PENDIDIKAN TEKNIK INFORMATIKA Oktober 2015
Transcript

LAPORAN PRAKTIKUM III

OPERATOR

Disusun untuk Memenuhi Matakuliah Praktikum Dasar Pemrograman C++

Dibimbing oleh Bapak Wahyu Sakti Gunawan Irianto

Oleh:

Wenda Aditama

150533604429

S1 PTI’15 OFF D

UNIVERSITAS NEGERI MALANG

FAKULTAS TEKNIK

JURUSAN TEKNIK ELEKTRO

PRODI S1 PENDIDIKAN TEKNIK INFORMATIKA

Oktober 2015

OPERATOR

Tujuan

Setelah mempelajari bab ini diharapkan mahasiswa akan mampu :

1. Menjelaskan tentang fungsi operator

DASAR TEORI

DEFINISI OPERATOR

Operasi adalah suatu proses yang dikerjakan oleh program untuk melakukan

tindakan tertentu pada suatu nilai. Operasi selalu melibatkan operand dan

operator. Operand adalah suatu nilai yang dioperasikan sedangkan operator

sebagai pelaku operasi tersebut.

JENIS-JENIS OPERATOR

Operator digunakan untuk menyatakan suatu perhitungan/operasi. Operator dapat

terbagi atas:

1. Operator penugasan

2. Operator aritmatika

3. Operator relational

4. Operator unary

5. Operator logika

6. Operator Bitwise

Operator penugasan (=)

Operator penugasan memberikan nilai ke variabel.

x = 5;

Pernyataan ini memberikan nilai integer 5 pada variabel x Tugas operasi selalu

berlangsung dari kanan ke kiri, dan tidak pernah sebaliknya:

x = y;

Pernyataan ini memberikan ke variabel x nilai yang terkandung dalam

variabel y Nilai x pada saat pernyataan ini dieksekusi hilang dan diganti dengan

nilai y

Pertimbangkan juga bahwa kita hanya menetapkan nilai y untuk x pada saat

penugasan operasi. Oleh karena itu, jika yperubahan pada saat nanti, tidak akan

mempengaruhi nilai baru yang diambil oleh x

Sebagai contoh, mari kita lihat kode berikut - saya telah menyertakan evolusi

konten yang disimpan dalam variabel sebagai komentar:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

// assignment operator

#include <iostream>

using namespace std;

int main ()

{

int a, b; // a:?, b:?

a = 10; // a:10, b:?

b = 4; // a:10, b:4

a = b; // a:4, b:4

b = 7; // a:4, b:7

cout << "a:" ;

cout << a;

cout << " b:" ;

cout << b;

}

a: 4

b: 7

Edit & Run

Program ini sidik jari di layar nilai akhir dari a dan b (4 dan 7, masing-

masing). Perhatikan bagaimana a tidak terpengaruh oleh modifikasi

akhir b meskipun kami menyatakan a = b sebelumnya.

Operasi penugasan adalah ekspresi yang dapat dievaluasi. Itu berarti bahwa tugas

itu sendiri memiliki nilai, dan -untuk mendasar jenis- nilai ini adalah salah satu

yang ditugaskan dalam operasi. Sebagai contoh:

y = 2 + (x = 5);

Dalam ungkapan ini, y ditugaskan hasil penambahan 2 dan nilai ekspresi tugas

lain (yang memiliki sendiri nilai 5). Hal ini kira-kira setara dengan:

1

2

x = 5; y = 2 + x;

Dengan hasil akhir dari menugaskan 7 untuk y

Ekspresi berikut ini juga berlaku di C ++:

x = y = z = 5;

Ini memberikan 5 ke tiga variabel: x y dan z selalu dari kanan-ke-kiri.

Operator aritmatika (+, -, *, /,%)

Lima operasi aritmatika didukung oleh C ++ adalah:

operator deskripsi

+ tambahan

- pengurangan

* perkalian

/ divisi

% modulo

Operasi penambahan, pengurangan, perkalian dan pembagian sesuai harfiah ke

operator matematika masing-masing.Yang terakhir, operator Modulo, diwakili

dengan tanda persen % memberikan sisa pembagian dari dua nilai. Sebagai

contoh:

x = 11 % 3;

Hasil dalam variabel x yang mengandung nilai 2, karena membagi 11 dengan 3

hasil di 3, dengan sisa 2.

Senyawa tugas (+ =, - =, * =, / =,% =, >> =, << =, & =, ^ =, | =)

Operator penugasan senyawa memodifikasi nilai sekarang dari variabel dengan

melakukan operasi di atasnya. Mereka setara dengan menugaskan hasil operasi

untuk operan pertama:

ekspresi setara dengan...

y += x; y = y + x;

x -= 5; x = x - 5;

x /= y; x = x / y;

price *= units + 1; price = price * (units+1);

dan sama untuk semua operator penugasan senyawa lainnya. Sebagai contoh:

1

2

3

4

5

6

7

8

9

10

11

// compound assignment operators

#include <iostream>

using namespace std;

int main ()

{

int a, b=3; a = b; a+=2; // equivalent to a=a+2

cout << a;

}

5

Edit

& Run

Kenaikan dan pengurangan (++, -)

Beberapa ekspresi dapat dipersingkat bahkan lebih: peningkatan operator ++ dan

operator penurunan -- meningkatkan atau mengurangi oleh salah satu nilai yang

tersimpan dalam variabel. Mereka setara dengan +=1 dan ke -=1 masing-

masing. Demikian:

1

2

3

++x; x+=1; x=x+1;

semua sama dalam fungsi; mereka bertiga naik satu nilai x

Dalam C compiler awal, tiga ekspresi sebelumnya mungkin telah menghasilkan

kode dieksekusi berbeda tergantung pada mana yang digunakan. Saat ini, jenis

optimasi kode umumnya dilakukan secara otomatis oleh kompilator, sehingga tiga

ekspresi harus menghasilkan kode dieksekusi sama persis.

Sebuah keganjilan operator ini adalah bahwa hal itu dapat digunakan baik sebagai

awalan dan akhiran sebagai. Itu berarti bahwa hal itu dapat ditulis baik sebelum

nama variabel ++x atau setelah x++ Meskipun dalam ekspresi sederhana

sepertix++ atau ++x keduanya memiliki arti yang sama persis; dalam ekspresi lain

di mana hasil operasi kenaikan atau penurunan dievaluasi, mereka mungkin

memiliki perbedaan penting dalam arti mereka: Dalam hal operator peningkatan

digunakan sebagai awalan ++x dari nilai, yang mengevaluasi ekspresi dengan nilai

akhir x setelah itu sudah meningkat. Di sisi lain, dalam hal ini digunakan sebagai

akhiran x++ nilai tersebut juga meningkat, namun ekspresi bernilai nilai yang x

punya sebelum meningkat. Melihat perbedaan:

Contoh 1 Contoh 2

x = 3;

y = ++x;

// x contains 4, y contains 4

x = 3;

y = x++;

// x contains 4, y contains 3

Dalam Contoh 1, nilai yang diberikan untuk y adalah nilai x setelah

meningkat. Sementara dalam Contoh 2, itu adalah nilai x sebelumnya yang

meningkat.

Relasional dan perbandingan operator (==,! =,>, <,> =, <=)

Dua ekspresi dapat dibandingkan dengan menggunakan operator relasional dan

kesetaraan. Misalnya, untuk mengetahui apakah dua nilai yang sama atau jika

salah satu lebih besar dari yang lain.

Hasil operasi tersebut benar atau (yaitu, nilai Boolean) palsu.

Operator relasional dalam C ++ adalah:

operator deskripsi

== Sama dengan

!= Tidak sama dengan

< Kurang dari

> Lebih besar dari

<= Kurang dari atau sama dengan

>= Lebih besar dari atau sama dengan

Berikut ada beberapa contoh:

1

2

3

4

5

(7 == 5) // evaluates to false

(5 > 4) // evaluates to true

(3 != 2) // evaluates to true

(6 >= 6) // evaluates to true

(5 < 5) // evaluates to false

Tentu saja, itu bukan konstanta hanya numerik yang dapat dibandingkan, tetapi

hanya nilai apapun, termasuk, tentu saja,

variabel. Misalkan a=2 b=3 dan c=6 maka:

1

2

3

4

(a == 5) // evaluates to false, since a is not

equal to 5

(a*b >= c) // evaluates to true, since (2*3 >= 6) is

true

(b+4 > a*c) // evaluates to false, since (3+4 > 2*6)

is false ((b=2) == a) // evaluates to true

Hati-hati! Operator penugasan (operator = dengan satu tanda sama) tidak sama

dengan operator kesetaraan perbandingan (operator == dengan dua tanda

sama); yang pertama = memberikan nilai pada kanan ke variabel di sebelah kiri,

sementara yang lain == membandingkan apakah nilai-nilai di kedua sisi operator

yang sama. Oleh karena itu, dalam ekspresi terakhir (b=2) == a pertama kita

ditugaskan nilai 2 untuk b dan kemudian kita membandingkannya dengan a(yang

juga menyimpan nilai 2), menghasilkan true

Operator logika (!, &&, ||)

! Adalah C ++ Operator untuk operasi Boolean TIDAK. Hanya memiliki satu

operan, ke kanan, dan membalikkan itu, memproduksi false jika operan

adalah true dan true jika operan adalah false Pada dasarnya, ia mengembalikan

nilai Boolean berlawanan mengevaluasi operan nya. Sebagai contoh:

1

2

3

4

!(5 == 5) // evaluates to false because the

expression at its right (5 == 5) is true

!(6 <= 4) // evaluates to true because (6 <= 4)

would be false ! true // evaluates to false ! false

// evaluates to true

Operator logis && dan || digunakan ketika mengevaluasi dua ekspresi untuk

mendapatkan hasil relasional tunggal.Operator && sesuai dengan operasi logis

Boolean AND, yang menghasilkan true jika kedua Operand

adalah true dan fase sebaliknya. Panel berikut menunjukkan hasil

operator && mengevaluasi ekspresi a&&b

&& OPERATOR (dan)

a b a && b

true true true

true false false

false true false

false false false

Operator || sesuai dengan operasi logis Boolean OR, yang

menghasilkan true jika salah satu dari operan adalah truesehingga menjadi

salah hanya jika kedua operan adalah palsu. Berikut adalah hasil yang mungkin

dari a||b

|| OPERATOR (atau)

a b a || b

true true true

true false true

false true true

false false false

Sebagai contoh:

1

2

( (5 == 5) && (3 > 6) ) // evaluates to false (

true && false ) ( (5 == 5) || (3 > 6) ) // evaluates

to true ( true || false )

Bila menggunakan operator logika, C ++ hanya mengevaluasi apa yang

diperlukan dari kiri ke kanan untuk datang dengan hasil relasional gabungan,

mengabaikan sisanya. Oleh karena itu, dalam contoh

terakhir (5==5)||(3>6) C ++ mengevaluasi dulu

apakah 5==5 adalah true dan jika demikian, itu tidak pernah memeriksa

apakah 3>6 adalah true atau tidak. Hal ini dikenal sebagai arus pendek

evaluasi, dan bekerja seperti ini untuk operator tersebut:

operator arus pendek

&& jika ekspresi sisi kiri adalah false hasil gabungan false (ekspresi

sisi kanan tidak pernah dievaluasi).

|| jika ekspresi sisi kiri adalah true hasil gabungan true (ekspresi sisi

kanan tidak pernah dievaluasi).

Hal ini sebagian besar penting ketika ekspresi kanan memiliki efek samping,

seperti mengubah nilai-nilai:

if ( (i<10) && (++i<n) ) { /*...*/ } // note that

the condition increments i

Di sini, ekspresi kondisional gabungan akan meningkatkan i per satu, tetapi

hanya jika kondisi di sebelah kiri && adalahtrue karena jika tidak, kondisi di sisi

kanan ++i<n tidak pernah dievaluasi.

Operator ternary kondisional (?)

Operator kondisional mengevaluasi ekspresi, kembali satu nilai jika ekspresi yang

mengevaluasi untuk true dan yang berbeda jika ekspresi bernilai

sebagai false Sintaks-nya adalah:

condition ? result1 : result2

Jika condition ini true seluruh ekspresi mengevaluasi ke result1 dan

sebaliknya untuk result2

1

2

3

4

7==5 ? 4 : 3 // evaluates to 3, since 7 is not

equal to 5. 7==5+2 ? 4 : 3 // evaluates to 4, since

7 is equal to 5+2. 5>3 ? a : b // evaluates to the

value of a, since 5 is greater than 3. a>b ? a : b

// evaluates to whichever is greater, a or b.

Sebagai contoh:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

// conditional operator #include <iostream> using namespace std; int main () { int a,b,c; a=2;

b=7; c = (a>b) ? a : b; cout << c << '\n' ; }

7 Edit &

Run

Dalam contoh ini, a adalah 2, dan b adalah 7, sehingga ekspresi yang

dievaluasi a>b tidak true sehingga nilai pertama yang ditentukan setelah tanda

tanya dibuang mendukung nilai kedua (yang setelah usus besar ) yang b (dengan

nilai 7).

Operator koma (,)

Operator koma , digunakan untuk memisahkan dua atau lebih ekspresi yang

disertakan di mana hanya satu ekspresi diharapkan. Ketika set ekspresi harus

dievaluasi untuk nilai, hanya ekspresi paling kanan dianggap.

Sebagai contoh, kode berikut:

a = (b=3, b+2);

pertama akan menetapkan nilai 3 untuk b dan kemudian menetapkan b+2 untuk

variabel a Jadi, pada akhirnya, variabel aakan berisi nilai 5 sedangkan

variabel b akan berisi nilai 3.

Operator bitwise (&, |, ^, ~, <<, >>)

Operator bitwise memodifikasi variabel mengingat pola bit yang mewakili nilai-

nilai yang mereka simpan.

operator asm setara deskripsi

& AND Bitwise DAN

| OR Bitwise OR inklusif

^ XOR Bitwise eksklusif OR

~ NOT Komplemen unary (bit inversi)

<< SHL Pergeseran bit kiri

>> SHR Pergeseran bit yang tepat

Operator pengecoran jenis eksplisit

Operator pengecoran tipe memungkinkan untuk mengkonversi nilai dari jenis

tertentu untuk jenis lain. Ada beberapa cara untuk melakukan ini di C ++. Yang

paling sederhana, yang telah diwarisi dari bahasa C, adalah untuk mendahului

ekspresi yang akan dikonversi oleh tipe baru tertutup antara tanda kurung (()):

1

2

3

int i; float f = 3.14; i = ( int ) f;

Kode sebelumnya mengubah floating-point nomor 3.14 untuk nilai

integer 3 sisanya hilang. Di sini, operator typecasting adalah (int) Cara lain

untuk melakukan hal yang sama di C ++ adalah dengan menggunakan notasi

fungsional sebelumnya ekspresi yang akan dikonversi oleh jenis dan melampirkan

ekspresi antara kurung:

i = int (f);

Kedua cara jenis pengecoran yang berlaku di C ++.

sizeof

Operator ini menerima satu parameter, yang dapat berupa jenis atau variabel, dan

mengembalikan ukuran dalam byte dari jenis atau objek:

x = sizeof ( char );

Di sini, x ditugaskan nilai 1 karena char adalah jenis dengan ukuran satu byte.

Nilai yang dikembalikan oleh sizeof adalah waktu kompilasi konstan, sehingga

selalu ditentukan sebelum eksekusi program.

Operator lain

Kemudian pada tutorial ini, kita akan melihat beberapa operator, seperti yang

mengacu pointer atau spesifik untuk pemrograman berorientasi objek.

Didahulukan dari operator

Sebuah ekspresi tunggal mungkin memiliki beberapa operator. Sebagai contoh:

x = 5 + 7 % 2;

Dalam C ++, ekspresi di atas selalu memberikan 6 untuk variabel x % operator

memiliki prioritas lebih tinggi daripada +operator, dan selalu dievaluasi

sebelumnya. Bagian dari ekspresi dapat tertutup dalam kurung untuk menimpa

urutan prioritas ini, atau untuk membuat eksplisit jelas efek yang

diinginkan. Melihat perbedaan:

1

2

x = 5 + (7 % 2); // x = 6 (same as without

parenthesis) x = (5 + 7) % 2; // x = 0

Dari terbesar untuk prioritas terkecil, operator C ++ dievaluasi dalam urutan

sebagai berikut:

Tingkat Kelompok

Precedence Operator Deskripsi Pengelompokan

1 Cakupan :: kualifikasi lingkup Kiri ke kanan

2 Postfix (unary)

++ -- increment postfix /

pengurangan

Kiri ke kanan () bentuk fungsional

[] tanda tangan

. -> Akses anggota

3 Prefix (unary)

++ -- kenaikan prefix /

pengurangan

Kanan-ke-kiri

~ ! bitwise NOT / logis

TIDAK

+ - awalan unary

& * referensi /

dereference

new delete alokasi / dealokasi

sizeof parameter pack

( type ) C-gaya jenis-casting

4 Pointer-ke-

anggota .* ->* Akses pointer Kiri ke kanan

5 Aritmatika:

skala * / %

multiply, membagi,

modulo Kiri ke kanan

6 Aritmatika:

Selain + -

Selain itu,

pengurangan Kiri ke kanan

7 Bitwise

pergeseran << >>

bergeser ke kiri,

bergeser ke kanan Kiri ke kanan

8 Penghubung < > <= >= operator

perbandingan Kiri ke kanan

9 Persamaan == != kesetaraan /

ketimpangan Kiri ke kanan

10 Dan & bitwise DAN Kiri ke kanan

11 Eksklusif atau ^ bitwise XOR Kiri ke kanan

12 Inklusif atau | bitwise OR Kiri ke kanan

13 Konjungsi && logis DAN Kiri ke kanan

14 Pemisahan || logis OR Kiri ke kanan

15 Ekspresi tugas-

tingkat

= *= /= %=

+= -=

>>= <<= &=

^= |=

tugas / penugasan

senyawa Kanan-ke-kiri

?: operator kondisional

16 Pengurutan , koma pemisah Kiri ke kanan

Ketika sebuah ekspresi memiliki dua operator dengan tingkat didahulukan

sama, pengelompokan menentukan mana yang dievaluasi pertama: baik kiri ke

kanan atau kanan-ke-kiri.

Latihan Praktikum I

Pemrograman C++

Nama Program : Operator Aritmatika

Bahasa Pemrogramam : C++

Compiler : MinGW Developer Studio

Script program :

1. Script Program Pertama yang salah

#include <stdio.h>

#include <iostream.h>

void main() {

float a, b, c=0, d=0, e=0, f=0;

cout<<"masukan Nilai A : ";

cin>>a;

cout<<"masukan Nilai B : ";

cin>>b;

c=a*b;

d=a\b;

e=a+b;

f=a-b;

cout<<”Hasil dari C=A*B= “<<c<<endl;

cout<<”Hasil dari C=A/B= “<<d<<endl;

cout<<”Hasil dari C=A+B= “<<e<<endl;

cout>>”Hasil dari C=A-B= “<<f<<endl;

getch();

}

2. Script Program yang benar

#include <conio.h>

#include <iostream.h>

int main()

{

float a, b, c=0, d=0, e=0, f=0;

cout<<"Masukkan Nilai A:";

cin>>a;

cout<<"Masukkan Nilai B:";

cin>>b;

c=a*b;

d=a/b;

e=a+b;

f=a-b;

cout<<"Hasil dari C=A*B= "<<c<<endl;

cout<<"Hasil dari D=A/B= "<<d<<endl;

cout<<"Hasil dari E=A+B= "<<e<<endl;

cout<<"Hasil dari F=A-B= "<<f<<endl;

getch();

}

Output Program :

Flowchart :

Penjelasan Program :

Pada latihan 1 diatas menjalankan operator aritmetika sesuai dengan input yang

dimasukkan dan diproses dengan rumus dari operator aritmetika tersebut.

Identifikasi kesalahan

1. Menggunakan tipe data int bukan void.

2. Tanda kurung kurawal ( { ) sebaiknya berada di bawah fungsi int main.

3. Menggunakan tanda “ / ” bukan “ \ ” untuk operasi aritmetika pembagian.

4. Rumus menggunakan variabel yang berbeda seperti a, b, c, d, e dan f ,

bukan variabel C semua

5. Operator bitwise terbalik, seharusnya menggunakan “<<” bukan “>>”

START

Masukan Nilai a

dan b

Hitung dengan Operator

Aritmatika

Tampilan Hasil

nilai a dan b

END

Latihan Praktikum II

Pemrograman C++

Nama Program : Operator Hierarki Aritmatika

Bahasa Pemrogramam : C++

Compiler : MinGW Developer Studio

Script program :

1. Script Pertama yang salah

#include <studio.h>

#include <iostream.h>

int main () {

float a, b, c, d, e, f;

cout<<”Masukan Nilai A : ”;

cin>>a;

cout<<”Masukan Nilai B : ”;

cin>>b;

cout<<”Masukan Nilai C : ”;

cin>>c;

cout<<”Masukan Nilai D : ”;

cin>>d;

e=a+b*c/d

f=(a+b)*c/d

cout<<”Nilai dari e=a+b*c/d : ”;

cout<<”Nilai dari f=(a+b)*c/d : ”;

}

2. Script Program yang benar

#include <conio.h>

#include <iostream.h>

int main()

{

float a, b, c, d, e, f;

cout<<"Masukkan Nilai A: ";

cin>>a;

cout<<"Masukkan Nilai B: ";

cin>>b;

cout<<"Masukkan Nilai C: ";

cin>>c;

cout<<"Masukkan Nilai D: ";

cin>>d;

e=a+b*c/d;

f=(a+b)*c/d;

cout<<"Nilai dari e=a+b*c/d : "<<e<<endl;

cout<<"Nilai dari f=(a+b)*c/d : "<<f<<endl;

}

Output Program :

Flowchart :

Penjelasan Program :

Pada latihan 2 diatas menjalankan hierarki operator aritmetika sesuai dengan input

yang dimasukkan dan diproses dengan rumus dari operator aritmetika tersebut.

Identifikasi kesalahan

1. Menggunakan variabel yang huruf kecil bukan huruf kapital misalnya e

bukan E .

START

Masukan Nilai a,

b, c, d

Hitung Hierarki Operator

Aritmatika

Tampilan Nilai e, f

END

Latihan Praktikum III

Pemrograman C++

Nama Program : Operator Increment & Decrement

Bahasa Pemrogramam : C++

Compiler : MinGW Developer Studio

Script program :

1. Script pertama yang salah

#include <studio.h>

#include <conio.h>

int main() {

int a=8,b=4,x=8,y=4;

printf(”Nilai A = %d”,a) ;

printf(”\nNilai ++A = %d”,++a) ;

printf(”\nNilai A = %d”,a) ;

printf(”\nNilai B = %d,b") ;

printf(”\nNilai --B = %d”,--b) ;

printf(”\nNilai B = %d”,b) ;

printf(”\n\nNilai X = %d”,x) ;

printf(”\nNilai X++ = %d”,x++) ;

printf(”\nNilai X = %d”,x) ;

printf(”\nNilai Y = %d”,y) ;

printf(”\nNilai Y-- = %d”,y--) ;

printf(”\nNilai X = %d”,y) ;

getch ()

}

2. Script program yang benar

#include <stdio.h>

#include <conio.h>

int main()

{

int a=8, b=4, x=8, y=4;

printf("Nilai A = %d",a);

printf("\nNilai ++A = %d",++a);

printf("\nNilai A = %d",a);

printf("\nNilai B = %d",b);

printf("\nNilai --B = %d",--b);

printf("\nNilai B = %d",b);

printf("\n\nNilai X = %d",x);

printf("\nNilai X++ = %d",x++);

printf("\nNilai X = %d",x);

printf("\nNilai Y = %d",y);

printf("\nNilai Y-- = %d",y--);

printf("\nNilai Y = %d",y);

getch();

}

Output Program :

Flowchart :

Penjelasan Program :

Pada latihan 3 diatas menjalankan operator increment & decrement sesuai dengan

input yang dimasukkan dan diproses dengan rumus dari operator aritmetika

tersebut.

Identifikasi kesalahan

1. Tanda kutip seharusnya berada setelah kalimat yang dicetak, bukan setelah

masukan variabel .

START

Membaca Nilai a,

b, x, y

Hitung dengan Operator

Increment & Decrement

Tampilan Nilai a,

b, x ,y

END

Latihan Praktikum IV

Pemrograman C++

Nama Program : Operator Relasi

Bahasa Pemrogramam : C++

Compiler : MinGW Developer Studio

Script program :

1. Script pertama yang salah

#include <studio.h>

#include <conio.h>

void main () {

int m=5,n=7;

if(m==n) cout<<M<<”Sama Dengan ”<<n<<endl;

else if(m!=n)cout<<m<<” Tidak sama dengan ”<<n<<endl;

else if(m>n)cout<<m<<” Lebih besar dari ”<<n<<endl;

else if(m<n)cout<<m<<” Lebih kecil dari ”<<n<<endl;

getch ();

}

2. Script Segitiga Kedua

#include <iostream.h>

#include <conio.h>

int main()

{

int m=5, n=7;

if(m==n)cout<<m<<" Sama Dengan "<<n<<endl;

else if(m!=n)cout<<m<<" Tidak sama dengan "<<n<<endl;

if(m>n)cout<<m<<" Lebih Besar Dari "<<n<<endl;

else if(m<n)cout<<m<<" Lebih Kecil Dari "<<n<<endl;

getch();

}

Output Program :

Flowchart :

START

Nilai m dan n

dihubungkan dengan

operator relasi

m dan n

END

Nilai m dan n

Sama Dengan

Lebih besar dari

Lebih kecil dari

Penjelasan Program :

Pada latihan 4 diatas menjalankan operator relasi (perbandingan.

Identifikasi kesalahan

1. Variabel M seharusnya di tulis dengan huruf kecil.

Latihan Praktikum V

Pemrograman C++

Nama Program : Operator Logika

Bahasa Pemrogramam : C++

Compiler : MinGW Developer Studio

Script program :

a) Latihan Va

1. Script pertama yang salah

//Program Operator Logika

#include <iostream.h>

#include <conio.h>

int main ()

{

int m = 166;

cout<<”(m>=0 && m<=150) -> ”<<(m>=0 & m<=150)<<endl;

cout<<”(m>=0 | | m<=150) -> ”<<(m>=0 | | m<=150)<<endl;

getch ()

}

2. Script program yang benar

//Program Operator Logika

#include <iostream.h>

#include <conio.h>

int main()

{

int m=166;

cout<<" (m>=0 && m<=150) -> "<< (m>=0 & m<=150)<<endl;

cout<<" (m>=0 || m<=150) -> "<< (m>=0 || m<=150)<<endl;

getch();

}

Output Program :

Flowchart :

Penjelasan Program :

Pada latihan 5a diatas menjalankan operasi logika OR atau AND

Identifikasi kesalahan

1. Kesalahan berada dalam tata letak syntax saja.

START

Membaca nilai m

Hitung Nilai m dengan

operator logika

Tampilan output

nilai m

END

b) Latihan Vb (Operasi Logika NOT)

1. Script pertama yang salah

#include <studio.h>

#include <iostream.h>

void main ()

{

int a, b, c; //deklarasi variabel

cout<<”Masukan Nilai A = ”; //Keluarkan String Masukan

Nilai

/* Proses */

b = (a +4 < 10);

c = !(b);

cout<<endl<<”Program Ekspresi NOT”<<endl;

cout>>”Masukan Nilai = ”<<a<<endl;

cout<<”Nilai b = (a + 4 < 10) = ”<<b<<Lendl;

cout<<”Nilai c = !(b) = “<<c;

getch ()

}

2. Script program yang benar

#include <stdio.h>

#include <iostream.h>

int main()

{

int a, b, c;//deklarasi Variabel

cout<<"Masukkan Nilai A = "; //Keluaran String Masukan

Nilai

cin>>a;//Masukan Data integer dari keyboard

/*Proses*/

b = (a + 4 < 10);

c = !(b);

cout<<endl<<"Program Ekspresi NOT "<<endl;

cout<<"Masukkan Nilai = "<<a<<endl;

cout<<"Nilai b = (a + 4 < 10) = "<<b<<endl;

cout<<"Nilai c = !(b) = "<<c;

getchar();

}

Output Program :

Flowchart :

START

Masukan nilai A

Hitung Nilai A dengan

operator logika

Benar atau

Salah

Salah = 0 Benar = 1

END

Penjelasan Program :

Pada latihan 5b diatas menjalankan operasi logika NOT

Identifikasi kesalahan

1. Menggunakan header #include <conio.h> apabila ada getch ();

Latihan Praktikum VI

Pemrograman C++

Nama Program : Operator Bitwise

Bahasa Pemrogramam : C++

Compiler : MinGW Developer Studio

Script program :

1. Script pertama yang salah

#include <iostream.h>

void main ()

{

int x, y;

cout<<”Masukan Nilai X = ”;

cin>>x;

cout<<”Masukan Nilai Y = ”;

cin>>y;

x = x << 1; //geser ke kiri 1 bit

y =y >> 2; //geser ke kanan 2 bit

cout<<”Hasil dari Geser 1 Bit Kekiri = ”<<Y<<endl;

cout<<”Hasil dari Geser 2 Bit Kekanan = ”<<X<<endl;

getch ();

}

2. Script program yang benar

#include <iostream.h>

int main()

{

int x, y;

cout<<"Masukkan Nilai X = ";

cin>>x;

cout<<"Masukkan Nilai Y = ";

cin>>y;

x = x << 1; //geser ke kiri 1 bit

y = y >> 2; //geser ke kanan 2 bit

cout<<"Hasil dari Geser 1 Bit Kekiri = "<<x<<endl;

cout<<"Hasil dari Geser 2 Bit Kekanan = "<<y<<endl;

getchar();

}

Output Program :

Flowchart :

Penjelasan Program :

Pada latihan 6 diatas menjalankan operator Bitwise.

Identifikasi kesalahan

1. Menghilangkan header #include <conio.h>

2. Variabel X dan Y menjadi x dan y

START

Masukan Nilai x

dan y

Hitung dengan Operator

Bitwise

Tampilan Nilai x

dan y

END

Latihan Praktikum VII

Pemrograman C++

Nama Program : Operatot Bitwise

Bahasa Pemrogramam : C++

Compiler : MinGW Developer Studio

Script program :

1. Script pertama yang salah

#include <studio.h>

#include <conio.h>

#include <iostream.h>

void main ()

{

int a, b, c, d, x, y;

cout<<”Masukan Nilai X = ”; cin>>x;

cout<<”Masukan Nilai Y = ”; cin>>y;

a = x & y;

b = x | y;

c = x ^ y;

cout<<’\n’

cout<<”Hasil dari ”<<x<<” & ”<<y<<” = ”<<a<<endl;

cout<<”Hasil dari ”<<x<<” & ”<<y<<” = ”<<b<<endl;

cout<<”Hasil dari ”<<x<<” & ”<<y<<” = ”<<c<<endl;

getch ();

}

2. Script program yang benar

#include <stdio.h>

#include <conio.h>

#include <iostream.h>

int main()

{

int a, b, c, x, y;

cout<<"Masukkan Nilai X = "; cin>>x;

cout<<"Masukkan Nilai Y = "; cin>>y;

a = x & y;

b = x | y;

c = x ^ y;

cout<<'\n';

cout<<"Hasil dari "<<x<<" & "<<y<<" = "<<a<<endl;

cout<<"Hasil dari "<<x<<" | "<<y<<" = "<<b<<endl;

cout<<"Hasil dari "<<x<<" ^ "<<y<<" = "<<c<<endl;

getch();

}

Output Program :

Flowchart :

Penjelasan Program :

Pada latihan 7 diatas menjalankan operator AND.

Identifikasi kesalahan

1. Menggunakan fungsi int ,bukan void

2. Menggunakan tanda “\n”; bukan ‘\n’;

START

Masukan Nilai x

dan y

Hitung dengan Operator

Bitwise

Tampilan nilai x

dan y

END

Tugas Rumah

Pemrograman C++

Nama Program : Programdari semua fungsi operator

Bahasa Pemrogramam : C++

Compiler : MinGW Developer Studio

Script program :

#include <stdio.h>

#include <conio.h>

#include <iostream.h>

int main()

{

int a, b, c, d, e, j, k, l, m, n;

cout<<" Masukkan nilai a : ";cin>>a;

cout<<" Masukkan nilai b : ";cin>>b;

cout<<" Masukkan nilai c : ";cin>>c;

d = (a*b)-c/(b+a);

e = d << 2;

cout<<"\nNilai dari d = (a*b)-c/(b+a) = ";cout<<d;

cout<<"\nHasil dari Geser 2 Bit Kekiri = ";cout<<e;

cout<<"\n\n Masukkan nilai j : ";cin>>j;

cout<<" Masukkan nilai k : ";cin>>k;

cout<<" Masukkan nilai l : ";cin>>l;

m = j*(k+l);

n = m >> 3;

cout<<"\nNilai dari m = j*(k+l) = ";cout<<m;

cout<<"\nHasil dari Geser 3 Bit Kekanan = ";cout<<n;

cout<<"\n\n";

if(e==n)cout<<e<<" Sama Dengan "<<n<<endl;

else if(e!=n)cout<<e<<" Tidak Sama Dengan "<<n<<endl;

if(e>n)cout<<e<<" Lebih Besar Dari "<<n<<endl;

else if(e<n)cout<<e<<" Lebih Kecil Dari "<<n<<endl;

getch();

}

Output Program :

Flowchart :

START

Masukan Nilai a, b, c dan j, k, l

Tampilan Hasil Nilai a, b, c

dan j, k, l

END

Hitung dengan fungsi Operator

Penjelasan Program :

Program diatas menggunakan semua fungsi dari operator, seperti operator

aritmetika,bitwise, relasi, dll.Masukan dari input nilai tersebut akan diproses

dengan fungsi operator yang sesuai.Setelah akan muncul output yaitu hasil dari

nilai input itu.

KESIMPULAN

1. Dalam belajar pemrograman terlebih dahulu harus mengerti tentang macam-

macam operator dan fungsinya.

2. Kita harus mengerti operator yang tepat dengan program yang akan dibuat.

3. Kita dapat mengatasi kesalahan atau error pada tipe data atau deklarasi variabel

yang ada pada script program.

DAFTAR RUJUKAN

1. Tim Asisten Dosen. 2015. Modul 3 Operator. Malang : Universitas Negeri

Malang.

2. Admin, 2014, Operator, (Online),

(http://www.cplusplus.com/doc/tutorial/operators/). diakses 5 Oktober 2015


Recommended