Обновить nok.sh
This commit is contained in:
33
nok.sh
Normal file
33
nok.sh
Normal file
@@ -0,0 +1,33 @@
|
||||
#!/bin/bash
|
||||
if ! command -v gcd &> /dev/null; then
|
||||
source ./nod.sh
|
||||
fi
|
||||
|
||||
lcm() {
|
||||
local a=$1
|
||||
local b=$2
|
||||
|
||||
if [ $a -eq 0 ] || [ $b -eq 0 ]; then
|
||||
echo 0
|
||||
return 0
|
||||
fi
|
||||
|
||||
local gcd_val=$(gcd $a $b)
|
||||
local lcm_val=$((a * b / gcd_val))
|
||||
|
||||
echo $lcm_val
|
||||
}
|
||||
|
||||
if [[ "${BASH_SOURCE[0]}" == "${0}" ]]; then
|
||||
if [ $# -ne 2 ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if ! [[ "$1" =~ ^[0-9]+$ ]] || ! [[ "$2" =~ ^[0-9]+$ ]]; then
|
||||
echo "Ошибка: Аргументы должны быть целыми положительными числами"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
result=$(lcm $1 $2)
|
||||
echo "НОК($1, $2) = $result"
|
||||
fi
|
||||
Reference in New Issue
Block a user