Как пишется корень в программировании

Квадратный корень в программировании вычисляется во многих языках программирования при помощи специальных функций. Но есть языки, в которых нет встроенных функций для извлечения корня, — тогда в них приходится «изворачиваться» собственными методами. Поэтому важно вспомнить, что такое корень числа, из курса математики, чтобы правильно его извлекать «собственными методами».

Квадратный корень из числа А — это некое число В, которое при умножении на само себя (возведение во 2-ю степень) дает число А. Все это можно выразить формулой: А=В2 или А=В*В.

Извлечением корня из числа А называют операцию по поиску числа В. Мы покажем, как это делается в нескольких языках программирования.

Извлечение корня в Java

При программировании на Java извлечение корня происходит при помощи класса «Math» и метода «static double sqrt(double a)». 

Как выглядит извлечение корня в коде:

public class TestSqrt {

 public static void main(String[] args) {

  int x = 9;

  double y = Math.sqrt(x);

  System.out.println(«Корень квадратный из числа » + x + » будет равен » + y);

 }

}

Запустив эту программу, мы получим следующий результат:

Корень квадратный из числа 9 будет равен 3

Извлечение корня в Python

Для вычисления квадратного корня в Python применяется функция «sqrt()», которая расположена в модуле «math».

Как извлечение корня выглядит в коде:

import math

number = 9

sqrt = math.sqrt(number)

print(«Корень квадратный из числа » + str(number) + » будет равен » + str(sqrt))

Запустив эту программу, мы получим следующий результат:

Корень квадратный из числа 9 будет равен 3

Есть еще один изящный способ извлечения корня на языке программирования Python — применить возведение в степень «0,5». Кстати, такой способ применим и в других языках программирования, где отсутствует функция для вычисления квадратного корня. Как это выглядит в коде:

number = 9

sqrt = number ** (0.5)

print («Корень квадратный из числа «+str(num)+» будет равен «+str(sqrt))

Запуск этой программы выдаст такой же результат, как и в первом случае:

Корень квадратный из числа 9 будет равен 3

Напомним, что символы «**» являются оператором возведения в степень.

Как извлечь квадратный корень в Си

Извлечь корень на С/С++ не сложнее, чем в предыдущих языках программирования, так как здесь для вычисления квадратного корня применяется такая же функция sqrt() из модуля «cmath». 

Как извлечение корня выглядит в коде:

#include <iosteram>

#include <cmath>

using namespace std;

int main()

{

    double y = 9, result;

    result = sqrt(y);

    cout < < “Корень квадратный из числа “ < < y < < “будет равен “ < < result < < endl;

return 0;

}

Запустив эту программу, мы получим следующий результат:

Корень квадратный из числа 9 будет равен 3

Заключение

Квадратный корень в программировании несложно вычислить, если язык программирования содержит стандартные функции и модули для того, чтобы осуществлять подобные вычисления. В других же случаях придется искать дополнительные методы, например, такой как возведение числа в степень 0,5.

Содержание:развернуть

  • Что такое квадратный корень
  • Квадратный корень
  • Положительное число

  • Отрицательное число

  • Ноль

  • Кубический корень
  • Корень n-степени
  • Решение реальной задачи с использованием sqrt

Если вам нужно найти сторону квадрата, когда известна одна лишь его площадь, или вы намерены рассчитать расстояние между двумя точками в декартовых координатах, то без особого инструмента не обойтись. Математики прошлого придумали для этих вычислений квадратный корень, а разработчики Python воплотили его в функции sqrt().

Но обо всём по порядку.

Что такое квадратный корень

Корнем квадратным из числа «X» называется такое число «Y», которое при возведении его во вторую степень даст в результате то самое число «X».

Операция нахождения числа «Y» называется извлечением квадратного корня из «X». В математике для её записи применяют знак радикала:

Нотация питона отличается в обоих случаях, и возведение в степень записывается при помощи оператора «**«:

a = 2
b = a ** 2

print(b)
> 4

А квадратный корень в питоне представлен в виде функции sqrt(), которая существует в рамках модуля math. Поэтому, чтобы начать работу с корнями, модуль math нужно предварительно импортировать:

import 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() корректно отрабатывает с нулём на входе. Результат тривиален и ожидаем:

print(math.sqrt(0))
> 0.0

Кубический корень

Само название функции 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

Или же:

print(8 ** (1/3))
> 2.0

То, что справедливо для корня третьей степени, справедливо и для корней произвольной степени.

# извлечём корень 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 километра. Мы неспешно отходим на заданное расстояние от предполагаемого места строительства и задумчиво смотрим под ноги. В голове появляются очертания треугольника с вершинами:

  1. Ваше местоположение;
  2. Центр Земли;
  3. Пиковая высота вышки.

Модель готова, приступаем к написанию кода:

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

Расчёт выполнен, результат заказчику предоставлен. Можно идти пить чай и радоваться тому, что теперь ещё больше людей смогут звонить родным и сидеть в интернете.

Раздел: Стандартные функции Паскаля

Функция Sqrt в Паскале вычисляет квадратный корень числа. Синтаксис функции следующий:


function Sqrt(Х : ValReal) : ValReal;

Эта функция возвращает квадратный корень числа, переданного через параметр Х. Число Х должно быть положительным, иначе произойдёт ошибка во время выполнения программы (так написано в документации, но в моей версии компилятора ошибки не происходит, а функция в случае отрицательного параметра возвращает значение NaN).

Функция Sqr в Паскале вычисляет квадрат числа. Синтаксис функции для разных типов приведён ниже:

function Sqr(Х : LongInt) : LongInt;

function Sqr(Х : QWord) : QWord;

function Sqr(Х : ValReal) : ValReal;

Эта функция возвращает результат вычисления квадрата числа, переданного через параметр. То есть Sqr = х * х.

О типе ValReal я рассказывал здесь.

Квадрат числа

Здесь всё крайне просто. Квадрат числа Х равен произведению Х на Х. То есть функция Sqr на первый взгляд кажется бесполезной. Потому что во многих случаях проще написать так:


Х := Х * Х

чем


Х := Sqr(X)

Единственный случай, когда использование функции Sqr является обоснованным с точки
зрения упрощения кода, это когда в качестве параметра передаётся вещественное число
(константа) с большим количеством знаков после запятой, или очень большое целое число, или сложное выражение. Например:


Х := Sqr(5.3456753322)

будет написать проще, чем


Х := 5.3456753322 * 5.3456753322

Также возведение в квадрат числа в Паскале сложного выражения тоже будет проще, если использовать функцию Sqr:


X := Sqr(Y + 100 * Z / X)

Вычисление квадратного корня

Когда мы изучали функции вычисления экспоненты и
натурального логарифма, то мы узнали, что с их помощью можно возвести число в любую степень. То есть вычислить, в том числе, и корень любой степени.

Однако использование этих функций всё-таки немного сложновато. Поэтому для вычисления квадратного корня в Паскале имеется специальная функция (потому что квадратный корень приходится вычислять намного чаще, чем, например, корень n-й степени).

Эту функцию вы уже знаете — это функция Sqrt.

А здесь я напомню что такое квадратный корень для тех, кто подзабыл математику.

Итак, квадратный корень из числа А (корень 2-й степени) — это решение уравнения:


Х2 = А

То есть квадратный корень из числа А, это число Х, которое при возведении в квадрат даёт число А.

То есть если


Х * Х = √А

то


Х = А

ВАЖНО!
Число А может быть только положительным числом. Извлечение корня из отрицательного числа тоже возможно, но это уже будут комплексные числа.

Как стать программистом 2.0

Как стать программистом 2.0

Эта книга для тех, кто хочет стать программистом. На самом деле хочет, а не просто мечтает. И хочет именно стать программистом с большой буквы, а не просто научиться кулебякать какие-то примитивные программки…
Подробнее…

Помощь в технических вопросах

Помощь в технических вопросах

Помощь студентам. Курсовые, дипломы, чертежи (КОМПАС), задачи по программированию: Pascal/Delphi/Lazarus; С/С++; Ассемблер; языки программирования ПЛК; JavaScript; VBScript; Fortran; Python и др. Разработка (доработка) ПО ПЛК (предпочтение — ОВЕН, CoDeSys 2 и 3), а также программирование панелей оператора, программируемых реле и других приборов систем автоматизации.
Подробнее…

  • Как пишется корень в математике буквами
  • Как пишется корень в информатике
  • Как пишется корень в алгебре
  • Как пишется корень в excel
  • Как пишется корень бер бир