Unix / Linux - Chức năng toán học内置 trong Shell

Xin chào, các bạn có chí hướng trở thành lập trình viên! Hôm nay, chúng ta sẽ bắt đầu một hành trình thú vị vào thế giới của các hàm toán học内置 trong shell Unix/Linux. Đừng lo lắng nếu bạn mới bắt đầu học lập trình - tôi sẽ hướng dẫn bạn từng bước với những giải thích rõ ràng và nhiều ví dụ. Hãy cùng nhau khám phá!

Unix / Linux - Builtin Functions

Những gì là các hàm内置 trong Shell?

Trước khi chúng ta深入研究 các hàm toán học, hãy hiểu thế nào là các hàm内置 trong shell. Đây là những lệnh được xây dựng trực tiếp trong shell, có nghĩa là chúng không cần được cài đặt riêng biệt. Chúng luôn sẵn sàng tại fingertips của bạn, sẵn sàng giúp bạn thực hiện nhiều nhiệm vụ khác nhau một cách hiệu quả.

Tại sao sử dụng các hàm toán học trong các script Shell?

Bạn có thể tự hỏi, "Tại sao chúng ta cần toán học trong các script Shell?" Hãy tưởng tượng bạn đang viết một script để tính toán ngân sách hàng tháng hoặc phân tích một số dữ liệu. Đó là nơi mà các hàm này phát huy tác dụng! Chúng cho phép bạn thực hiện các phép toán ngay trong script Shell của bạn, tiết kiệm thời gian và công sức.

Các hàm toán học phổ biến trong Shell

Hãy cùng khám phá một số hàm toán học phổ biến nhất trong shell Unix/Linux. Chúng ta sẽ sử dụng shell Bash cho các ví dụ của mình, vì nó được sử dụng rộng rãi và thường được cài đặt sẵn trên nhiều hệ thống.

1. Các phép toán cơ bản

Bash cung cấp nhiều cách để thực hiện các phép toán cơ bản. Hãy cùng nhìn vào chúng:

a. Sử dụng lệnh expr

#!/bin/bash
a=10
b=5
sum=$(expr $a + $b)
echo "Tổng của $a và $b là: $sum"

Script này sẽ выводить: Tổng của 10 và 5 là: 15

Ở đây, expr được sử dụng để đánh giá biểu thức $a + $b. Kết quả sau đó được lưu trữ trong biến sum.

b. Sử dụng dấu ngoặc kép (( ))

#!/bin/bash
a=10
b=5
((sum = a + b))
echo "Tổng của $a và $b là: $sum"

Phương pháp này ngắn gọn hơn và thường được ưa thích cho các phép toán đơn giản.

2. Các phép toán phức tạp hơn

Đối với các phép toán phức tạp hơn, Bash cung cấp lệnh bc. Mặc dù không phải là một hàm内置 strictly, nó rất phổ biến và rất hữu ích.

#!/bin/bash
pi=$(echo "scale=2; 22/7" | bc)
echo "Giá trị của pi (đến 2 chữ số thập phân) là: $pi"

Output: Giá trị của pi (đến 2 chữ số thập phân) là: 3.14

Ở đây, scale=2 đặt số chữ số thập phân, và bc thực hiện phép chia.

Bảng các phép toán phổ biến

Dưới đây là bảng các phép toán bạn có thể thực hiện trong Bash:

Phép toán Ký hiệu Ví dụ
Cộng + echo $((5 + 3))
Trừ - echo $((10 - 4))
Nhân * echo $((6 * 7))
Chia / echo $((20 / 5))
Modulus (Phần dư) % echo $((17 % 3))
Lũy thừa ** echo $((2 ** 3))

Các hàm toán học nâng cao

Bây giờ chúng ta đã bao gồm các基础知识, hãy cùng khám phá một số hàm toán học nâng cao. Những hàm này không được内置 trong Bash, nhưng chúng thường được sử dụng trong các script shell thông qua lệnh bc.

1. Căn bậc hai

#!/bin/bash
number=16
sqrt=$(echo "scale=2; sqrt($number)" | bc)
echo "Căn bậc hai của $number là: $sqrt"

Output: Căn bậc hai của 16 là: 4.00

2. Sin và Cos

#!/bin/bash
angle=30
sin=$(echo "scale=4; s($angle * 3.14159 / 180)" | bc -l)
cos=$(echo "scale=4; c($angle * 3.14159 / 180)" | bc -l)
echo "Sine của $angle độ là: $sin"
echo "Cosine của $angle độ là: $cos"

Output:

Sine của 30 độ là: .4999
Cosine của 30 độ là: .8660

Lưu ý rằng tùy chọn -l với bc, amely tải thư viện toán học cho các hàm lượng giác.

Ví dụ thực tế: Bộ chuyển đổi nhiệt độ

Hãy áp dụng kiến thức mới học được với một ví dụ thực tế - một bộ chuyển đổi nhiệt độ!

#!/bin/bash

echo "Bộ chuyển đổi nhiệt độ"
echo "1. Độ Celsius sang Độ Fahrenheit"
echo "2. Độ Fahrenheit sang Độ Celsius"
read -p "Nhập lựa chọn của bạn (1/2): " choice

case $choice in
1)
read -p "Nhập nhiệt độ ở Độ Celsius: " celsius
fahrenheit=$(echo "scale=2; ($celsius * 9/5) + 32" | bc)
echo "$celsius°C bằng $fahrenheit°F"
;;
2)
read -p "Nhập nhiệt độ ở Độ Fahrenheit: " fahrenheit
celsius=$(echo "scale=2; ($fahrenheit - 32) * 5/9" | bc)
echo "$fahrenheit°F bằng $celsius°C"
;;
*)
echo "Lựa chọn không hợp lệ"
;;
esac

Script này minh họa cách chúng ta có thể sử dụng các hàm toán học trong một tình huống thực tế. Nó cho phép người dùng chuyển đổi nhiệt độ giữa Celsius và Fahrenheit.

Kết luận

Chúc mừng! Bạn vừa mới bước những bước đầu tiên vào thế giới của script shell và các hàm toán học. Nhớ rằng, thực hành làm nên hoàn hảo. Thử tạo ra các script của riêng bạn sử dụng các hàm này - có thể là một máy tính hoặc một script để phân tích dữ liệu.

Trong hành trình lập trình của bạn, bạn sẽ thấy rằng các phép toán toán học cơ bản này là nền tảng cho các phép toán phức tạp hơn. Hãy tiếp tục khám phá, tiếp tục học hỏi, và quan trọng nhất, hãy vui vẻ với nó!

Chúc mừng codding, các nhà kỹ thuật tương lai! ??‍??‍?

Credits: Image by storyset