Skip to content

emka.web.id

Menu
  • Home
  • Indeks Artikel
  • Tutorial
  • Tentang Kami
Menu

Perhitungan Matematika di Bash


Bash adalah bahasa scripting yang kuat yang dapat digunakan untuk berbagai tugas, termasuk perhitungan matematis. Namun, bekerja dengan angka di Bash bisa menjadi tantangan, terutama ketika berhadapan dengan aritmatika titik-mengambang, bilangan besar, dan perhitungan yang rumit. Job

Bash memiliki beberapa alat bawaan untuk melakukan perhitungan matematis, seperti operator (( )) dan $(( )), perintah expr, dan perintah bc. Setiap alat memiliki kekuatan dan kelemahannya, dan memilih yang tepat dapat membuat perbedaan besar dalam hal kinerja dan akurasi.
Operator `(( ))` dan `$(( ))` adalah alat yang paling umum digunakan untuk melakukan bilangan bulat aritmatika di Bash. Mereka mendukung semua operasi aritmatika dasar, serta operasi dan perbandingan bitwise. Namun, mereka tidak mendukung aritmetika titik-mengambang, dan ketepatannya terbatas pada ukuran tipe bilangan bulat pada sistem Anda. Perintah `expr` adalah alat yang lebih kuat yang mendukung aritmatika floating-point, serta operasi string dan ekspresi reguler. Namun, ini lebih lambat daripada operator (( )) dan $(( )), dan hasilnya harus ditangkap menggunakan substitusi perintah. Perintah `bc adalah alat yang paling serbaguna untuk melakukan perhitungan matematis di Bash. Ini mendukung aritmatika presisi sewenang-wenang, bilangan kompleks, dan fungsi lanjutan, seperti fungsi trigonometri dan logaritmik. Namun, ini membutuhkan proses terpisah untuk diluncurkan, yang dapat memperlambat skrip Anda. Operasi Aritmatika

Bash menyediakan operasi aritmatika dasar seperti penjumlahan, pengurangan, perkalian, dan pembagian. Operasi ini dapat dilakukan dengan menggunakan sintaks ekspansi aritmatika $((ekspresi)). Misalnya, perintah berikut akan menambahkan 3 dan 4:


echo $((3 + 4))1echo $((3 + 4))


Ini akan menghasilkan 7.

Demikian pula, kita dapat melakukan operasi aritmatika lainnya seperti pengurangan, perkalian, dan pembagian:


echo $((6 - 2)) echo $((4 * 5)) echo $((12 / 3))123echo $((6 - 2))echo $((4 * 5))echo $ ((12 / 3))


Ini masing-masing akan menampilkan 4, 20, dan 4.
Variabel dan Operasi Matematika

Kita juga dapat menggunakan variabel dalam perhitungan matematika kita. Sebagai contoh:


a=5 b=2 echo $((a + b))123a=5b=2echo $((a + b))


Ini akan menghasilkan 7.

Kita juga dapat melakukan operasi pada variabel itu sendiri, seperti ini:


a=5 b=2 echo $((a *= b))123a=5b=2echo $((a *= b))


Ini akan menghasilkan 10. Variabel a sekarang memiliki nilai 10 setelah dikalikan dengan b .
Floating-Point Math Operations

Bash tidak mendukung operasi matematika floating-point, tetapi kita dapat menggunakan alat eksternal seperti bc dan awk untuk melakukan perhitungan ini.

`bc` adalah kalkulator baris perintah yang mendukung presisi arbitrer. Kita dapat menggunakannya untuk melakukan perhitungan floating-point seperti ini:


echo "scale=2; 10 / 3" | bc1echo "skala=2; 10/3" | bc


Ini akan menampilkan 3.33.

awk adalah alat pemrosesan teks yang kuat yang juga mendukung operasi matematika. Kita dapat menggunakannya untuk melakukan kalkulasi floating-point seperti ini:


echo "10.5 2.5" | awk `{printf "%.2fn", $1 / $2}`1echo "10.5 2.5" | awk `{printf "%.2fn", $1 / $2}`


Ini akan menampilkan 4.20.
Gunakan Fungsi untuk Menyederhanakan Kalkulasi Kompleks

Saat bekerja dengan kalkulasi kompleks di Bash, seringkali berguna untuk memecahnya menjadi fungsi yang lebih kecil dan lebih mudah dikelola. Fungsi memungkinkan Anda mengenkapsulasi blok kode dan menggunakannya kembali berkali-kali di seluruh skrip Anda, yang dapat membuat kode Anda lebih modular dan lebih mudah dipahami.

Misalnya, katakanlah Anda ingin menghitung luas lingkaran, berdasarkan radiusnya. Anda dapat membuat fungsi yang disebut "menghitung_area" yang menggunakan radius sebagai argumen dan mengembalikan area:


#!/bin/bash PI=3.14159 count_area() { local radius=$1 local area=$(echo "$PI * $ radius * $radius" | bc) echo $area } radius=5 area=$(menghitung_area $radius) echo "Luas lingkaran dengan radius $radius adalah $area"12345678910111213#!/bin/bash PI=3.14159 menghitung_area( ) {  local radius=$1  local area=$(echo "$PI * $radius * $radius" | bc)  echo $area} radius=5area=$(calculate_area $radius)echo "Luas lingkaran dengan radius $radius is $area"


Skrip ini mendefinisikan fungsi yang disebut count_area yang menggunakan radius sebagai argumen, menghitung luas menggunakan rumus A = πr^2, dan mengembalikan hasilnya. Bagian utama skrip kemudian memanggil fungsi dengan radius 5, menangkap keluaran menggunakan substitusi perintah, dan mencetak hasilnya ke layar.
Menggunakan Pernyataan Bersyarat untuk Penanganan Kesalahan

Saat melakukan perhitungan matematis di Bash, penting untuk menangani kesalahan dengan baik , terutama saat menangani input pengguna atau sumber data eksternal. Salah satu cara melakukannya adalah dengan menggunakan pernyataan bersyarat untuk memeriksa kesalahan dan memberikan umpan balik kepada pengguna.

Misalnya, Anda ingin menghitung faktorial sebuah angka, yang diberikan sebagai input pengguna. Anda dapat membuat skrip yang menggunakan loop untuk menghitung faktorial, dan pernyataan bersyarat untuk memeriksa kesalahan:


#!/bin/bash read -p "Enter a number: " num if ! [[ "$bil" =~ ^[0-9]+$ ]]; lalu gema "Kesalahan: `$num` bukan bilangan bulat yang valid" keluar 1 fi faktorial=1 untuk ((i=1; i

Referensi tecadmin.comArtikel Diperbarui pada: March 13, 2023
Kontributor: Syauqi Wiryahasana
Model: Haifa Manik Intani
Seedbacklink

Recent Posts

TENTANG EMKA.WEB>ID

EMKA.WEB.ID adalah blog seputar teknologi informasi, edukasi dan ke-NU-an yang hadir sejak tahun 2011. Kontak: kontak@emka.web.id.

©2024 emka.web.id Proudly powered by wpStatically