Как найти модуль чисел в паскале

Abs – функция языка Паскаль, которая вычисляет модуль числа.
Sqr – функция языка Паcкаль, которая возводит число в квадрат.

program number8;
uses crt;
var A, B, C:integer;
begin
clrscr;
A:= -2;
B:=Abs (A);
writeln('Abs(-2)=',B);
C:=Sqr(B);
writeln('Sqr(2)=',C);
readln
end.

Строка №7. Функция Abs вычисляет модуль числа, стоящего в скобках после функции. В данном случае вычисляется модуль переменной «A», которая имеет значение «-2». Так как модуль «|-2|» равен «2», то «2» и будет результатом операции Abs.

Строка №9. Функция Sqr возводит число, стоящее в скобках в квадрат. В данном случае в квадрат возводится переменная «B», т.е. число «2». Таким образом, результатом операции будет число «4».

abs sqr

abs sqr.



Дополнение к материалу.

В примерах №6, 7, 8 мы использовали небольшие числа (-2, 3, 17 и т.д.). Для всех переменных, в которые эти числа записывались, мы указывали тип данных INTEGER. Следует сказать, что данный тип данных используется не для всех чисел, а только для целых, лежащих в диапазоне от – 32768 до 32767. И если мы будем использовать в наше программе числа, которые лежат вне этих пределов (например – 32987 или 36789), то мы должны использовать другой тип данных.
Диапазон значений для различных типов данных можно посмотреть в таблице.

Тип данных Запись Длина в байтах
integer -32 768….32 767 2
byte 0…255 1
word 0…65 535 2
shortint -128….127 1
longint -2 147 483 648….2 147 483 647 4

Использование различных типов данных обусловлено тем, что для каждого из них выделяется определенное количество ячеек в памяти компьютера. Если мы используем в программе числа от 0 до 255, то наиболее целесообразно будет использовать тип данных BYTE. Хотя можно использовать и любой другой тип данных. Например, для числа 10 можно использовать и BYTE и LONGINT, но тогда в первом случае будет расходоваться 1 байт в памяти компьютера, а во втором – целых 4 байта. Учитывая то, что программа должна расходовать как можно меньше памяти, рационально будет использовать для данного примера тип данных BYTE.

Основы программирования 2.0

Основы программирования
Каждый профессионал когда-то был чайником. Наверняка вам знакомо состояние, когда “не знаешь как начать думать, чтобы до такого додуматься”. Наверняка вы сталкивались с ситуацией, когда вы просто не знаете, с чего начать.
Эта книга ориентирована как раз на таких людей, кто хотел бы стать программистом, но совершенно не знает, как начать этот путь.
Подробнее…

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

Функция 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.

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

program absfunc;

var x : integer = -100;
    y : integer;

begin

  y := Abs(x);                 //у = 100

  WriteLn('Abs(-100) = ', y);  //Выведет 100
  
  ReadLn;
end.

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

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

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

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

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

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

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

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

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

function MyAbs(iNum : integer) : integer;
begin
  if iNum < 0 then MyAbs := -1 * iNum
  else MyAbs := iNum;
end;

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

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

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

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

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

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

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

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

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

Гамлет



Мастер

(1509),
закрыт



14 лет назад

Как в паскале написать модуль числа на примере sqr(a) или sqrt(a)? можно?

Лучший ответ

Artemiy Kiriakov

Оракул

(52168)


14 лет назад

Тебе уже написали правильно. На будущее – в хелпе там все это есть. Смотри функции там.

Остальные ответы

Сергей Сергеев

Мыслитель

(6504)


14 лет назад

sqrt(sqr(a))
корень из квадрата-есть модуль

ГамлетМастер (1509)

14 лет назад

Блин… Спасибо))

Алексей МочаловМастер (1287)

12 лет назад

Аля индийский кодинг…

пхаха:) во ржачь! :D, Niktosha – выучи паскаль:)

Odehnalj 1337Ученик (182)

6 лет назад

Самый умный человек!!!

Kam1kadzE

Гуру

(2965)


14 лет назад

проще abs(a)

.

Профи

(767)


3 года назад

Ох… Абэцэшка неудобная вешь…
Оно просто не может прочитать палки (тобишь знак модуля) надо всё усложнять
sqrt(sqr(число которое надо))

Похожие вопросы

Паскаль - Урок 3: операторы квадрата, корня и модуля

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

1. Оператор квадрата

Этот оператор возводит в квадрат заданное ему число или переменную. Обозначается, как “sqr” без кавычек. В программе пишется как sqr(a), где a – любая другая переменная или число.

Пример:

var a, c:integer;
begin
writeln ('Введите число');
readln (a);
c:=sqr(a);
writeln ('Квадрат равен ',c);
end.

2. Оператор корня

Этот оператор находит корень из переменной или числа. Обозначается, как “sqrt” , без кавычек. В программе пишется как sqrt(a), где a – любая другая переменная или число.

Пример:

var a, c:real;
begin
writeln ('Введите число');
readln (a);
c:=sqrt(a);
writeln ('Корень равен ',c);
end.

3. Оператор модуля

Данный оператор переводит число из обычного в число по модулю, то есть меняет его знак всегда на положительный. Обозначается, как “abs” без кавычек, в программе пишется, как abs(a), где a – любое число или другая переменная.

Пример:

var a, c:real;
begin
writeln ('Введите число');
readln (a);
c:=abs(a);
writeln ('Модуль равен ',c);
end.

На сегодня урок окончен, с другими уроками вы можете познакомиться в категории “Уроки паскаль”

Дата: 2011-12-18 19:47:31   Просмотров: 139697

Теги: Паскаль уроки Pascal

12 Янв 14

Числа в паскале

Комментарии :  1        Просмотры :  11824

Числа в паскале

Многие начинающие программисты задаются подобный вопросом : “Какие операции можно совершать с числами в языке программирования паскаль ?”. В данном уроке мы подробно ответим на этот вопрос.

Арифметические операции

Начнем , пожалуй , с самого простого – арифметические операции с числами в паскале. В паскаль встроены многие привычные нам арифметические операции ( Сложение , вычитание , умножение , деление и т.п ).

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

Код

program mypascal;
var
a,b:integer;
c:real;
begin

a:= 7;
b:= 4;

a:= a – b; // a-b = 7 – 4 = 3 , следовательно a = 3 , b = 4 , c = 0
b:= a + b; // a+b = 3 + 4 = 7 , a = 3 , b = 7 , c = 0

a:= b * 2; // b*2 = 7 * 2 = 14 , a = 14 , b = 7 , c = 0
c:= a / b; // a/b = 14 / 7 = 2 , a = 14 , b = 7 , c = 2

writeln(a,’ ‘,b,’ ‘,c);

end.

Результатом выполнения данной программы будет вывод на экран трех чисел 14 7 2. Разберемся в том , как это работает.

В начале программы мы объявляем 2 целочисленные ( integer ) переменные “a” и “b” , а также 1 переменную “c” вещественного ( real ) типа.

Зачем нам нужна вещественная переменная ? Для записи результата деления целочисленная переменная не подходит , так как у нас получается дробь , а не целое число.

Теперь мы присваиваем переменной “a” значение 7 , а переменной “b” значение 3
. Переменную “c” при этом оставляем нулевой ( она нам пока не понадобится ).

Далее (в блоке begin end) мы расписываем арифметические операции с нашими числами. Обратите внимание на то , что после символов // идет комментарий , который не компилируется программой.

Запомните : Строка a:= a – b; выглядит так a:= 7 – 4; , а не так 7:= 7 – 4;

Другие операции с числами

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

1. Как найти квадрат числа в паскале ?

Для нахождения квадрата числа в паскале предусмотрена функция sqr(x) , где x – число.
Пример :

a:= sqr(5);

Результат : переменной “а” присваивается значение 25.

2. Как найти корень числа в паскале ?

Для нахождения корня числа в паскале предусмотрена функция sqrt(x) , где x – число.
Пример :

a:= sqrt(25);

Результат : переменной “а” присваивается значение 5.

3. Как округлить число в паскале ?

Для того , чтобы округлить некоторое число используется операция round(x).
Пример :

a:= round(9.4);

Результат : переменной “а” присваивается значение 9.

4. Как убрать дробную часть у числа в паскале ?

Для того , чтобы отбросить дробную часть числа используется операция trunc(x).
Пример :

a:= trunc(17.4);

Результат : переменной “а” присваивается значение 25.

5. Как убрать целую часть у числа в паскале ?

Для того , чтобы отбросить целую часть числа используется операция frac(x).
Пример :

a:= frac(17.2);

Результат : переменной “а” присваивается значение 0.2.

6. Как получить модуль числа в паскале ?

Чтобы получить модуль некоторого числа используется операция abs(x).
Пример :

a:= abs(-8);

Результат : переменной “а” присваивается значение 8.

Это были самые важные и часто используемые операции в паскале для работы с числами ( переменными ). Найти другие вы можете на этой странице.

Выводы :

Для работы с числами в паскале предусмотрено множество различных операций. Мы можем делать с числами все , что угодно ( складывать , умножать , возводить в квадрат и т.п ).

Комментарии :  1        Просмотры :  11824

  • 1
  • 2
  • 3
  • 4
  • 5

Навигация

Личный кабинет

Поиск

Популярные

Обсуждаемые

Скачать паскаль

RSS лента

Подписаться на rss

Подпишитесь на нашу ленту новостей rss и вы всегда сможете быть в курсе обновлений на нашем сайте.

Решение задач

Если вас интересует решение какой-либо задачи , то вы можете опубликовать
её условие на нашем сайте или форуме. И в скором времени другие пользователи помогут вам.

Опубликовать на сайте

Опубликовать на форуме

Опрос

Добавить комментарий