diff --git a/script1_1.sh b/script1_1.sh new file mode 100755 index 0000000..1b9f806 --- /dev/null +++ b/script1_1.sh @@ -0,0 +1,32 @@ +#!/bin/bash + +# Проверяем, что нам дали два числа +if [ $# -ne 2 ]; then + echo "Ошибка! Нужно ввести два числа" + echo "Пример: ./script_GCD.sh 15 20" + exit 1 +fi + +# Запоминаем числа +a=$1 +b=$2 + +# Сохраняем исходные числа для вывода +original_a=$a +original_b=$b + +# Проверяем, что это числа (не буквы) +if ! [[ "$a" =~ ^[0-9]+$ ]] || ! [[ "$b" =~ ^[0-9]+$ ]]; then + echo "Ошибка! Введите только целые положительные числа" + exit 1 +fi + +# Алгоритм Евклида (способ нахождения НОД) +while [ $b -ne 0 ]; do + remainder=$((a % b)) + a=$b + b=$remainder +done + +# Выводим результат +echo "НОД($original_a, $original_b) = $a"