Apa Sih Bedanya Statement Dengan Expression Dalam Pemograman?
Get link
Facebook
X
Pinterest
Email
Other Apps
Statement adalah unit sintaks pada bahasa pemrograman yang menyatakan aksi atau tugas untuk dilakukan. Lalu apa itu ekspresi? Ekspresiadalah entitas sintaks pada bahasa pemrograman yang menghasilkan sebuah nilai. Biasanya ekspresi terdiri dari konstanta, variabel, fungsi, dan operator.
Statementadalahunit sintakspada bahasa pemrograman yang menyatakan aksi atau tugas untuk dilakukan.
Contoh statement:
var x =1; // statement untuk membuat variabel x
print("Hello World"); // statement untuk menampilkan teks kelayar
Lalu apa itu ekspresi?
Ekspresi adalah entitas sintaks pada bahasa pemrograman yang menghasilkan sebuah nilai.
Biasanya ekspresi terdiri dari konstanta, variabel, fungsi, dan operator.
Contoh ekspresi:
x +1; // ekspresi menjumlahakan x dengan 1
3*3; // ekspresi 3 * 3
sqrt(25); // eskpresi untuk menghitung akar kuadrat
Sampai di sini, apakah kamu sudah bisa membedakan?
Kata kunci yang perlu diingat:
Statement = melakukan tugas tertentu;
Ekspresi = menghasilkan nilai.
Nah, sekarang coba perhatikan kode berikut ini:
var x =4+2;
Apakah ini termasuk statement atau ekspresi?
Jika kamu menjawab statement.. maka kamu benar.
Jika kamu menjawab ekspresi.. maka kamu juga benar.
Loh kok bisa?
Karena kode tersebut merupakan statement yang di dalamnya terdapat ekspresi.
Jadi..
var x =4+2;
Adalah sebuah statement untuk membuat variabel x.
Sedangkan
4+2
Adalah sebuah ekspresi yang menghasilkan nilai 6.
Cara membedakan Statement dan Expression
Intinya, ekspresi menghasilkan nilai. Lalu statement mengerjakan sesuatu.
Cara gampang membedakannya adalah dengan operator pengisian atau sama dengan (=).
Apabila ia bisa disimpan dalam variabel, maka ia termasuk ekspresi. Tetapi kalau tidak bisa.. maka ia merupakan statement.
Contoh:
var x =4*2; // 4 * 2 adalah ekspresi
var y = sqrt(25); // sqrt(25) adalah ekspresi
var z =if (x >10) { z =10 } // error, if merupakan statement
Coba perhatikan!
4*2 dan sqrt(25) merupakan sebuah ekspresi, karena menghasilkan nilai dan bisa disimpan dalam variabel.
Sedangkan if (x > 10) { z = 10 } merupakan sebuah statemen, ia tidak bisa disimpan ke dalam variabel.
Jadi intinya, jika tidak bisa disimpan ke dalam variabel.. maka ia termasuk statement sedangkan kalau bisa.. maka ia termasuk ekspresi.
Jika ia bisa kita simpan ke dalam variabel, maka ia termasuk ekspresi. Tetapi kalau tidak, maka ia termasuk statement.
Perintah print() merupakan sebuah instruksi untuk menampilkan teks ke layar.
Contoh di Python:
>>> x =print("Hello World!")
Hello World!
>>> x
>>>
Pada Python, perintah print() bisa kita simpan pada variabel x. Akan tetapi perintah print() tidak menghasilkan nilai apa-apa sehingga variabel x tidak memiliki nilai (null).
Maka perintah print() bisa kita bilang sebagai ekspresi, walaupun tidak menghasilkan nilai.
Oh iya, di Python.. kita bisa gunakan fungsi eval() untuk mengecek apakah itu ekspresi atau bukan. Jika tidak error, maka itu adalah ekspresi dan sebaliknya itu adalah statement.
Contoh:
>>>eval("1 + 1")
2>>>eval("print('Hello')")
Hello
>>>eval("x = 1 + 1")
Traceback (most recent call last):
File "<stdin>", line 1, in<module> File "<string>", line 1 x =1+1^SyntaxError: invalid syntax
Jadi kesimpulannya, perintah print() pada Python adalah sebuah ekspresi.
Mari kita lihat contoh di bahasa pemrograman lain.
Contoh perintah print() di PHP:
$x = print("Hello World");
echo $x; //-> 1
Pada PHP, perintah print() akan menghasilkan nilai 1 sehingga variabel $x berisi 1. Ini bisa kita sebut sebagai ekspresi, karena menghasilkan nilai.
Sedangkan perintah echo pada PHP merupakan sebuah statement, karena ia tidak bisa kita simpan ke dalam variabel.
$y = echo "Hello";
PHP Parse error: syntax error, unexpected 'echo' (T_ECHO) in php shell code on line 1
Ekspresi di String Interpolation
Pada bahasa pemrograman tertentu, kita menggunakan string interpolation untuk formating string dengan ekspresi.
Contoh string interpolation:
Javascript:
console.log(`Sebuah string ${1+2}`)
Python:
print(f"sebuah string {1+2}")
C#:
Console.WriteLine($"sebuah string {1 + 2}");
Coba perhatikan..
1 + 2 merupakan sebuah ekspresi yang berada di dalam string interpolation.
Ini juga bisa kita pakai untuk membedakan statemen dan ekspresi.
Intinya, jika ekspresi yang kita tulis pada string interpolation tidak error.. maka ia termasuk ekspresi. Sebaliknya, ia termasuk statement.
Fungsi map() akan melakukan iterasi sebanyak isi array, lalu di fungsi ini harus kita isi dengan fungsi lambda atau fungsi anonymous untuk memproses semua item.
Perulangan dengan ekspresi biasanya sering kita temukan pada JSX di Reactjs.
Pada JSX, kita tidak dibolehkan membuat perulangan dengan stament seperti for, while, dan do/while. Kita hanya dibolehkan membuat perulangan dengan ekspresi.
Contoh: ❌ salah
function Hello(){
const data = [3,4,5,6,7,3];
return(
<>
{for(i =0; i<data.lenght; i++){
<a>{data[i]}</a>
}}
</>
)
}
Contoh: ✅ benar
function Hello(){
const data = [1,2,3,4,5,6];
return(
<>
{data.map((value, index) => {
return <akey={index}>{item}</a>
})}
</>
)
}
Ekspresi dan Statement pada Fungsi
Fungsi bisa jadi sebuah statemen bisa juga jadi ekspresi. Tergantung jenis fungsinya.
Contoh pada Python:
# ini adalah fungsi sebagai statementdefadd(a,b):
return a + b
# ini adalah fungsi lambda yang merupakan ekspresijumlahkan =lambda a, b : a + b
# pemanggila fungsi adalah ekspresiadd(1,2)
jumlahkan(1,2)
Nah coba perhatikan..
Saat kita membuat fungsi dengan def di Python.. maka ia akan dianggap sebagai statement. Sedangkan jika kita membuat fungsi dengan lambda, maka ia dianggap sebagai ekspresi.
Oh iya, pemanggilan fungsi itu termasuk ekspresi karena menghasilkan nilai baru.
Contoh lain pada Javascript:
// ini fungsi statement, sebenarnya ini juga bisa jadi ekspresi
function add(a,b){
return a + b;
}
// ini fungsi ekspresi
const jumlahkan =function(a, b){
return a + b;
}
// ini juga fungsi ekspresi atau disebut juga arrow function
const kali = (a,b) => a * b;
const bagi = (a,b) => {
return a / b;
}
Pada javascript, fungsi termasuk dalam ‘first-class citizen object’ yang artinya perulakunya sama seperti ekspresi.. yakni bisa disimpan ke dalam variabel, bisa menjadi parameter, bisa dilakukan operasi.
Contoh:
const luasPersegi =function luas(sisi){
return sisi * sisi
}
Percabangan sederhana adalah percabangan yang tidak terdapat banyak perintah yang akan dikerjakan, atau kondisi lain yang harus dipenuhi. Biasanya percabangan sederhana hanya memiliki sebuah kondisi. didalam pemrograman kita mengenal percabangan IF ELSE. Berikut ini contoh flowchartnya. Penjelasan: Pada flowchart diatas, kita mulai dari simbol Terminal untuk memulai program percabangan. Kemudian terdapat simbol arue (flow) yang berjalan menuju simbol kondisi ( decission ) dimana terdapat kondisi yang telah ditentukan yaitu; 2 Modulus 2 hasilnya adalah 0. Apabila kondisi tersebut bernilai benar ( true ) maka akan menuju pada simbol output untuk menampilkan kalimat ‘ Bilangan Genap ‘ namun apabila bernilai salah ( false ) maka akn menampilkan output ‘ Bilangan Ganjil ‘ kemudian selanjutnya baik kondisi benar(true) maupun salah (false) akan langsung berakhir. Contoh Program PHP <? php if ( 2 % 2 == 0 ){ echo "Bilangan Genap" ; } else { echo "Bilangan...
Kotlin adalah bahasa pemrograman open-source yang dikembangkan oleh JetBrains untuk berbagai platform. Tapi, bahasa pemograman ini semakin populer digunakan untuk membangun aplikasi Android. Bahasa Kotlin berjalan pada platform Java Virtual Machine (JVM), sebuah platform yang memungkinkan komputer menjalankan kode berbasis Java , atau kode dari bahasa lain yang dikompilasi (compile) menggunakan Java. Artinya, Kotlin bisa menerapkan mekanisme compile pada Java, yaitu menulis kode lalu menjalankannya di platform yang mendukung (Write Once Run Anywhere). Bahkan, Kotlin juga bisa digunakan bersama dengan Java. Dengan kata lain, Anda bisa menggunakan Kotlin dan Java sekaligus untuk membangun satu aplikasi Android. Contohnya, Anda bisa menggunakan Kotlin untuk membuat satu halaman aplikasi, sementara halaman lainnya ditulis menggunakan Java. Kedua bahasa tersebut tidak akan bent...
LOOPING L ooping adalah sebuah urutan perintah yang secara menerus diulang hingga suatu kondisi tercapai. Pernyataan aliran kontrol yang memungkinkan kode dieksekusi berulang kali berdasarkan kondisi Boolean yang diberikan. Perulangan while dapat dianggap sebagai pernyataan if yang berulang. Jenis-Jenis Looping Terdapat dua jenis loop yaitu : Entry controlled loop Exit controlled loop entry controlled loop, sebuah kondisi dieksekusi sebelum sebuah badan dari loop. Hal ini juga disebut sebagai pre-checking loop Exit Controlled Loops Loops yang kondisi pengujiannya diuji atau dievaluasi pada akhir badan loop While Loop While loop adalah loop yang paling mudah untuk digunakan.Contoh dari loop ini adalah;while (condition) { statements; } merupakan loop jenis entry-controlled dimana loop ini dievaluasi atau diperiksa sebelum diproses dari badan dari sebuah loop. Algoritma while loop ...
Comments
Post a Comment