MODUL A:\VARIABEL, OPERATOR, DAN EKSPRESI 1.Variabel Variabel merupakan container yang digunakan untuk menyimpan suatu nilai pada sebuah program dengan tipe data tertentu. Bahasa C# mengenal dua tipe variabel data, yaitu: Tipe primitif Tipe referensi Tipe primitif merupakan tipe dasar yang disediakan oleh bahasa pemrograman C# untuk nilai tertentu. Tipe primitif meliputi : Byte, short, Int, long, char, float, double, uint, ushort,ulong, Bool. Tipe referensi merupakan tipe yang dikembangkan dari tipe dasar dengan tujuan memenuhi kebutuhan tipe data kompleks dengan mereferensi kesebuah nilai. Tipe referensi meliputi: Array Class Interface Delegate Tabel perbedaan (tipe primitif dan tipe referensi) TIPE PRIMITIF TIPE REFERENSI Isi fariabel Nilai referensi Disimpan dalam Stack Heap Inisialisasi 0, fase, \0 Null Assingnment Mengopi nilai Mengopi referensi Contoh Int i=17; Int j=i; String S= hello String s1=s; Tipe data Variabel Ada beberapa aturan yang harus kita perhatikan dalam memberikan nama sebuah variabel karena sangat berpengaruh dalam program yang akan dibangnuan, kalau kita salah memberikan nama variabel, maka program kita pasti akan error. Pemberian nama variable dalam Bahasa pemrograman C# harus mengikuti aturan dibawah ini : Modul Pemrograman C# zagal99.wordpress.com 1
Variabel harus terdiri dari sederetan karakter unicode yang diawali oleh karakter huruf atau under score (_) Variabel tidah boleh berupa keyword, kecuali diawali @. C# Merupakan bahasa pemrograman bersifat case sesitif (artinya huruf Kapital dan huruf kecil dianggap berbeda) misalnya nama dan NAMA dianggap berbeda. Variabel harus unik dalam suatu scope //Tiga variabel namespace Variabel int a,b; string nama; a = 100; b = a +10; nama ="rio komara"; Console.WriteLine("nilai a adalah "+ a ); Console.WriteLine("nilai b adalah "+ b ); Console.WriteLine("nilai nama adalah "+ nama ); Tipe Data Boolean Dalam pemrograman C#, tipe data boolean akan memiliki dua nilai, yaitu nilai true mewakili nilai bebar sedangkan nilai false mewakili nilai salah. Tipe data boolean dalam bahasa C# dikenal keyword bool. Modul Pemrograman C# zagal99.wordpress.com 2
//Data Boolean namespace Boolean bool nilai1=true; bool nilai2 = false; Console.WriteLine("Nilai 1 :"+nilai1); Console.WriteLine("Nilai 2 :"+nilai2); Tipe Numerik Tipe Numerik merupakan tipe yang digunakan untuk memanggil masalah seperti perhitungan angka. Tabel daftar tipe Numerik Tipe Byte Nilai Minimum Nilai Maksimum Data Sbyte 1 128 127 Byte 1 0 255 Short 2-32.767 32.767 Ushort 2 0 65.535 Int 4-2.147486.647 2.147.483.648 Uint 4 0 4.294.967.295 Long 8 9.223.372.036 9.223.372.036 854.775.808 854.775.808 Ulong 8 0 18.446.774.073. 709.551.615 Float 4 1,5x10 3,4x10 Double 8 5,0x10 1,7x10 Decimal 16 1,0x10 7,9x10 Modul Pemrograman C# zagal99.wordpress.com 3
//Numerik namespace numerik int nilai1 = 24; float nilai2 = 56; double nilai3 = 5.6; Console.WriteLine("nilai1 :\t" + nilai1); Console.WriteLine("nilai1 :\t" + nilai2); Console.WriteLine("nilai1 :\t" + nilai3); System. Tipe Char dan String Tipe Char dan String merupakan tipe data yang digunakan untuk memanipulasi data berupa sebuah atau sekumpulan karakter. Tipe data char digunakan untuk mengolah hanya satu karakter dan tipe data string digunakan untuk mengolah sekumpulan karakter. Contoh : Char pil= Y ; String nama= YUYA ; Listing Program //Penggunaan char dan string namespace char dan string Modul Pemrograman C# zagal99.wordpress.com 4
char pil = 'Y'; string nama = "YUYA"; Console.WriteLine("nama :\t" + nama); Console.WriteLine("pil :\t" + pil); System. 2. Operator Dalam membangun ekspresi program, kita pasti membutuhkan operator. Bahasa pemrograman C# memiliki berbagai operator, di antaranya : Operator assignment Operator aritmatika Operator kondisional Operator relasional Operator shift dan logis Operator Assignment Bahasa pemrograman C# mengharuskan sebuah variable memiliki suatu nilai sebelum dapat membaca nilai yang dimiliki, tetapi tidak mengharuskan variable diinisialisasi saat pendeklarasiannya. Adapun cara memberikan nilai pada sebuah variable sebagai berikut: <variable>=<nilai>; Contoh: Nama = Elfrida Harga = 2000; Operator Aritmatika Sama halnya dengan bahasa pemrograman lain, C# menyediakan operator-operator aritmatika untuk manipulasi dan mengelola variable data numerik. Berikutnya, kita dapat melihat daftar operator aritmatika. Modul Pemrograman C# zagal99.wordpress.com 5
Tabel Operator aritmatika OPERATOR KETERANGAN + Operator tambah - Operator kurang * Operator kali / Operator bagi % Operator sisa bagi Contoh: Total = jumlah * harga; Sisa = jumlah % f; Selanjutnya, kita dapat melihat contoh program penggunaan operator aritmatika. Listing Program: //Penggunaan Aritmatika namespace aritmatika int jumlah = 30; int harga = 20000; int total = jumlah * harga; int sisa, f = 45; sisa = jumlah % f; Console.WriteLine("total =\t" + total); Console.WriteLine("sisa =\t" + sisa); Modul Pemrograman C# zagal99.wordpress.com 6
Operator relasional Sama halnya dengan bahasa pemrograman java dan C++ C# menyadiakan operator relasional untuk memanipulasi perbandingan antara dua nilai sehingga menghasilkan nilai bool. Dibawah kita dapat melihat daftar operator relasional. Tabel Operator relasional OPERATOR KETERANGAN > Operator Lebih besar < Operator Lebih kecil >= Operator Lebih besar sama dengan <= Operator Lebih kecil sama dengan = = Operator sama dengan!= Operator tidak sama dengan : //penggunaan relasional sing System; namespace operator_relasional bool kondisi; bool nilai1, nilai2; kondisi = 7 == 2; nilai1 = 10 >= 1; nilai2 = 4!= 2; Console.WriteLine("kondisi =\t" + kondisi); Console.WriteLine("nilai1 =\t" + nilai1); Console.WriteLine("nilai2 =\t" + nilai2); Modul Pemrograman C# zagal99.wordpress.com 7
Operator Shift Bahasa C# memiliki operator untuk menangani pergesaran bit. Operator Shift digunakan untuk menggeser bit-bit yang diinginkan. Tabel operator shift Operator Keterangan << Operator untuk menggeser kekiri >> Operator untuk menggeser kekanan Listing Program //Penggunaan Operator_shift namespace operator_shift int nilai1, nilai2; nilai1 = 4>>1; nilai2 = 2<<2; Console.WriteLine("nilai1 =\t" + nilai1); Console.WriteLine("nilai2 =\t" + nilai2); Operator Bitwise Dalam bahasa pemrograman C#, ada operator yang khusus menangani pengolahan dan manipulasi bit-bit suatu data. Di bawah kita dapat melihat data biasa dipresentasikanke dalam bit-bit. DATA BIT DATA 2 10 4 100 7 111 10 1010 Modul Pemrograman C# zagal99.wordpress.com 8
Kita dapat melihat di bawah beberapa operator birwise yang sering digunakan dalam pemrograman. Tabel Operator bitwise OPERATOR KETERANGAN & AND OR ^ XOR ~ Complement Bitwise AND Berikutnya, kita dapat melihat table kemungkinan yang dibentuk oleh operator bitwise AND. Tabel Bitwise AND X Y X & Y 0 0 0 0 1 0 1 0 0 1 1 1 Bitwise OR Di bawah kita dapat melihat table kemungkinan yang dibentuk oleh operator bitwise OR. Tabel Bitwise OR X Y X Y 0 0 0 0 1 1 1 0 1 1 1 1 Bitwise XOR Di bawah kita dapat melihat table kemungkinan yang dibentuk oleh operator bitwise XOR. Modul Pemrograman C# zagal99.wordpress.com 9
Tabel Bitwise XOR X Y X ^ Y 0 0 0 0 1 1 1 0 1 1 1 0 Bitwise Complement Di bawah kita dapat melihat table kemungkinan yang dibentuk oleh operator bitwise complement. X Tabel Bitwise Complement 0 1 1 0 Di bawah kita dapat melihat contoh program penggunaan operator bitwise. ~ Y //Penggunaan operator_bitwise namespace operator_bitwise int nilai1, nilai2; nilai1 = 4&1; nilai2 = 2 2; Console.WriteLine("nilai1 =\t" + nilai1); Console.WriteLine("nilai2 =\t" + nilai2); Modul Pemrograman C# zagal99.wordpress.com 10
3. Ekspresi Dalam C# Dalam bahasa pemrograman C#, ekspresi merupakan baris pernyataan (statement). Setiap ekspresi dalam program selalu diakhiri tanda semicolon (;). Agar lebih jelas, kita dapat melihat bebrapa contoh ekspresi dalam bahasa C#. Tabel Contoh ekspresi EKSPRESI EQUIVALEN DENGAN X++ X = X + 1; X--; X = X 1; ++X; X = X + 1; --X; X = X 1; X+=4; X = X + 4; X-=4; X = X 4; X*=2; X = X * 2; X/ =2; X = X / 2; X%=2; X = X % 2; X&=Y; X = X & Y; X = Y; X = X Y; Beberapa statement yang sering digunakan untuk meminta masukan pengguna adalah: String nama; Int a; nama = Console.In.ReadLine(); a = int.parse(console.in.readline()); Statement nama = Console.In.ReadLine(); merupakan perintah yang digunakan untuk meminta masukan pengguna berupa data string yang disimpan dalam variable nama. a = int.parse(console.in.readline()); Sintaksis merupakan perintah yang digunakan untuk meminta masukan pengguna berupa data integer yang disimpan dalam variabel a. //Ekpresi dalam C# namespace Ekpresi Modul Pemrograman C# zagal99.wordpress.com 11
string nama; int a, i = 1; Console.Write("Masukkan nama anda :"); nama = Console.In.ReadLine(); Console.Write("masukkan jumlah nama :"); a = int.parse(console.in.readline()); while (i <= a) Console.WriteLine("nama=" + nama); i++; Pembahasan sebelumnya telah menjelaskan penggunaan variabel, operator, dan ekspresi. Untuk bahasan berikutnya akan dibahas blok-blok kontrol dalam bahasa pemrograman C#. Modul Pemrograman C# zagal99.wordpress.com 12
Flow Control Flow Control yang terdapat dalam bahasa pemrograman C# Kondisional Pengulangan Ekspresi DLL : IF,IF-ELSE,SWITCH-CASE : WHILE,DO-WHILE,FOR : try-catch : break, return, continue Operasi kondisi IF Statement if digunakan untuk mengeksekusi sebuah blok program jika memenuhi sebuah kondisi tertentu. Umumnya kondisi Yang perlu terpenuhi harus bernilai true agar bisa mengeksekusi blok program. namespace operasi_kondisi_if int a; Console.WriteLine("Masukkan bilangan bulat:"); a = int.parse(console.in.readline()); if (a >= 0) Console.Write("ini adalah bulat positif"); IF-ELSE Statement if-else digunakan untuk mengeksekusi blok program yang bisa menangani dua perancangan, jika kondisi bernilai True, maka blok pertama yang akan dieksekusi, sedangkan jika kondisi bernilai false, maka blok kedua yang akan dieksekusi. Modul Pemrograman C# zagal99.wordpress.com 13
namespace operasi_kondisi_if-else int a; Console.WriteLine("Masukkan bilangan bulat:"); a = int.parse(console.in.readline()); if (a >= 0) Console.Write("ini adalah bulat positif"); else Console.Write("ini adalah bulat negatif"); Switch-Case Statement Switch-Case berfungsi mengeksekusi blok program dengan membandingkan suatu nilai variable sebagai pilihan dalam menentukan blok yang akan dieksekusi. Listing Program namespace switch_case int a; Console.WriteLine("Masukkan masukkan no hari [1-7]:"); a = int.parse(console.in.readline()); switch (a) case 1: Console.Write("minggu"); break; case 2: Console.Write("senin"); break; case 3: Modul Pemrograman C# zagal99.wordpress.com 14
case 4: case 5: case 6: case 7: default: Console.Write("selasa"); break; Console.Write("rabu"); break; Console.Write("kamis"); break; Console.Write("jumat"); break; Console.Write("sabtu"); break; Console.Write("Tidak ada hari...?"); break; Operasi Pengulangan While Statement while digunakan untuk mengeksekusi baris program dalam sebuah blok secara berulang-ulang looping blok akan dieksekusi selama kondisi bernilai true. While(kondisi) Statement namespace while Modul Pemrograman C# zagal99.wordpress.com 15
int i = 1; while (i <= 9) Console.WriteLine("Selamat datang di sttindonesia"); i++; Do-while Statement do-wwhile digunakan sama seperti while, yaitu untuk mengulang eksekusi baris program. Yang membedakan do-while dengan while adalah pada do-while pengecekan kondisi dilakukan diakhir blok sehingga blok minimal satu kali dijalankan. Berikut sintaks penggunaan do-while Do Statement While(kondisi); namespace do-while int i = 1; do Console.WriteLine("Selamat datang di sttindonesia"); i++; while (i <= 9); Modul Pemrograman C# zagal99.wordpress.com 16
For Statement for digunakan untuk mengeksekusi blok program secara berulang-ulang dengan range tertentu. Sintaks For(inisialisasi; terminasi; increment) Statement Inisialisasi merupakan ekpresi yang dieksekusi pertama. Didalam inisialisasi kita bisa memberikan dekklarasi variable dengan memberikan nilai awal yang dibutuhkan sebuah range, misalnya int a=1; Terminasi merupakan ekpresi yang menyatakan kapan sebuah blok program akan berhenti diulang. Misalnya a<=10; Increment merupakan ekpresi yang akan dieksekusi setelah selesai menjalankan satu blok program dan merupakan nilai penambahan dari nilai inisialisasi, misalnya a++. namespace _for for(int i=0; i<=9; i++) Console.WriteLine("Selamat datang di sttindonesia"); Operasi Break, Continue, dan goto Break Statement break digunakan untuk melompat keluar blok program yang berisi pengulangan. namespace _break Modul Pemrograman C# zagal99.wordpress.com 17
for (int i = 0; i <= 9; i++) Console.WriteLine("Selamat datang di sttindonesia", i); if (i == 5) break; Continue Statement continue digunakan untuk melanjutkan eksekusi baris program pada pengulangan dengan melompati statement sebelumnya. namespace _continue for (int i = 0; i <= 9; i++) if (i == 5) continue; Console.WriteLine("Selamat datang di sttindonesia", i); Goto Statement goto digunakan untuk melanjutkan eksekusi program ke blok yang memiliki lebel tertentu. Kita harus mendefinisikan label terlebih dahulu. Modul Pemrograman C# zagal99.wordpress.com 18
namespace _goto for (int i = 0; i <= 9; i++) if (i == 5) goto selesai; Console.WriteLine("Selamat datang di sttindonesia", i); selesai: Modul Pemrograman C# zagal99.wordpress.com 19