Standard Input Output Pemrograman C
Standard Input Output Pemrograman C
Sekarang kita akan belajar mengenai Dasar Input dan Output apa
pemrograman C++. Sebenarnya pada contoh-contoh syntax yang saya berikan
pada artikel-artikel sebelumnya, fungsi input dan output sudah sering saya pakai
yaitu cin dan cout. Ya keduanya merupakan data straem yang ada didalam library
iostream C++ , dimana perintah cin untuk input dan cout untuk output. Juga, cerr
dan clog sebagai tambahan untuk output streams yang di desain khusus untuk
menampilkan error messages. Dapat diarahkan langsung ke standard output
maupun ke log file.
Biasanya cout (standard output stream) ditujukan untuk monitor dan cin (standard
input stream) ditujukan untuk keyboard. Dengan menggunakan dua streams ini,
maka kita dapat berinteraksi dengan user dengan menampilkan messages pada
monitor dan menerima input dari keyboard.
Untuk menggunakan salah satu atau kedua perintah di atas ( cin dan cout ) kita
perlu memanggil headeriostream.h atau iostream.
Operator << dikenal sebagai insertion operator, dimana berfungsi untuk menginput
data yang mengikutinya. Jika berupa string atau kata, maka harus diapit dengan
kutip ganda ("), sehingga membedakannya dari variable. Seperti contoh di atas :
cout << "kucing"; // untuk mencetak kata kucing
cout << x; // untuk mencetak isi dari variabel x, yaitu 15
Sedangkan <<endl; merupakan perintah manipulasi untuk
menyisipkan newline atau garis baru. Selain itu kita dapat juga
menggunakan \n seperti berikut :
cout << "kucing \nsaya \nlucu";
maka akan mengeluarkan output seperti berikut :
kucing
saya
lucu
Operator insertion (<<) dapat digunakan lebih dari sekali dalam kata atau kalimat
yang sama. Contohnya :
cout << "halo sobat " << "nama saya "<< "arif ";
Contoh di atas akan menampilkan kalimat halo sobat nama saya arif pada layar
monitor. Operator insertion (<<) juga dapat digunakan untuk menampilkan
kombinasi dari satu variabel dan konstanta atau lebih. Contohnya :
cout << "Umur saya "<<umur <<"nomer hape ku "<<nope;
Jika variabel dari umur = 19 dan nope = 081234567890, maka akan menampilkan
cin>> a;
cin>>b;
From: http://www.kangarif.com/2012/12/fungsi-cin-dan-cout-pemrograman-c.html
Preprocessor
Mula mula kode program akan dimasukan ke bagian preprosesor, yaitu di awali
dengan tanda # ( paund ) dan menghasilkan file yang akan dilewatkan ke dalam
compiler. Beberapa preprosesor tersebut di antaranya adalah sebagai berikut:
# include
#define
#ifdef
Dan lain lain.
Kompiler C++
Kompiler akan menerjemahkan kode program yang telah dilewatkan oleh
preprosesor ke dalam bahasa assembly.
Assembler
Assembler menerima keluaran dari compiler C++ dan akan membuat sebuah kode
objek. Jika dalam kode program kita tidak menggunakan fungsi fungsi yang
terdapat pada library lain, maka kode objek ini akan langsung dieksekusi menjadi
file EXE.
Link Editor
Bagian ini dikerjakan jika kode program yang kita buat menggunakan fungsi fungsi
luar yang disimpan dalam suatu library lain. Link Editor akan mengkombinasikan
kode objek dan library yang ada untuk menjadiakan sebuah file EXE.
From: http://tutscpluplus.blogspot.com/2012/12/konsep-kompilasi-dan-eksekusiprogram.html
temp = 24
pada contoh diatas, temp adalah variabel, 24 adalah variabel, = adalah operator,
dan temp=24 adalah ekspresi.
Operator JavaScript dapat dibagi menjadi beberapa kategori berikut:
Assignment operator
Arithmetic operator
Bitwise operator
Logical operator
Comparison operator
String operator
JavaScript memiliki operator binari maupun unari. Suatu operator binari memiliki
format.
operand1 operator operand2
Sebagai contoh , 9 * 7 atau temp = 24 adalah ekspresi dengan operator binari.
Operator unari memiliki dua format:
operand operator
atau
operator operand
Sebagai contoh ekspresi mengunakan operator unari adalah ++y atau y++.
Catatan
Bagi programmer C language, tentu saja operator unari bukan
sesuatu yang asing, tetapi bagi programmer dari latarbelakang
Basic dan Pascal, penulisan y++ adalah sama dengan y = y + 1.
Assignment Operator
Operator pemberi nilai (=) adalah suatu operator binari yang digunakan untuk
memberi nilai ke operand di sisi kiri (biasanya berupa suatu variabel) yang
didasarkan pada nilai operand sebelah kanan (seperti NamaDepan =
"Hendra" atau x = y * 9). Table 3 adalah daftar singkat operator pemberi nilai.
Table 3. Daftar Operator assignment
Shorthand operator
Artinya
Contoh
x += y
x=x+Y
x +=
x -= y
x=x-y
x -=
x *= y
x=x*y
x *=
x /= y
x=x/y
x /=
x %= y
x=x%y
x %=
x <<= y
x = x << y
x <<=
x >>= y
x = x >> y
x >>=
x >>>= y
x = x >>> y
x >>>=
x &= y
x=x&y
x &= 0xC0
x |= y
x=x|y
x |= 0x0F
x ^= y
x=x^y
x ^= 0XFF
Catatan
Bagi yang tidak familiar dengan pemrograman C, hati-hati dengan
perbedaan antara assignment operator (=) dan comparison
operator (==)
Arithmetic Operator
Sesuai dengan fungsinya operator aritmatika melakukan operasi perhitungan
aritmatika terhadap suatu nilai numerik baik dalam literal maupun variabel.
JavaScript mendukung operator standard aritmatika untuk penjumlahan (+),
pengurangan (-), perkalian (*), dan pembagian (/). Juga memiliki operator modulus
(%), increment (++), decrement (--), dan unary negation (-).
Operator modulus (%) adalah suatu operator binary yang mengembalikan nilai sisa
dari suatu pembagian bulat operand1 terhadap operand2. Sebagai contoh, hasil
dari 27 % 6 adalah 4.
Operator increment unary adalah menambah nilai satu ke variabel operand,
sedangkan operator decrement unary mengurangi satu dari padanya.
Bagaimanapun, nilai yang dikembalikan tergantung dari posisi operator terhadap
operand Jika operator berada didepan (++x atau --x), nilai yang dikembalikan
adalah x+1 atau x-1. Ketika operator dibelakang(x++ or x--), nilai x dikembalikan
sebelum ditambah atau dikurang.
Bitwise AND (&), akan mengembalikan nilai dari logika AND antara sepasang
bit. Sebagai contoh , 0x0f & 0x0a mengembalikan 0x0a.
Bitwise XOR (^), akan mengembalikan nilai dari logika exclusive OR between
antara tiap pasangan bit. Sebagai contoh, 0x0f ^ 0x0a mengembalikan0x05.
JavaScript juga menyediakan satu set bitwise untuk operasi shift operand1 terhadap
jumlah yang ditentukan di operand2. Operand ini adalah
Shift left (<<), akan mengeser bit ke kiri dengan jumlah tertentu. Bit yang
melewati batas kiri akan diabaikan, dan suatu bit nol akan digeser dari kanan.
Sebagai contoh, 0x0f << 2 mengembalikan 0x3c.
Sign propagating shift right (>>) mempertahankan bit tanda dari nilai ketika
melakukan geser ke kanan sesuai dengan jumlah yang ditentukan. Bit yang
tergeser melewati bata kanan akan diabaikan, kecuali bit tanda, bit nol akan
digeser dari kiri.. Sebagai contoh, 10 >> 2 mengembalikan 2 dan -10 >>
2mengembalikan -2.
Zero-fill right shift (>>>) sama seperti >>, cuma tidak mempertahankan bit
tanda ketika dilakukan pergeseran sesuai dengan jumlah yang ditentukan.
Logical Operator
Operator logika membutuhkan operand dengan nilai Boolean (true atau false) dan
mereka akan mengembalikan suatu nilai logika. Operator logika adalah sebagai
berikut :
Logical OR (||)
Operator logika NOT adalah suatu unary operator yang mempertahankan nilai
ekspresi.
Comparison Operator
Operator perbandingan diterapkan pada perbandingan pada data numerik dan data
string serta tidak dapat dilakukan pada nilai Boolean. Masing-masing operand harus
memiliki tipe yang sama: nemerik dibandingkan dengan numerik atau string
dengan string. Hasil dari perbandingan adalah sautu nilai Boolean. Operator
perbandingan adalah:
Equal (==)
String Operator
Operator string (+) mengabung dua nilai string dan mengembalikan satu string
dimana merupakan hasil gabungan dari keduanya. Sebagai contoh :
"Java" + "Script"
Menghasilkan
"JavaScript"
Operator shorthand += mengabung string kiri dengan string dikanan operand dan
memberikan nilai baru pada operand disebelah kiri.
Urutan operasi
Dalam ekspresi yang kompleks dimana melibatkan lebih dari satu operator, urutan
operasi dari operator menentukan nilai hasil evaluasi. Dengan menggunakan tanda
kurung, programmer dapat mengatur aturan tersebut. Table .4 adalah urutan
prioritas operasi dari yang paling rendah sampai yang paling tinggi.
Table 4. Prioritas urutan operasi dari prioritas rendah sampai tinggi.
Keterangan
Operator
Assignment
Conditional
?:
Logical OR
||
Logical AND
&&
Bitwise OR
Bitwise XOR
Bitwise AND
&
Equality
== !=
Relational
Bitwise shift
Addition/subtraction + Multiply/divide
*/%
Negation/increment
! ~ - ++ -
Call, member
() []
From: http://www.oocities.org/indoprog/tutorial/web/javascript/topik3.html