Skip to content

emka.web.id

menulis pengetahuan – merekam peradaban

Menu
  • Home
  • Tutorial
  • Search
Menu

Bagaimana Mengerjakan Matematika Floating Point di Skrip Bash Linux

Posted on November 13, 2023

Linux Bash shell hanya mendukung aritmatika bilangan bulat. Ia tidak dapat memahami atau mengatasi perhitungan floating point. Utilitas bc memberi Anda perhitungan floating point presisi secara interaktif dan dalam skrip shell.

Mengapa Bash Hanya Mendukung Integer

Keputusan desain asli untuk membatasi shell UnixBourne ke aritmatika bilangan bulat mungkin berakar pada pemetaan komputasi awal bilangan bulat ke satu byte RAM . Kita mungkin tidak pernah tahu apa sebenarnya yang melatarbelakangi keputusan tersebut. Juga, dalam hal ini, mengapa versi Linux dari shell Bourne, shell Bash, memilih untuk mengikutinya.

Dengan sendirinya, Bash tidak dapat melakukan penghitungan pada bilangan floating point, dan penghitungan pada bilangan bulat yang memiliki bagian pecahan pada jawabannya , dilaporkan sebagai nilai bilangan bulat terpotong. Hal ini berlaku pada baris perintah dan skrip Bash shell. Tergantung pada kasus penggunaan Anda, ini bisa menjadi masalah atau terhenti.

Linux hadir dengan dua aplikasi utilitas yang memungkinkan Anda melakukan perhitungan floating point. Salah satunya adalah DC. Ini sedikit aneh, beroperasi seperti dalam notasi Polandia terbalik. Alat lainnya adalah bc. Ini dapat digunakan secara interaktif atau sebagai perintah, dan itulah solusi yang akan kita bahas di sini.

Masalahnya

Mari kita buat Bash membagi enam dengan tiga.

echo $((6/3))

Kami mendapatkan jawaban yang kami harapkan dua. Sekarang mari kita bagi enam dengan tujuh. Jelas, itu akan memiliki jawaban pecahan.

echo $((6/7))

Zero jelas salah. Ayo coba lagi, bagi 16 dengan 7.

echo $((16/7))

Kita mendapat jawaban dua. Yang terjadi adalah bagian pecahan dari jawaban tersebut dibuang, sehingga jawabannya terpotong. Tidak ada bagian pecahan pada contoh pertama, jadi kita mendapatkan jawaban yang benar.

Contoh kedua tidak memiliki elemen bilangan bulat dalam jawabannya, hanya bagian pecahan. Karena bagian pecahannya telah dibuang, maka jawaban yang ditampilkan adalah nol. Pada contoh ketiga, 7 habis dibagi 16, dengan sisa pecahan. Sekali lagi, sisanya dibuang, dan hasilnya terpotong.

Menggunakan bc Secara Interaktif

Anda dapat menggunakan bc sebagai kalkulator interaktif dengan mengetik bc dan menekan tombol “Enter”.

bc

Aplikasi bc diluncurkan, mengumumkan nomor versinya, dan kemudian menunggu versi Anda memasukkan. Mengetik perhitungan dan menekan “Enter” menyebabkan bc mengevaluasi perhitungan dan menampilkan jawabannya.

16 * 41024 / 322^2 * 1024

Anda dapat menggunakan “Ctrl+L” untuk menghapus layar, dan “Ctrl+D” untuk keluar dari program. Mari kita coba perhitungan yang jawabannya akan memiliki komponen pecahan.

22 / 7

Bukan itu yang kami harapkan. Berlawanan dengan intuisi, meskipun bc memungkinkan kita menggunakan presisi sembarang, secara default bc tidak akan menampilkan koma desimal atau angka apa pun yang mengikutinya.

Untuk membuat jawaban sebenarnya terlihat, kita perlu memberi tahu bc berapa banyak tempat desimal yang akan ditampilkan. Kami melakukan ini dengan perintah “skala”. Kita akan meminta tujuh angka desimal, dan melakukan kembali penghitungan kita.

scale=722 / 7

Akhirnya, kita berhasil mencapai tujuan. Pengaturan “skala” tetap berlaku sampai Anda mengubahnya. Menyetel jumlah tempat desimal memberitahukan jumlah tempat maksimum yang akan ditampilkan. Jika suatu jawaban tidak memerlukan banyak tempat desimal, jawaban tersebut akan ditampilkan dengan jumlah tempat desimal yang diperlukan dan tidak lebih. Itu tidak diisi dengan angka nol yang tidak berarti.

scale=100.300003 * 0.5

Anda dapat membuat daftar perhitungan yang berbeda pada baris yang sama dengan menggunakan titik koma “;” untuk memisahkan mereka. Jawaban ditampilkan per baris seperti biasa, sesuai urutan perhitungannya.

25*6; 12,5 + 45,001; 3 + 5 + 7 + 9

Anda juga dapat memasukkan perintah “skala” ke dalam daftar.

scale=8; 22/7; skala=3; 0,3 * 0,071Perpustakaan Matematika Standar

Opsi -l (perpustakaan matematika standar) menyebabkan bc memuat sekumpulan fungsi, dan menyetel “skala” ke 20 tempat desimal.

bc -l22 / 7

Dengan pustaka standar dimuat, Anda dapat menggunakan fungsi-fungsi ini dalam perhitungan Anda.

s (x): Sinus x c (x): Kosinus x. a (x): Garis singgung busur x l (x): Logaritma natural dari x e (x): Eksponensial e terhadap nilai x j (n,x): Fungsi Bessel orde bilangan bulat n dari x.

Sine, cosinus, dan arctangent menggunakan nilai radian.

s (1.1) c (.891207) a (.628473)Mengirim Input ke bc pada Command Line

Anda dapat menggunakan pengalihan dan pipa untuk mengirim input ke bc. Ini memproses input Anda dan menampilkan jawabannya di jendela terminal.

Anda dapat mengarahkan ulang ke bc dengan atau tanpa opsi -l (perpustakaan matematika standar).

bc <<< 22/7bc -l

Terbaru

  • Sejarah Ganyang Malaysia: Saat Indonesia Hampir Perang Terbuka dengan Inggris
  • Kronologi Jatuhnya Pesawat ATR 400 Yogyakarta-Makassar di Maros
  • Bosen Nyupir Bus Terus? Ini 9 Mod Bussid Motor Honda Paling Keren Buat Kalian Coba!
  • Saldo DANA Gratis dari Kode Redeem Terbaru 2026, APK JadiDuit Penipu?
  • Ngefans Maxwell Clash of Champions? Begini Cara Masuk Saluran WA-nya Biar Update Terus!
  • Ini Cara Pakai greatonlinetools.com buat Nambah Likes dan Iseng ke Teman!
  • Cara Pakai Bug Token M7 Mobile Legends, Banjir Skin Prime Cuma Modal Browser!
  • Pusing Gagal Simpan Data Internet Dapodik 2026.b? Ini Trik Jitu Mengatasinya!
  • Mau Cuan Tambahan? Ini Cara Mudah Jadi Clipper di Ternak Klip Modal HP Doang!
  • Akun PTK Silang Merah di Dapodik 2026.b Bikin Panik? Jangan Dihapus, Coba Trik Ini Dulu!
  • Ini Trik Supaya Bisa Mancing Otomatis di Fish It Roblox Pakai GG Game Space
  • Sering Stuck Saat Registrasi Dapodik 2026.b? Coba Cara Offline Ini, Dijamin Lancar!
  • Belum Tahu? Ini Trik Isi Data Internet Dapodik 2026.B Biar Validasi Aman!
  • Belum Tahu? Inilah Cara Dapat Saldo E-Wallet Cuma Modal Tidur di Sleep Time Tracker
  • Padahal Negara Maju, Kenapa Selandia Baru Nggak Bangun Jembatan Antar Pulau? Ini Alasannya!
  • Nonton Drama Bisa Dapat 1 Juta? Cek Dulu Fakta dan Bukti Penarikan Aplikasi Gold Drama Ini!
  • Takut Saldo Habis? Gini Cara Stop Langganan CapCut Pro Sebelum Perpanjangan Otomatis
  • Gini Caranya Hilangkan Invalid Peserta Didik di Dapodik 2026 B Tanpa Ribet, Cuma Sekali Klik!
  • Rombel Hilang di Dapodik 2026 B? Tenang, Gini Cara Mudah Mengatasinya Tanpa Menu Aksi!
  • Pusing Lihat Ratusan Invalid Sarpras di Dapodik 2026 B? Tenang, Ini Cara Membereskan Datanya
  • Validasi Merah Terus? Ini Cara Tuntas Isi Data Listrik & Internet di Dapodik 2026 B
  • Inilah Trik Install Dapodik 2026.B Tanpa Patch, Wajib Uninstall Versi Lama!
  • Apakah APK PinjamAja Penipu?
  • Ini Trik Cepat Cuan di Clear Blast Tanpa Undang Teman
  • Belum Tahu? Inilah Suku Bajau Punya Gen “Mutan” Mirip Fishman One Piece, Ini Faktanya!
  • Inilah Paket PLTS Hybrid 6kVA Aspro DML 600 yang Paling Powerful!
  • Suku Tsaatan: Suku Mongolia Penggembala Rusa Kutub
  • Game Happy Rush Terbukti Membayar atau Cuma Scam Iklan?
  • Cara Nonton Drama Dapat Duit di Free Flick, Tapi Awas Jangan Sampai Tertipu Saldo Jutaan!
  • APK Pinjol Rajindompet Penipu? Ini Review Aslinya
  • NVIDIA Rubin Explained: The 6-Chip Supercomputer That Changes Everything
  • What is OpenEverest? The Future of Database Management on Kubernetes
  • T3g: Code is Cheap Now, Software Isn’t
  • Is the New $130 Raspberry Pi AI Hat+ 2 Worth Your Allowance? A Detailed Review
  • Create AI Voices on Your CPU: Pocket TTS Explained for Beginners
  • Apa itu State Space Models (SSM) dalam AI?
  • Begini Cara Mencegah Output Agen AI Melenceng Menggunakan Task Guardrails di CrewAI
  • Tutorial AI Lengkap Strategi Indexing RAG
  • Cara Membuat AI Voice Agent Cerdas untuk Layanan Pelanggan Menggunakan Vapi
  • Inilah Cara Belajar Cepat Model Context Protocol (MCP) Lewat 7 Proyek Open Source Terbaik
  • Apa itu ToneShell? Backdoor atau Malware Biasa?
  • Apa itu Parrot OS 7? Ini Review dan Update Terbesarnya
  • Clipper Malware? Ini Pengertian dan Bahaya yang Mengintai Kalian
  • Kronologi Serangan Gentlemen Ransomware di Oltenia Energy
  • Apa itu CVE-2020-12812? Ini Penjelasan Celah Keamanan Fortinet FortiOS 2FA yang Masih Bahaya
Beli Pemotong Rumput dengan Baterai IRONHOOF 588V Mesin Potong Rumput 88V disini https://s.shopee.co.id/70DBGTHtuJ
Beli Morning Star Kursi Gaming/Kantor disini: https://s.shopee.co.id/805iTUOPRV

©2026 emka.web.id | Design: Newspaperly WordPress Theme