Compare commits
7 Commits
feature/lc
...
feature/lc
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
82a0a158eb | ||
| 8a63684eff | |||
| 336710739c | |||
|
|
1970118dba | ||
|
|
8d4c3ee399 | ||
|
|
243e24255c | ||
|
|
aad3bdba1e |
@@ -1,6 +1,6 @@
|
||||
#!/bin/bash
|
||||
|
||||
|
||||
# Function to find GCD using Euclidean algorithm
|
||||
gcd() {
|
||||
local a=$1
|
||||
local b=$2
|
||||
@@ -14,12 +14,12 @@ gcd() {
|
||||
echo $a
|
||||
}
|
||||
|
||||
|
||||
# Check arguments
|
||||
if [ $# -ne 2 ]; then
|
||||
echo "Usage: $0 <number1> <number2>"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
||||
# Call function and print result
|
||||
result=$(gcd $1 $2)
|
||||
echo "НОД($1, $2) = $result"
|
||||
|
||||
35
script_LCM.sh
Normal file
35
script_LCM.sh
Normal 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"
|
||||
31
script_main.sh
Executable file
31
script_main.sh
Executable file
@@ -0,0 +1,31 @@
|
||||
#!/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"
|
||||
Reference in New Issue
Block a user