diff --git a/nok.sh b/nok.sh index e69de29..3cf0b1c 100644 --- a/nok.sh +++ b/nok.sh @@ -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 \ No newline at end of file