Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
Diterbitkan olehShinta Iskandar Telah diubah "6 tahun yang lalu
1
Operator dan Ekspresi TEE 2103 Algoritma dan Pemrograman
Dosen: Abdillah, MIT Hp: Website:
2
Tujuan Mahasiswa memahami jenis operator dan ekspresi serta penggunaannya dalam program C.
3
Operator dan Ekspresi Operator adalah karakter simbol yang menentukan sebuah ekspresi. Misalnya pada ekspresi x + y karakter + adalah operator, sedangkan karakter x dan y adalah operand. Pada C terdapat operator aritmetika, perbandingan, logika, penaikan, penurunan dan penugasan.
4
Operator Aritmetika Operator aritmetika terdiri atas ‒ * / dan % (modulus). Ekspresi x/y pada bilangan bulat akan memotong semua angka di belakang koma. Misalnya hasil pembagian bilangan bulat 5/9 yakni 0,55 akan terpotong menjadi 0. Contoh lain: 4/3, 8/3 dan 15/ akan menghasilkan 1, 2 dan 3.
5
Operator Modulus Ekspresi x%y menghasilkan sisa hasil pembagian x/y.
Misalnya ekspresi 5%9 menghasilkan nilai 9. Contoh lain: 5%3, 11%4 dan 15%5 akan menghasilkan 2, 3 dan 0. Operator % tidak dapat diaplikasikan pada bilangan berkoma (float dan double).
6
Precedence Operator * / dan % memiliki precedence (derajat komputasi) yang sama. Operator + dan ‒ memiliki derajat komputasi lebih rendah.
7
Operator Perbandingan
Operator relasional (perbandingan) terdiri atas > >= < <= == dan !=. Operator > >= < dan <= memiliki derajat komputasi yang sama. Operator == dan != memiliki derajat komputasi lebih rendah. Operator perbandingan memiliki derajat komputasi lebih rendah daripada operator aritmetika.
8
Operator Logika Operator logika terdiri atas && dan ||. Ekspresi logika bernilai 1 jika benar 0 jika salah. x y x && y B S x y x || y B S Derajat komputasi operator && lebih tinggi daripada operator || dan derajat komputasi keduanya lebih rendah daripada operator perbandingan.
9
Contoh Program Tahun kabisat diuji menggunakan operator aritmetika, perbandingan dan logika. Tahun kabisat adalah tahun yang habis dibagi 4 dan tidak habis dibagi 100, atau tahun yang habis dibagi 400. if ((tahun%4 == 0 && tahun%100 != 0) || tahun%400 == 0) printf("%d adalah tahun kabisat\n", tahun); else printf("%d bukan tahun kabisat\n", tahun);
10
Latihan Tulislah sebuah program yang membaca sebuah bilangan tahun dan menentukan apakah tahun tersebut adalah kabisat atau bukan. Gunakan fungsi scanf untuk membaca nilai tahun dari piranti masukan (keyboard). printf("Masukkan bilangan tahun: "); scanf("%d",&tahun);
11
Konversi Tipe Data Jika sebuah operator memiliki operand yang berbeda tipe, maka operand itu dikonversi dengan aturan sbb: Jika salah satu operand adalah long double, konversi operand yang lainnya ke long double. Atau jika salah satu operand adalah double, konversi operand yang lainnya ke double. Atau jika salah satu operand adalah float, konversi operand yang lainnya ke float. Atau konversi char dan short ke int Maka jika salah satu operand adalah long, konversi operand yang lainnya ke long.
12
Operator Menaik dan Menurun
C menyediakan operator untuk menaikkan dan menurunkan nilai variabel, yakni ++ dan ‒‒. Operator menaik menambah 1 pada operand sedangkan operator menurun mengurangi 1. Penulisan operator menaik dan menurun bisa sebagai awalan atau akhiran. Misalnya n memiliki nilai 5, kemudian x = n++ ini berarti memberi nilai 5 pada x, tapi x = ++n akan memberi nilai 6 pada x.
13
Operator Penugasan Operator penugasan adalah +=. Ekspresi i = i + 2
dapat ditulis dalam bentuk ringkas i += 2
14
Ekspresi Bersyarat if (a > b) z = a; else z = b;
Statement di atas dapat ditulis dalam ekspresi bersyarat dengan format sbb: expr1 ? expr2 : expr3; Ekspresi expr1 dievaluasi pertama kali. Jika kondisi (syarat) bernilai benar, maka expr2 dievaluasi. Jika salah, maka ekspresi expr3 dievaluasi. Hanya salah satu dari expr2 dan expr3 yang dievaluasi. z = (a > b) ? a : b;
15
Contoh Program Sebuah contoh program konversi char ke int adalah fungsi lower, yang memetakan karakter tunggal ke huruf kecil untuk himpunan karakter ASCII. /* lower: konversi c ke huruf kecil ASCII */ int lower(int c) { if (c >= 'A' && c <= 'Z') return c + 'a' - 'A'; else return c; }
16
Latihan Tulislah sebuah sebuah fungsi htoi (s), yang mengkonversi string hexadesimal ke nilai bilangan bulat. Angka yang diperbolehkan adalah 0-9, a-f dan A-F.
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.