Квадратный корень числа в Python
В Python есть много способов найти квадратный корень числа.
Использование экспонентного оператора для извлечения квадратного корня числа
num = input("Please enter a number:\n") sqrt = float(num) ** 0.5 print(f' square root is ')
Please enter a number: 4.344 4.344 square root is 2.0842264752180846 Please enter a number: 10 10 square root is 3.1622776601683795
Я использую встроенную функцию float() для преобразования введенной пользователем строки в число с плавающей запятой.
Функция input() используется для получения пользовательского ввода из стандартного ввода.
Математическая функция sqrt()
Функция sqrt() математического модуля Python – это рекомендуемый подход для получения квадратного корня из числа.
import math num = 10 num_sqrt = math.sqrt(num) print(f' square root is ')
Математическая функция pow()
Это не рекомендуемый подход. Но квадратный корень из числа равен степени 0,5.
>>> import math >>> >>> math.pow(10, 0.5) 3.1622776601683795 >>>
Квадратный корень комплексного числа
Мы можем использовать модуль cmath, чтобы получить квадратный корень из комплексного числа.
import cmath c = 1 + 2j c_sqrt = cmath.sqrt(c) print(f' square root is ')
(1+2j) square root is (1.272019649514069+0.7861513777574233j)
Квадратный корень матрицы или многомерного массива
Мы можем использовать функцию NumPy sqrt(), чтобы получить квадратный корень из элементов матрицы.
Вычисление квадратного корня числа в Python

Для вычисления квадратного корня числа в языке программирования Python существует несколько команд. Рассмотрим все варианты.
Вычисления квадратного корня числа возведением в степень
В Python есть выражение для возведения числа в степень ( ** ) :
2**3 >>> 8
А мы знаем, что вычисление квадратного корня числа, аналогично возведению в степень 1/2. Значит на языку Python можем воспользоваться выражением для возведения числа в степень для вычисления корня числа:
16**0.5 >>> 4.0
Вычисления квадратного корня числа с помощью модуля math
Второй вариант вычисления квадратного корня — это импорт модуля math и последующее использование функции данного модуля:
import math math.sqrt(16) >>> 4.0
В первой стоке мы импортируем встроенный модуль math, а во второй используем функцию вычисления квадратного корня (math.sqrt), которая содержится в данном модуле.
Вычисления квадратного корня числа с помощью встроенный в python функции
В Python есть встроенная функция, которая аналогична оператору (**):
pow(x, y)
Здесь x — число которое возводим в степень, а y — непосредственно степень.
pow (16, 0.5) >>> 4.0
Как вычислить квадратный корень в Python
В Python есть предопределенная функция sqrt(), которая возвращает квадратный корень числа. Она определяет квадратный корень из значения, которое умножается на само себя и дает число. Функция sqrt() не используется напрямую для нахождения квадратного корня из заданного числа, поэтому нам нужно использовать математический модуль для вызова функции sqrt() в Python.
Например, квадратный корень из 144 равен 12.

Использование метода math.sqrt()
Функция sqrt() – это встроенная функция, которая возвращает квадратный корень из любого числа. Ниже приведены шаги, чтобы найти квадратный корень из числа.
- Запустите программу.
- Определите любое число, квадратный корень которого нужно найти.
- Вызовите функцию sqrt() и передайте значение, которое вы определили на шаге 2, сохраните результат в переменной.
- Выведите квадратный корень.
- Завершите программу.
Давайте напишем программу на Python.
import math # import math module N = 25 # define the value to the variable N result = math.sqrt(N) # use math.sqrt() function and pass the variable. print(" Square root of 25 is :", result) # prints the square root of a given number M = 625 # define the value result = math.sqrt(M) # use math.sqrt() function and pass the variable print(" Square root of 625 is :", result) # prints the square root of a given number P = 144 # define the value result = math.sqrt(P) # use math.sqrt() function and pass the variable print(" Square root of 144 is :", result) # prints the square root of a given number S = 64 # define the value result = math.sqrt(S) # use math.sqrt() function and pass the variable print(" Square root of 64 is :", result) # prints the square root of a given number

Давайте создадим программу на Python, которая находит квадратный корень десятичных чисел.
import math print(" The Square root of 4.5 is", math.sqrt(4.5)) # Pass the decimal number print(" The Square root of 627 is", math.sqrt(627)) # Pass the decimal number print(" The Square root of 6.25 is", math.sqrt(6.25)) # Pass the decimal number print(" The Square root of 0 is", math.sqrt(0)) # Pass number as 0

В следующей программе мы прочитали число от пользователя и нашли квадратный корень.
import math # import math module a = int(input("Enter a number to get the Square root")) # take an input res = math.sqrt(a) # Use math.sqrt() function and pass the variable a. print("Square root of the number is", res) # print the Square Root

Использование функции math.pow()
Pow() – это встроенная функция, которая используется в Python для возврата степени числа. У него два параметра. Первый параметр определяет число, а второй параметр определяет увеличение мощности до этого числа.
import math # import the math module num = float(input("Enter the number :")) # take an input SquareRoot = math.pow(num, 0.5) # Use the math.pow() function and pass the value and 0.5(which is equal to √) as an parameters print(" The Square Root of the given number = " .format(num, SquareRoot)) # print the Square Root.

Использование оператора **
Мы также можем использовать оператор экспоненты, чтобы найти квадратный корень из числа. Оператор может применяться между двумя операндами. Например, x ** y. Это означает, что левый операнд возведен в степень правого.
Ниже приведены шаги, чтобы найти квадратный корень из числа.
- Шаг 1. Определите функцию и передайте значение в качестве аргумента.
- Шаг 2. Если заданное число меньше 0 или отрицательное, оно ничего не возвращает.
- Шаг 3. Используйте экспоненциальный знак **, чтобы найти степень числа.
- Шаг 4. Возьмите числовое значение у пользователя.
- Шаг 5. Вызовите функцию и сохраните ее вывод в переменной.
- Шаг 6. Отобразите квадратный корень числа в Python.
- Шаг 7. Выход из программы.
Давайте реализуем вышеуказанные шаги.
import math # import the math package or module def sqrt_fun(num): # define the sqrt_fun() and pass the num as an argument if num < 0: # if num is less than 0 or negative, it returns nothing return else: return num ** 0.5 # Use the exponent operator num = int(input(" Enter a numeric value: ") ) # take an input from the user res = sqrt_fun(num) # call the sqrt_fun() to find the result print(" Square Root of the = ".format(num, res)) # print the Square Root of the variable

Как мы видим в приведенном выше примере, сначала мы берем ввод(число) от пользователя, а затем используем оператор степени **, чтобы узнать степень числа. Где 0,5 равно √(символ корня), чтобы увеличить степень данного числа.
Давайте создадим программу Python, которая находит квадратный корень из указанного диапазона, в следующей программе вычисление из всех чисел от 0 до 50.
import math for i in range(50): print("Square root of a number = ".format(i,math.sqrt(i)))
Как извлечь корень в Python (sqrt)
Если вам нужно найти сторону квадрата, когда известна одна лишь его площадь, или вы намерены рассчитать расстояние между двумя точками в декартовых координатах, то без особого инструмента не обойтись. Математики прошлого придумали для этих вычислений квадратный корень, а разработчики Python воплотили его в функции sqrt() .
Но обо всём по порядку.
Что такое квадратный корень
Корнем квадратным из числа "X" называется такое число "Y", которое при возведении его во вторую степень даст в результате то самое число "X".
Операция нахождения числа "Y" называется извлечением квадратного корня из "X". В математике для её записи применяют знак радикала:
Нотация питона отличается в обоих случаях, и возведение в степень записывается при помощи оператора " ** ":
a = 2 b = a ** 2 print(b) > 4
А квадратный корень в питоне представлен в виде функции sqrt() , которая существует в рамках модуля math . Поэтому, чтобы начать работу с корнями, модуль math нужно предварительно импортировать:
Функция sqrt() принимает один параметр — то число, из которого требуется извлечь квадратный корень. Тип данных возвращаемого значения — float .
import math import random # пример использования функции sqrt() # отыщем корень случайного числа и выведем его на экран rand_num = random.randint(1, 100) sqrt_rand_num = math.sqrt(rand_num) print('Случайное число = ', rand_num) > Случайное число = 49 print('Корень = ', sqrt_rand_num) > Корень = 7.0
Квадратный корень
Положительное число
Именно на работу с неотрицательными числами "заточена" функция sqrt() . Если число больше или равно нулю, то неважно, какой у него тип. Вы можете извлекать корень из целых чисел:
import math print(math.sqrt(100)) > 10.0
А можете — из вещественных:
import math print(math.sqrt(111.5)) > 10.559356040971437
Легко проверить корректность полученных результатов с помощью обратной операции возведения в степень:
print(math.sqrt(70.5)) > 8.396427811873332 # возвести в степень можно так print(8.396427811873332 ** 2) > 70.5 # а можно с помощью функции pow() print(pow(8.396427811873332, 2)) > 70.5
Отрицательное число
Функция sqrt() не принимает отрицательных аргументов. Только положительные целые числа, вещественные числа и ноль.
Такая работа функции идёт вразрез с математическим определением. В математике корень спокойно извлекается из чисел меньше 0. Вот только результат получается комплексным, а таким он нужен для относительно узкого круга реальных задач, вроде расчетов в сфере электроэнергетики или физики волновых явлений.
Поэтому, если передадите отрицательное число в sqrt() , то получите ошибку:
print(math.sqrt(-1)) > ValueError: math domain error
Ноль
Функция sqrt() корректно отрабатывает с нулём на входе. Результат тривиален и ожидаем:
Кубический корень
Само название функции sqrt() намекает нам на то, что она не подходит для извлечения корня степени отличной от двойки. Поэтому для извлечения кубических корней, сначала необходимо вспомнить связь между степенями и корнями, которую продемонстрируем на корне квадратном:
Вышеуказанное соотношение несложно доказать и для других степеней вида 1/n .
# Квадратный корень можно извлечь с помощью операции возведения в степень "**" a = 4 b = a ** 0.5 print(b) > 2.0
В случае с квадратным или кубическим корнем эти операции действительно эквивалентны, но, вообще говоря, в математике извлечение корня и возведение в дробную степень имеют существенные отличия при рациональных степенях вида m/n, где m != 1. Формально, в дробно-рациональную степень можно возводить только положительные вещественные числа. В противном случае возникают проблемы:
Таким образом, извлечь кубический корень в Python можно следующим образом:
print(pow(8, 1/3)) > 2.0
Корень n-степени
То, что справедливо для корня третьей степени, справедливо и для корней произвольной степени.
# извлечём корень 17-й степени из числа 5600 x = 5600 y = 17 z = pow(x, (1/y)) print(z) > 1.6614284717080507 # проверяем корректность результата print(pow(z, y)) > 5600.0
Но раз уж мы разбираемся с математической темой, то попытаемся мыслить более обобщённо. С помощью генератора случайных чисел с заданной точностью будем вычислять корень случайной степени из случайного числа:
import random # точность можно задать на ваше усмотрение x = random.randint(1, 10000) y = random.randint(1, 100) z = pow(x, (1 / y)) print('Корень степени', y, 'из числа', x, 'равен', z) # при проверке вероятны незначительные расхождения из-за погрешности вычислений print('Проверка', pow(z, y)) # но специально для вас автор накликал целочисленный результат > Корень степени 17 из числа 6620 равен 1.6778624404513571 > Проверка 6620.0
Решение реальной задачи с использованием sqrt
Корень — дитя геометрии. Когда Пифагор доказал свою знаменитую теорему, людям тут же захотелось вычислять стороны треугольников, проверять прямоту внешних углов и сооружать лестницы нужной длины.
Соотношение a2 + b2 = c2, где "a" и "b" — катеты, а "c" — гипотенуза — естественным образом требует извлекать корни при поиске неизвестной стороны. Python-а под рукой у древних греков и вавилонян не было, поэтому считать приходилось методом приближений. Жизнь стала проще, но расчет теоремы Пифагора никто не отменял и в XXI веке.
Решим задачку про вышку сотовой связи. Заказчик требует рассчитать высоту сооружения, чтобы радиус покрытия был 23 километра. Мы неспешно отходим на заданное расстояние от предполагаемого места строительства и задумчиво смотрим под ноги. В голове появляются очертания треугольника с вершинами:
- Ваше местоположение;
- Центр Земли;
- Пиковая высота вышки.
Модель готова, приступаем к написанию кода:
import math # расстояние от вас до вышки from_you_to_base_station = 23 # радиус земли earth_radius = 6371 # расчет расстояния от центра земли до пика сооружения по теореме Пифагора height = math.sqrt(from_you_to_base_station ** 2 + earth_radius ** 2) # расчет высоты вышки(км) base_station_height = height - earth_radius print('Требуемая высота(м): ', round(base_station_height * 1000)) > Требуемая высота(м): 42
Расчёт выполнен, результат заказчику предоставлен. Можно идти пить чай и радоваться тому, что теперь ещё больше людей смогут звонить родным и сидеть в интернете.
