From 35a6ea63e9dfc3c041295b7ee968e67e4ef62477 Mon Sep 17 00:00:00 2001 From: 24_OskinEA <24_OskinEA@iux.local> Date: Thu, 26 Feb 2026 19:47:32 +0300 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=20=D1=81=D0=BA=D1=80=D0=B8=D0=BF=D1=82=20=D0=9D=D0=9E?= =?UTF-8?q?=D0=94=20=D0=B8=20=D0=BE=D1=81=D0=BD=D0=BE=D0=B2=D0=BD=D0=BE?= =?UTF-8?q?=D0=B9=20=D1=88=D0=B0=D0=B1=D0=BB=D0=BE=D0=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- main.sh | 12 ++++++++++++ script_nod.sh | 31 +++++++++++++++++++++++++++++++ 2 files changed, 43 insertions(+) create mode 100755 main.sh create mode 100755 script_nod.sh diff --git a/main.sh b/main.sh new file mode 100755 index 0000000..0b1b41b --- /dev/null +++ b/main.sh @@ -0,0 +1,12 @@ +#!/bin/bash + +# Запрашиваем первое число +echo "Введите первое число:" +read num1 + +# Запрашиваем второе число +echo "Введите второе число:" +read num2 + +# Вызываем скрипт НОД и передаем ему числа +./script_nod.sh $num1 $num2 diff --git a/script_nod.sh b/script_nod.sh new file mode 100755 index 0000000..5f50203 --- /dev/null +++ b/script_nod.sh @@ -0,0 +1,31 @@ +#!/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 + +# Функция для нахождения НОД алгоритмом Евклида +gcd() { + local a=$1 + local b=$2 + + while [ $b -ne 0 ]; do + local temp=$b + b=$((a % b)) + a=$temp + done + + echo $a +} + +# Вычисление НОД +result=$(gcd $1 $2) +echo $result