2 Commits

Author SHA1 Message Date
bd0ea75fcf Merge pull request 'Add LCM script (Task 2)' (#6) from feature/lcm-script into feature/gcd-script
Reviewed-on: #6
2026-03-14 22:33:31 +03:00
lilrax
f1707d4691 Add LCM script (Task 2) 2026-03-14 22:18:56 +03:00
3 changed files with 35 additions and 32 deletions

View File

@@ -1 +0,0 @@
# Lab Git

35
script_LCM.sh Executable file
View File

@@ -0,0 +1,35 @@
#!/bin/bash
# Function to find GCD (Greatest Common Divisor)
gcd() {
local a=$1
local b=$2
while [ $b -ne 0 ]; do
local temp=$b
b=$((a % b))
a=$temp
done
echo $a
}
# Function to find LCM (Least Common Multiple)
lcm() {
local a=$1
local b=$2
# LCM = (a * b) / GCD(a, b)
local gcd_value=$(gcd $a $b)
echo $(( (a * b) / gcd_value ))
}
# Check arguments
if [ $# -ne 2 ]; then
echo "Usage: $0 <number1> <number2>"
exit 1
fi
# Call function and print result
result=$(lcm $1 $2)
echo "НОК($1, $2) = $result"

View File

@@ -1,31 +0,0 @@
#!/bin/bash
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
echo "=== Калькулятор НОД и НОК ==="
echo ""
read -p "Введите первое число: " num1
read -p "Введите второе число: " num2
if ! [[ "$num1" =~ ^[0-9]+$ ]] || ! [[ "$num2" =~ ^[0-9]+$ ]]; then
echo "Ошибка: введите целые положительные числа!"
exit 1
fi
echo ""
echo "Результаты:"
echo "-----------"
echo -n "НОД: "
bash "$SCRIPT_DIR/script_GCD.sh" "$num1" "$num2"
echo -n "НОК: "
bash "$SCRIPT_DIR/script_LCM.sh" "$num1" "$num2"