Для чего предназначена функция abs x в паскале

от admin

Функция Abs в Паскале

Функция Abs в Паскале возвращает абсолютное значение переменной. Результат, возвращаемый функцией Abs, имеет тот же тип данных, что и аргумент — параметр, передаваемый в функцию. Этот параметр может иметь любой числовой тип данных.

Синтаксис функции Abs для целых чисел:

function Abs(L : LongInt) : LongInt;

function Abs(I : Int64) : Int64;

Последний вариант возможен только для FreePascal и Lazarus, так как в классическом Паскале нет типа данных Int64.

Синтаксис функции Abs для вещественных чисел:

function Abs(D : ValReal) : ValReal;

ValReal — это вещественный тип данных с наибольшим доступным значением в данной операционной системе. Фактически это псевдоним (алиас) одного из типов Extended или Double.

А теперь пример использования:

Здесь мы сначала объявляем переменную с начальным значением равным -100 (отрицательное число).

А в программе используем функцию Abs и в результате переменная у будет равна 100 (положительное число).

Что вычисляет функция Abs

Вообще Abs — это сокращение от Absolute. Как нетрудно догадаться, переводится это слово как “абсолютный, чистый, несомненный”.

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

В математике модуль числа х обозначается так: |x|.

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

Таким образом, можно сказать, что функция Abs(х) вычисляет модуль числа х. То есть Abs(х) в Паскале — это то же самое, что |x| в математике.

Ну и напоследок давайте создадим свой собственный аналог функции, которая возвращает модуль числа. Итак, функция будет примерно такая:

Здесь мы передаём в функцию целое число, которое может быть как отрицательным, так и положительным. В функции мы проверяем значение этого числа. Если число отрицательное, то мы умножаем его на -1, и таким образом получаем положительное число. Если число положительное, то мы ничего не делаем — просто возвращаем полученное через параметр iNum число.

Как видите, алгоритм довольно простой.

Правда, наша функция может работать только с целыми числами. Но это уже мелочи.

Функция Abs Pascal-Паскаль

Abs: функция — Возвращает абсолютную величину параметра.

Объявление: Function Abs(X) : (тип параметра);
Режим: Windows, Real, Protected

Замечания:

Параметр X — выражение вещественного или целочисленного типа. Результат того же типа, что и X является абсолютной величиной X.

Пример программы для функции Abs

Программирование

Исходники Pascal (127)

Справочник

Справочник по паскалю: директивы, функции, процедуры, операторы и модули по алфавиту

Функции Sqr, Abs, Sqrt, Sin, Cos, Arctan, Ln, Exp, Pi в Pascal.

Мы уже знаем, какие существуют функции для целых переменных. Это – нахождение модуля числа (Функция Abc), а также возведение числа в квадрат (Функция Sqr). В этом уроке мы рассмотрим функции, применяемые к дробным числам. Это функции Sqr — квадрат числа, Abs — модуль числа, Sqrt — корень числа, а также известные всем математические функции Sin, Cos, Arctan, Ln, Exp, Pi.

В строке №7 записывается функция Sqr. Это функция возведения числа в квадрат.

В строке №9 записывается операция нахождения модуля числа.
Функции Sqr и Abs мы разбирали в уроке Abs, Sqr в Pascal.

В строке №11 записывается функция Sqrt. Данная функция подсчитывает корень числа, стоящего в скобках после слова Sqrt. В нашем случае функция Sqrt будет считать корень из числа «2».

В строке №13 записываем функцию Sin. Данная функция будет подсчитывать синус числа, стоящего в скобках после записи функции.

Строка №15. Функция Cos подсчитывает косинус числа, стоящего в скобках после функции.

Строка №17. Функция Arctan вычисляет арктангенс числа, стоящего в скобках после записи функции.

Строка №19. Функция Ln подсчитывает логарифм числа, стоящего в скобках после записи функции.

Строка №21. Функция Exp возводит число «e» (экспонента — 2.72. ) в степень, значение которой указывается в скобках после слова Exp. Т.е. в нашем случае число «e» будет возведено в степень «2».

Стандартные функции pascal

Сначала выполняется значение выражения, указанного в правой части оператора, а затем его результат записывается в область памяти, имя которой указанно слева.

Оператор ввода

Останавливает работу программы и ждет пока пользователь введет данные с клавиатуры.

read (а) read (а,b)

readln (а,b) readln (а)

Оператор вывода

Выводит необходимую информацию на экран монитора

write (а) write (а)

writeln (а) writeln (а,b)

При выводе данных вещественного типа ширина поля определяет количество отображаемых разрядов чисел. При этом значение выводится в экспоненциальном формате.

Если необходимо вывести вещественное значение в формате с фиксированной точкой, то используется еще одна, расширенная конструкция:

Writeln(значение: ширина_поля_вывода : ширина дробной части);

Составной оператор

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

Составной оператор начинается ключевым словом begin и заканчивается словом end. Между этими словами помещаются составляющие операторы, которые выполняются в порядке их следования. После end ставится точка с запятой, а после begin – только пробелы (либо комментарий).

Слова begin и end играют роль операторных скобок.

Читать:
Как вычесть элементы одного списка из другого в python

Clrscr – очистка экрана

ЦЕЛОЧИСЛЕННЫЕ АРИФМЕТИЧЕСКИЕ ОПЕРАЦИИ

Целочисленная арифметика языка Паскаль основана на использовании пяти стандартных целых типов: Byte, Word, ShortInt, Integer, LongInt.

Cо всеми целыми типами связан набор из пяти основных арифметических операций: +, -, *, div, mod.

— условие делимости целого A на целое B.

— условие чётности целого A.

— значение последней цифры в десятичной записи целого А (например, 1234 mod 10 = 4).

число, десятичная запись которого получится отбрасыванием последней цифры в десятичной записи целого числа А (например, 1234 div 10 =123).

— значение последней цифры в p-ичной записи целого А (например, при p=2, A mod 2 — последняя цифра записи А в двоичной системе счисления);

— число, p-ичная запись которого получится отбрасыванием последней цифры в p-ичной записи целого числа А (например, 510=1012; 510 div 2 =210=102; т.е. из 1012 получили 102);

Вывести на экран сумму и произведение цифр двухзначного числа.

var ab, b, s, p, a: integer;

readln(ab); //ввод двузначного числа

a:=abdiv10; //вывод первой цифры числа

b:=abmod10; // вывод второй цифры числа

s:=a+b; //сумма цифр числа

p:=a*b; //произведение цифр числа

writeln(s); //вывод суммы

writeln(p); //вывод произведения

Поменять местами первую и третью цифры трехзначного числа.

var abc,a,b,c,cba: integer;

a:=abc div 100; //первая цифра числа

b:=(abcdiv10)mod10; //вторая цифра числа

c:=abcmod10; //третья цифра числа

Даны две переменных с разными значениями. Поменять местами значения переменных.

vara,b,c:integer; //вводим дополнительную переменную для промежуточного хранения данных

Вывести на экран среднее арифметическое цифр трехзначного числа

readln(х); //ввод трехзначного числа

sr:=((хdiv100)+((хdiv10)mod10)+(хmod10))/3; //среднее арифметическое цифр числа

УСЛОВНЫЙ ОПЕРАТОР IF…THEN…ELSE

Условный оператор if служит для организации процесса вычислений в зависимости от какого-либо логического условия. Оператор имеет вид:

if <условие> then <оператор_1> else <оператор_2>;

Если условие истинно, то выполняется оператор (простой или составной), следующий за словом then. Но если условие ложно, то будет выполняться оператор, следующий за словом else.

Если в задаче требуется, чтобы в зависимости от значения условия выполнялся не один оператор, а несколько, то ставятся операторные скобки begin …end

if <условие> then

begin

<оператор_1>; <оператор_2>;

begin

<оператор_3>; <оператор_4>;

Альтернативная ветвь else может отсутствовать, если в ней нет необходимости. В таком «усеченном» операторе в случае невыполнения условия ничего не происходит, и управление передается следующему оператору

if <условие> then <оператор_1>

Для сравнения переменных в условных выражениях применяются операции отношения

Если введенное с клавиатуры число положительное, то увеличить его на два, иначе увеличить его в 2 раза.

Найти минимальное из трех чисел, введенных с клавиатуры.

vara,b,c,min:integer; //вводим дополнительную переменную для хранения значения минимума

if a<b then //если a<b то

min:=a//minприсваиваем значение а

min:=b; //minприсваиваем значениеb

ifc<minthen//сравниваем оставшееся число сmin, и если оно меньше, то

min:=c; //minприсваиваем значение с

Определить будет ли введенное с клавиатуры число, увеличенное в 7 раз, четным.

if a mod 2=0 then

writeln (четное)

writeln (нечетное);

Дано двузначное число. Определить:

— является ли сумма его цифр четным числом; — является ли сумма его цифр двузначным числом;

var ab, a, b: integer;

if s mod 2=0 then

writeln (четное)

writeln (нечетное);

if (s >9) and (s<100) then

writeln (двузначное)

writeln(‘недвузначное’);

Логические операции

Над логическими аргументами в Турбо Паскаль определены следующие операции:

NOT — логическое отрицание («НЕ»)

AND — логическое умножение («И»)

OR — логическое сложение («ИЛИ»)

XOR — логическое «Исключающее ИЛИ»

Результаты выполнения этих операций над переменными А и В логического типа приведены в таблице истинности.

Операции отношения

К операциям отношения в Турбо Паскаль относятся такие операции, как:

<> — не равно

>= — больше или равно

<= — меньше или равно

В операциях отношения могут принимать участие не только числа, но и символы, строки, множества и указатели.

Приоритет операций

Порядок вычисления выражения определяется старшинством (приоритетом) содержащихся в нем операций. В языке Паскаль принят следующий приоритет операций:

унарная операция not, унарный минус -, взятие адреса @

операции типа умножения: * / div mod and

операции типа сложения: + — or xor

операции отношения: = <> < > <= >= in

Порядок выполнения операций переопределить можно с помощью скобок. Например 2*5+10 равно 20, но 2*(5+10) равно 30.

ОПЕРАТОРЫ ЦИКЛА

Цикл – это повторение одних и тех же действий.

Последовательность действий, которые повторяются в цикле, называются телом цикла.

Один проход цикла называют шагом или итерацией.

Итерация – это организация обработки данных, при которой действия повторяются многократно, не приводя при этом к вызовам самих себя.

Переменные, которые изменяются внутри цикла и влияют на его окончание, называются параметрами цикла.

При написании циклов необходимо помнить:

цикл когда-нибудь закончится, содержимое его тела должно влиять на условие цикла;

условие должно состоять из корректных выражений и значений, определенных еще до первого выполнения тела цикла.

Операторы завершения цикла

Для всех операторов цикла выход из цикла осуществляется как вследствие естественного окончания оператора цикла, так и с помощью операторов перехода и выхода.

Определены стандартные процедуры:

Break

Continue

Процедура Break выполняет безусловный выход из цикла.

Процедура Continue обеспечивает переход к началу новой итерации цикла.

Похожие статьи