main and NOK

This commit is contained in:
gyg72
2026-02-27 19:56:02 +00:00
commit 2142b8b008
2 changed files with 61 additions and 0 deletions

36
lcm.sh Executable file
View File

@@ -0,0 +1,36 @@
#!/bin/bash
if [ $# -ne 2 ]; then
echo "Использование: $0 <число1> <число2>"
exit 1
fi
if ! [[ $1 =~ ^[0-9]+$ ]] || ! [[ $2 =~ ^[0-9]+$ ]]; then
echo "Ошибка: аргументы должны быть неотрицательными целыми числами"
exit 1
fi
a=$1
b=$2
if [ $a -eq 0 ] || [ $b -eq 0 ]; then
echo "НОК($1, $2) = 0"
exit 0
fi
gcd() {
local x=$1
local y=$2
while [ $y -ne 0 ]; do
local remainder=$((x % y))
x=$y
y=$remainder
done
echo $x
}
gcd_result=$(gcd $a $b)
lcm_result=$(( (a * b) / gcd_result ))
echo "НОК($1, $2) = $lcm_result"