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, ushort,ulong, Bool.
long,
char,
float,
double,
uint,
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)
Isi fariabel Disimpan dalam Inisialisasi Assingnment Contoh
TIPE PRIMITIF Nilai Stack 0, fase, ‘\0’ Mengopi nilai Int i=17; Int j=I;
TIPE REFERENSI referensi Heap Null Mengopi referensi 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
Listing program //Tiga variabel
using using using using
System; System.Collections.Generic; System.Linq; System.Text;
namespace Variabel { class Program { static void Main(string[] args) { 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 ); Console.ReadLine(); } } }
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
Listing program //Data Boolean
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Boolean { class Program { static void Main(string[] args) { bool nilai1=true; bool nilai2 = false; Console.WriteLine("Nilai 1 :"+nilai1); Console.WriteLine("Nilai 2 :"+nilai2); Console.ReadLine(); } } } Tipe Numerik Tipe Numerik merupakan tipe yang digunakan untuk memanggil masalah seperti perhitungan angka. Tabel daftar tipe Numerik Byte Nilai Minimum Nilai Maksimum
Tipe Data Sbyte Byte Short Ushort Int
1 1 2 2 4
Uint Long
4 8
Ulong
8
128 0 -32.767 0 2.147.483.648 0 9.223.372.036 854.775.808 0
Float Double Decimal
4 8 16
1,5x10 5,0x10 1,0x10
Modul Pemrograman C#
127 255 32.767 65.535 2.147486.647 4.294.967.295 9.223.372.036 854.775.808 18.446.774.073. 709.551.615 3,4x10 1,7x10 7,9x10
zagal99.wordpress.com
3
Listing program //Numerik
using using using using
System; System.Collections.Generic; System.Linq; System.Text;
namespace numerik { class Program { static void Main(string[] args) { 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.Console.ReadLine(); } } }
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
using using using using
System; System.Collections.Generic; System.Linq; System.Text;
namespace char dan string { class Program Modul Pemrograman C#
zagal99.wordpress.com
4
{ static void Main(string[] args) { char pil = 'Y'; string nama = "YUYA"; Console.WriteLine("nama :\t" + nama); Console.WriteLine("pil :\t" + pil); System.Console.ReadLine(); } } }
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:
=; 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
using using using using
System; System.Collections.Generic; System.Linq; System.Text;
namespace aritmatika { class Program { static void Main(string[] args) { 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); Console.ReadLine(); } } }
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
Listing program: //penggunaan relasional
sing System; using System.Collections.Generic; using System.Linq; using System.Text; namespace operator_relasional { class Program { static void Main(string[] args) { 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); Console.ReadLine(); } } }
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 Keterangan Operator untuk menggeser kekiri Operator untuk menggeser kekanan
Operator << >>
Listing Program //Penggunaan Operator_shift
using using using using
System; System.Collections.Generic; System.Linq; System.Text;
namespace operator_shift { class Program { static void Main(string[] args) { int nilai1, nilai2; nilai1 = 4>>1; nilai2 = 2<<2; Console.WriteLine("nilai1 =\t" + nilai1); Console.WriteLine("nilai2 =\t" + nilai2); Console.ReadLine(); } } }
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 2 4 7 10
Modul Pemrograman C#
BIT DATA 10 100 111 1010
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 0 0 1 1
Y 0 1 0 1
X&Y 0 0 0 1
Bitwise OR Di bawah kita dapat melihat table kemungkinan yang dibentuk oleh operator bitwise OR. Tabel Bitwise OR X 0 0 1 1
Y 0 1 0 1
X|Y 0 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 0 0 1 1
Y 0 1 0 1
X^Y 0 1 1 0
Bitwise Complement Di bawah kita dapat melihat table kemungkinan yang dibentuk oleh operator bitwise complement. Tabel Bitwise Complement X
~Y
0
1
1
0
Di bawah kita dapat melihat contoh program penggunaan operator bitwise. Listing program //Penggunaan operator_bitwise
using using using using
System; System.Collections.Generic; System.Linq; System.Text;
namespace operator_bitwise { class Program { static void Main(string[] args) { int nilai1, nilai2; nilai1 = 4&1; nilai2 = 2|2; Console.WriteLine("nilai1 =\t" + nilai1); Console.WriteLine("nilai2 =\t" + nilai2); Console.ReadLine(); } } }
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 X++ X--; ++X; --X; X+=4; X-=4; X*=2; X/ =2; X%=2; X&=Y; X | = Y;
EQUIVALEN DENGAN X = X + 1; X = X – 1; X = X + 1; X = X – 1; X = X + 4; X = X – 4; X = X * 2; X = X / 2; X = X % 2; X = 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. Listing program //Ekpresi dalam C#
using using using using
System; System.Collections.Generic; System.Linq; System.Text;
namespace Ekpresi { class Program Modul Pemrograman C#
zagal99.wordpress.com
11
{ static void Main(string[] args) { 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++; } Console.ReadLine(); } } }
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. Listing program using using using using
System; System.Collections.Generic; System.Linq; System.Text;
namespace operasi_kondisi_if { class Program { static void Main(string[] args) { int a; Console.WriteLine("Masukkan bilangan bulat:"); a = int.Parse(Console.In.ReadLine()); if (a >= 0) { Console.Write("ini adalah bulat positif"); } Console.ReadLine(); } } }
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. Listing program using using using using
System; System.Collections.Generic; System.Linq; System.Text;
Modul Pemrograman C#
zagal99.wordpress.com
13
namespace operasi_kondisi_if-else { class Program { static void Main(string[] args) { 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"); } Console.ReadLine(); } } }
Switch-Case Statement Switch-Case berfungsi mengeksekusi blok program dengan membandingkan suatu nilai variable sebagai pilihan dalam menentukan blok yang akan dieksekusi. Listing Program using using using using
System; System.Collections.Generic; System.Linq; System.Text;
namespace switch_case { class Program { static void Main(string[] args) { 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
{ Console.Write("selasa"); break; } case 4: { Console.Write("rabu"); break; } case 5: { Console.Write("kamis"); break; } case 6: { Console.Write("jumat"); break; } case 7: { Console.Write("sabtu"); break; } default: { Console.Write("Tidak ada hari...?"); break; } } Console.ReadLine(); } } }
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 } Listing program using using using using
System; System.Collections.Generic; System.Linq; System.Text;
namespace while
Modul Pemrograman C#
zagal99.wordpress.com
15
{ class Program { static void Main(string[] args) { int i = 1; while (i <= 9) { Console.WriteLine("Selamat datang di sttindonesia"); i++; } Console.ReadLine(); } } } Do-while Statement do-wwhile digunakan sama seperti mengulang eksekusi baris program. Yang membedakan adalah pada do-while pengecekan kondisi dilakukan blok minimal satu kali dijalankan. Berikut sintaks
while, yaitu untuk do-while dengan while diakhir blok sehingga penggunaan do-while
Do { Statement } While(kondisi);
Listing program using using using using
System; System.Collections.Generic; System.Linq; System.Text;
namespace do-while { class Program { static void Main(string[] args) { int i = 1; do { Console.WriteLine("Selamat datang di sttindonesia"); i++; } while (i <= 9); Console.ReadLine(); } } }
Modul Pemrograman C#
zagal99.wordpress.com
16
For Statement for digunakan untuk mengeksekusi berulang-ulang dengan range tertentu. Sintaks
blok
program
secara
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++.
•
• •
Listing program using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace _for { class Program { static void Main(string[] args) { for(int i=0; i<=9; i++) { Console.WriteLine("Selamat datang di sttindonesia"); } Console.ReadLine(); } } } Operasi Break, Continue, dan goto Break Statement break digunakan untuk berisi pengulangan.
melompat
keluar
blok
program
yang
Listing program using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace _break {
Modul Pemrograman C#
zagal99.wordpress.com
17
class Program { static void Main(string[] args) { for (int i = 0; i <= 9; i++) { Console.WriteLine("Selamat datang di sttindonesia", i); if (i == 5) { break; } Console.ReadLine(); } } } } Continue Statement continue digunakan untuk melanjutkan eksekusi baris program pada pengulangan dengan melompati statement sebelumnya. Listing program using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace _continue { class Program { static void Main(string[] args) { for (int i = 0; i <= 9; i++) { if (i == 5) { continue; } Console.WriteLine("Selamat datang di sttindonesia", i); Console.ReadLine(); } } } } Goto Statement goto digunakan untuk melanjutkan eksekusi program ke blok yang memiliki lebel tertentu. Kita harus mendefinisikan label terlebih dahulu. Listing program using System; using System.Collections.Generic; using System.Linq; using System.Text;
Modul Pemrograman C#
zagal99.wordpress.com
18
namespace _goto { class Program { static void Main(string[] args) { for (int i = 0; i <= 9; i++) { if (i == 5) { goto selesai; } Console.WriteLine("Selamat datang di sttindonesia", i); } selesai: Console.ReadLine(); } } }
Modul Pemrograman C#
zagal99.wordpress.com
19