Oct 22
SYNTAX
Syntax merupakan suatu kumpulan peraturan yang mendefinisikan bagaimana suatu kalimat dibentuk sebagai barisan/urutan dari pemilihan suatu kata dasar.

Syntax mengatur cara mengkombinasikan kata-kata tersebut ke dalam suatu statement dengan bentuk yang benar sehingga dapat disusun suatu program yang dapat berjalan dengan benar. Syntax itu sendiri tidak mengerti arti atau isi dari kalimat tersebut, yang bisa mengartikannya adalah semantik. Syntax menyediakan bentuk-bentuk notasi untuk komunikasi antara programmer dan pemroses bahasa pemrograman, sehihngga syntax mempermudah pembuatan suatu program.

Syntax memiliki beberapa kriteria dan kriteria ini berlaku sama bagi semua bahasa pemrograman. Kriteria itu adalah:

  • Readability and Writeability

Sebuah bahasa pemrograman harus dapat menolong seorang programmer untuk dapat membuat suatu desain program sebelum melakukan coding. Kunci dari hal ini adalah kemudahan dan kesederhanaan dari syntax itu tersebut sehingga dapat mengembangkan algoritma yang diinginkan dengan kompleksitas algoritma yang rendah. Hal ini berkaitan pula dengan Writeability karena apabila syntax nya mudah dipahami maka dapat pula ditulis ulang atau diperbanyak dengan mudah.

  • Verifiability

Merupakan salah satu hal kunci atau terpenting dalam programming karena dengan verifikasi program yang mudah, program akan lebih mudah dibangun dan dikembangkan. Hal ini dapat di realisasikan dengan kesederhanaan struktu semantik dan syntax-nya.

  • Kemudahan Translasi

User atau programmer dapat menerjemahkan maksud dari syntax dengan cepat sehingga dapat menghasilkan kode yang efisien.

  • Pengurangan Amibiguitas

Syntax yang ditulis tidak dapat berarti ganda misalnya contohnya adalah Array seperti yang nanti akan dijelaskan di bab-bab selanjutnya.

Syntax memiliki beberapa fungsi. Fungsi syntax yang paling signifikan adalah ia dapat mempermudah users karena dia menyediakan bentuk-bentuk notasi untuk komunikasi antara programmer dengan pemroses bahasa pemrograman. Dalam bahasa C, terdapat beberapa peraturan atau syaratnya sendiri dalam penulisan dan semantiknya yaitu :

  • Tidak ada pembedaan dari Fungsi dan Prosedur
  • Setiap program C mempunyai fungsi utama yang dinamakan main
  • Program akan dimulai dari awal (atas) sampai akhir (bawah) secara berurutan
  • C merupakan bahasa yang case sensitif
  • Setiap pernyataan harus diakhiri dengan semi-colon

SEMANTICS

Semantics merupakan sebuah proses pendefinisian dari program yang benar secara syntax dari bahasa tersebut. Semantics memiliki beberapa keunggulan, yaitu diantaranya:

a) Standarisasi bahasa pemrograman

Banyak usaha yang dilakukan untuk menstandarisasi bahasa pemrograman seperti FORTRAN, COBOL, dan PL/1, untuk lebih memudahkan programmer menggunakannya.

b) Referensi untuk user.

Programmer membutuhkan suatu dokumentasi yang pasti supaya user dapat mengoperasikan program yang dibuat dengan baik.

c) Pembuktian dari program yang benar.

Secara matematis,program tidak mungkin bekerja dan berjalan jika tidak ada semantic.

d) Referensi untuk implementor.

Semantic akan mencegah suatu gaya bahasa yang tidak kompetibel yang diwujudkan dalamsuatu implementasi berbeda walaupun dengan bahasa yangsama.

e) Implementasi otomatis.

Suatu tool/alat dapat secara otomatis membuatu translasi bahasa yang melebihi parsing. Hal ini dapat dilakukan jika semantic sudah dirumuskan.

f) Pemahaman yang lebih baik dari desain bahasa.

Jika suatu rumusan semantic sulit untuk di deskripsikan secara formal maka rumusan semantic tersebut juga akan sulit digunakan oleh programmer.

Semantic memiliki beberapa cara dalam mendeskripsikan syntax yaitu:

  • Operational Semantic

Pendekatan ini mendefinisikan suatu mesin buatan (Abstract) dengan instruksi-instruksi primitif, tidak perlu realistik, tetapi cukup sederhana supaya tidak

muncul kesalahpahaman. Deskripsi semantic dari bahasa pemrograman menentukan suatu translasi kekode.

  • Denotational Semantic 

Diberikan suatu fungsi yang memetakanprogram-program komputer yang ditunjuk kedalam bentuk nilai-nilai abstrak secara matematika (angka, nilai, kebenaran, fungsi matematika, dan sebagainya).

  • Axiomatic Semantic

Pada pendekatan ini didefinisikan suatu tindakan program yang dibangun dengan property logika yang menyimpan status computer sebelum dan sesudah eksekusi.

  • Algebraic Semantic

Pada pendekatan ini dipertimbangkan suatu objek komputasi yaang menjadi syarat-syarat dalam aljabar multi-sorted.

  • Structured Operational atau Natural Semantic

Seperti dalam pengambilan keputusansecara alamiah dengan logika.Program diberi suatu arti dari aturan yang diturunkan yang menggambarkan penilaian gagasan suatu bahasa.

Berikut akan dijabarkan mengenai beberapa syntax yang terdapat di dalam bahasa C. Yang pertama kali akan dibahasa adalah praprosesor #include. #include merupakan salah satu jenis pengarah praprosesor.Pengarah praprosesor ini dipakai untuk membaca file yang di antaranya berisi deklarasi fungsi dan definisi konstanta. Beberapa file judul disediakan dalam C. File-file ini mempunyai ciri khusus yaitu diakhiri dengan ekstensi .h .

Contoh :

  1. #include <stdio.h>

mengisyaratkan bahwa pencarian file dilakukan pada direktori khusus, yaitu file include

  1. #include “nama file”

menyatakan bahwa pencarian file dilakukan pertama kali pada direktori aktif tempat program sumber dan seandainya tidak ditemukan pencarian akan dilanjutkan pada direktori lainnya yang sesuai dengan perintah pada sistem operasi.

Selanjutnya adalah pemberian komentar pada program. Pemberian komentar bukanlah sebuah keharusan, namun apabila kita nantinya bekerja sebagai sebuah tim yang membuat sebuah project besar maka komentar ini akan sangat dibutuhkan untuk membantu kolega Anda mengerti kode-kode Anda dan sebaliknya. Pada bahasa C, pemberian komentar pada program ditandai dengan tanda /* dan diakhiri dengan tanda */. Ada juga diawali dengan // yang membedakannya adalah untuk /*….*/ dapat diisi komentar hingga berbaris-baris untuk // hanya dapat diisi 1 kalimat komentar.

Cara menampilkan data ke layar pada C itu dilakukan dengan mengetikan beberapa keyword khusus dalam kodingan Anda, yaitu:

  • Fungsi printf

– Dipakai untuk menampilkan suatu keluaran

example:

printf(“…….”);

printf(“String Kontrol”, argument1, argument2, …);

String kontrol yang dimaksud adalah keterangan yang akan ditampilkan pada layar beserta penentu format(%d, %f, %c, dll).

  • Putchar

– Khusus untuk menampilkan sebuah karakter pada layar. Penampilan karakter tidak diakhiri dengan perpindahan baris.

example:

putchar(‘A’);

(hasil keluaran sama dengan printf(“%c”, ‘A’);

Selain itu, untuk memasukan data yang kita input dari keyboard, kita dapat melakukannya dengan :

  • Fungsi Scanf

Digunakan untuk memasukkan berbagai jenis data. Misalnya untuk memasukkan data jari-jari lingkaran digunakan adalah scanf(“%f”, &radius); Scanf(“String Kontrol”, daftar_argument);

  • Fungsi getchar()

Digunakan khusus untuk menerima masukkan berupa sebuah karakter dari keyboard.

Example:

c = getchar();

scanf(“%c, &c);

Maka variabel c akan berisi karakter yang diketikkan oleh user at EOF (End of File) jika ditemui akhir dari file.

Setelah itu, hal penting selanjutnya yang akan sering digunakan selama kita menjadi seorang programmer adalah proses pengambilan keputusan. Proses pengambilan keputusan terdapat tiga cara yaitu:

  1. If

Example:

– Untuk 1 pernyataan

If(condition)

Statement;

(tidak dibutuhkan kurung kurawal karena apabila tidak ada, maka si fungsi if ini hanya akan membaca satu statement yg di awal. Apabila ada statement lain setelah statement ini, maka si fungsi if tidak akan menganggap bahwa statement itu adalah milik dia sehingga tidak akan dijalankan).

  • Untuk pernyataan majemuk

if(condition){

statement 1;

statement 2;

.

.

Statement n;

}

  1. If – Else

Example:

  • Untuk dua statement

if(condition)

statement 1;

else

statement 2;

Note: kesalahan yang sering terjadi adalah si programmer sering menaruh titik koma setelah condition. Apabila itu terjadi maka akan terjadi syntax error karena si fungsi if ini menganggap conditionnya telah berhenti disini.

  1. Nested If

if(condition 1){

if(condition 2){

.

.

if(condition n){

statement;

else

statement;

.

.

}

else{

statement;}

else{

statement;}

Note: Digunakan apabila si programmer memiliki lebih dari satu kondisi.

  1. Else-if

Example:

if(condition 1){

statement;

else if(condition 2){

statement;

else{

statement;

  1. Switch – Case

Example:

Switch(expression)

{case constant 1:

statement 1;

….

break;

case constant 2:

.

.

.

case constant-n:

statement-n;

……

break;

default:

……

break;

}

Note: Switch – case berfungsi untuk menggantikan nested-if. Dapat dilihat pada switch-case terdapat default, default memiliki kegunaan yang sama dengan else pada fungsi if-else.

Komponen lain yang penting dalam pekerjaan seorang programmer adalah proses looping. Looping pada bahasa C ada 3 cara yaitu:

  1.  For

Example:

  • Untuk 1 pernyataan

for(expression1;expression2;expression3)

statement;

  • Untuk pernyataan majemuk

Example:

for(expression1;expression2;expression3)

{

statement 1;

statement 2;

.

.

}

Note:

Expression1 : digunakan untuk memberikan inisialisasi terhadap variabel pengendali loop

Expression2 : dipakai sebagai kondisi untuk keluar dari loop

Expression3 : dipakai sebagai pengatur kenaikan nilai variable pengendali loop

2.  While (pengecekan terhadap loop dilakukan di bagian awal(sebelum tubuh loop)

  • Pernyataan tunggal

while(condition)

statement;

  • Pernyataan majemuk

while(kondisi)

{

statement 1;

statement 2;

}

3.  Do – While (Dijalankan terus menerus sampai memenuhi                      kondisi yang diinginkan)

  • Untuk satu pernyataan

do

statement;

while (condition)

  • Untuk pernyataan majemuk

do

{

statement 1;

statement 2;

}

while(condition);