Вычисление квадратного корня в Pascal. Операторы квадрата, корня и модуля
Квадратный корень числа в Pascal вычисляет функция Sqrt. Приведем ее синтаксис:
function Sqrt(Х : ValReal) : ValReal;
Данная функция возвращает квадратный корень числа, которое передается через параметр Х. При этом число должно быть положительным, в противном случае во время выполнения программы произойдет ошибка.
Синтаксис функции Sqrt для различных типов:
functionSqr(Х : LongInt) : LongInt;
functionSqr(Х : QWord) : QWord;
functionSqr(Х : ValReal) : ValReal;
Данная функция возвращает результат вычисления квадрата числа, который переданный через параметр. Другими словами, Sqr = х * х.
Примеры выполнения операторов квадрата, корны и модуля
Оператор квадрата
var a, c:integer;
begin
writeln (‘Введите число’);
readln (a);
c:=sqr(a);
writeln (‘Квадрат равен ‘,c);
end.
Оператор корня
Данный оператор находит корень из числа или переменной. Обозначается, как»sqrt» (не в кавычках). В приложении указывается какsqrt(a), где a – число или любая другая переменная.
var a, c:real;
begin
writeln (‘Введите число’);
readln (a);
c:=sqrt(a);
writeln (‘Кореньравен ‘,c);
end.
Оператор модуля
Этот оператор переводит число из обычного в число по модулю, а именно меняет его знак на положительный. Обозначается как «abs» (не в кавычках), а в программе, как abs(a), где a – число или другая переменная.
var a, c:real;
beginwriteln (‘Введите число’);
readln (a);
c:=abs(a);
writeln (‘Модуль равен ‘,c);
end.
Возникли ли у вас какие-то проблемы с вычислением квадратного корня в Паскаль? Напишите в комментариях.
Стандартные математические функции в языке Си
Математические вычисления не ограничиваются лишь арифметическими действиями. Кроме них, можно ещё встретить корни, модули, логарифмы, тригонометрические функции и пр. Научимся же использовать подобные функции в своих программах.
Для использования математических функций нужно подключить заголовочный файл math.h . В ней определено много различных функций, но мы пока рассмотрим следующие:
Некоторые математические функции
fabs(x) модуль числа x
sqrt(x) квадратный корень из числа x
sin(x) синус числа x (х в радианах)
cos(x) косинус числа x (х в радианах)
pow(x, y) вычисление x y
exp(x) вычисление e x
log(x) натуральный логарифм числа x
log10(x) десятичный логарифм числа x
- Все функции возвращают значение типа double .
- Параметры функций – вещественные числа( double ), но можно передавать и целые числа. При этом произойдёт неявное преобразование типа . Компилятор из целого числа, например 3, сделает вещественное 3.0.
Примеры.
Даны длины катетов прямоугольного треугольника. Вычислить длину гипотенузы. Простая задачка на знание теоремы Пифагора.
Вычислить синус угла ввёденного с клавиатуры. Угол вводится в градусах.
В этой программе есть о чём поговорить. Тригонометрические функции, которые определены в math.h работают с радианной мерой угла. Людям же привычнее работать с градусами. Поэтому в данной программе мы предварительно перевели значение из градусов в радианы. Если этого не сделать, результат получится неправильным. Проверьте это самостоятельно.
Неявное преобразование типов
При явном преобразовании типа мы в скобках перед значением указывали тип, к которому нужно привести данное значение. В неявном преобразовании этого делать не нужно. Компилятор автоматически подберёт необходимый тип.
Неявное преобразование типов осуществляется в следующих случаях:
- перед передачей аргументов в функцию (как в нашем примере с корнем. Листинг 1.)
- выполнение арифметических операций с разными типами аргументов
- перед выполнением присваивания
Правила неявного преобразования типов
- если выполняются арифметические операции с разными типами аргументов. Оба аргумента приводятся к большему типу.
Порядок типов: int < float < double - при присваивании. Значение справа от оператора присваивания приводится к типу переменной слева от оператора присваивания. При этом, если больший тип присваивается меньшему, то может произойти потеря точности.
int+float будет автоматически преобразовано к float+float
float/int будет автоматически преобразовано к float/float
double*float будет преобразовано к double*double
int = double double будет преобразовано к int с потерей дробной части
float = int int будет преобразовано к float
Сохрани в закладки или поддержи проект.
Практика
Решите предложенные задачи:
Для удобства работы сразу переходите в полноэкранный режим 
Функции Sqrt и Sqr
Функция Sqrt в Паскале вычисляет квадратный корень числа. Синтаксис функции следующий:
function Sqrt(Х : ValReal) : ValReal;
Эта функция возвращает квадратный корень числа, переданного через параметр Х. Число Х должно быть положительным, иначе произойдёт ошибка во время выполнения программы (так написано в документации, но в моей версии компилятора ошибки не происходит, а функция в случае отрицательного параметра возвращает значение NaN).
Функция Sqr в Паскале вычисляет квадрат числа. Синтаксис функции для разных типов приведён ниже:
Эта функция возвращает результат вычисления квадрата числа, переданного через параметр. То есть Sqr = х * х.
О типе ValReal я рассказывал здесь.
Квадрат числа
Здесь всё крайне просто. Квадрат числа Х равен произведению Х на Х. То есть функция Sqr на первый взгляд кажется бесполезной. Потому что во многих случаях проще написать так:
Единственный случай, когда использование функции Sqr является обоснованным с точки зрения упрощения кода, это когда в качестве параметра передаётся вещественное число (константа) с большим количеством знаков после запятой, или очень большое целое число, или сложное выражение. Например:
будет написать проще, чем
Х := 5.3456753322 * 5.3456753322
Также возведение в квадрат числа в Паскале сложного выражения тоже будет проще, если использовать функцию Sqr:
X := Sqr(Y + 100 * Z / X)
Вычисление квадратного корня
Когда мы изучали функции вычисления экспоненты и натурального логарифма, то мы узнали, что с их помощью можно возвести число в любую степень. То есть вычислить, в том числе, и корень любой степени.
Однако использование этих функций всё-таки немного сложновато. Поэтому для вычисления квадратного корня в Паскале имеется специальная функция (потому что квадратный корень приходится вычислять намного чаще, чем, например, корень n-й степени).
Эту функцию вы уже знаете — это функция Sqrt.
А здесь я напомню что такое квадратный корень для тех, кто подзабыл математику.
Итак, квадратный корень из числа А (корень 2-й степени) — это решение уравнения:
То есть квадратный корень из числа А, это число Х, которое при возведении в квадрат даёт число А.
ВАЖНО!
Число А может быть только положительным числом. Извлечение корня из отрицательного числа тоже возможно, но это уже будут комплексные числа.
Квадрат числа в математике и программировании

В этой статье мы поговорим, что такое квадрат числа, как его найти, а также каким образом производятся подобные вычисления в программировании.
Квадратом Х называют произведение 2-х множителей, каждый из которых равен Х.
Обозначение квадрата осуществляется с помощью степени, то есть Х² читается «Х в квадрате».
Если говорить еще более простым языком, то квадратом можно назвать число, которое умножено само на себя. Таким образом, мы можем написать простейшую формулу вычисления Х 2 :
Почему вообще такое выражение называют квадратом X? Дело в том, что именно данной формулой выражают площадь квадрата, сторона которого равна X, то есть геометрически это значение можно представить в виде площади квадрата, имеющего целочисленную сторону.
Вывод тут прост: для решение поставленной задачи следует требуемое значение взять в качестве множителя дважды, а потом вычислить произведение. Соответственно:
10 2 = 10 ⋅ 10 = 100
Это все элементарно и проходится в начальных классах средней школы. Решить такой пример в математике не проблема, а когда числовые значения выходят за рамки классической таблицы умножения, используют таблицу, ускоряющую расчеты.

Также описанную математическую операцию можно рассматривать в контексте частного случая возведения в степень — ведь именно этим, по сути, она и является — возведением в степень 2.
Интерес представляет и числовая последовательность для квадратов целых чисел, являющихся неотрицательными (речь идет о последовательности A000290 в OEIS):

Нельзя не сказать и про график y=x², где представлены целые значения x на отрезке 1-25.

Квадратные числа
Если же говорить о натуральных числах из последовательности, упомянутой выше, в историческом контексте, то их всегда называли «квадратными». Квадратное числовое значение также называют полным либо точным квадратом, то есть целым значением, квадратный корень из которого можно извлечь нацело. К примеру, найти корень из 9 несложно (√9 = 3, т. к. 3 ⋅ 3 = 9). Не составляет проблем и вычислить корень из ста: (√100 = 10, ведь десять на десять равно сто).

Легко понять, что сто — это квадратное число, так как его можно записать в виде 10 ⋅ 10 , плюс оно может быть представлено, как было сказано выше, в качестве площади квадрата со стороной, равной десяти. Таким образом, можно сделать вывод, что квадратное число включено в категорию классических фигурных чисел, то есть чисел, которые мы можем представить в виде геометрических фигур. Но в эту тему углубляться пока не будем.
А что в программировании?
Теперь давайте посмотрим, как все это работает в программировании. Для примера возьмем такой язык программирования, как Java (кстати, статья о том, как выполнять возведение в степень в Java, уже была).
Напишем простой метод по возведению любых числовых значений в квадрат:
public class Main<
static int square(int x)<
public static void main(String[] args)<
Вы можете воспользоваться любым онлайн-компилятором для проверки этого кода. Также никто не мешает вписать любое число вместо десяти.

Теперь воспользуемся простейшей программой для того, чтобы найти квадратный корень из 100:
public class Main<
public static void main(String args[])<
System.out.printf(«sqrt(%.2f) = %.2f%n», x, Math.sqrt(x));
Программа позволяет извлекать корень и из неквадратных значений. Ниже мы находим корень из 167:

Да, в современную эпоху калькуляторов мало кто считает в уме. Вдобавок ко всему, сегодня даже не надо покупать настоящий калькулятор, так как калькулятор есть в любом мобильном телефоне, не говоря уже об онлайн-калькуляторах, коих существует огромное количество. Однако это не значит, что можно забыть азы алгебры. Не зря же великий русский ученый Михаил Ломоносов когда-то сказал: