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

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

Функция 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), а также программирование панелей оператора, программируемых реле и других приборов систем автоматизации.
Подробнее…

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

Program number12;
uses crt;
var A, B:real;
begin
clrscr;
A:=2.0;
B:=Sqr(A);
writeln('Sqr(2.0)=',B:4:2);
B:=Abs(-A);
writeln('Abs(-2.0)=',B:4:2);
B:=Sqrt(A);
writeln ('Sqrt(2)=',B:4:2);
B:=Sin(A);
writeln('Sin(2)=',B:6:3);
B:=Cos(A);
writeln('Cos(2)=',B:6:3);
B:=Arctan(A);
writeln('Arctan(2)=',B:6:3);
B:=Ln(A);
writeln('Ln(2)=',B:10:9);
B:=Exp (A);
writeln('Exp (2)=',B:10:9);
B:=Pi;
writeln('Pi=',B:10:9);
readln
end.

В строке №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».

Строка №23. Переменной «B» будет присвоено значение числа «?».

Funkcii Sqr, Abs, Sqrt, Sin, Cos, Arctan, Ln, Exp, Pi

Funkcii Sqr, Abs, Sqrt, Sin, Cos, Arctan, Ln, Exp, Pi.

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

  • Функции Sqrt, Sin, Cos, Arctan, Ln, Exp, Pi определены только для вещественных (дробных) чисел.
  • В Паскале не существует операции возведения в степень. Есть только операция возведения числа в квадрат (Sqr). Чтобы возвести число в степень используют операцию умножения. Например, чтобы возвести число 3 в 5-ю степень необходимо записать 3*3*3*3*3

числа в паскаль

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


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

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

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

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18


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 — число.

Пример :

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


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

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

Пример :


Результат

: переменной «а» присваивается значение 5.

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

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

Пример :


Результат

: переменной «а» присваивается значение 9.

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

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

Пример :


Результат

: переменной «а» присваивается значение 25.

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

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

Пример :


Результат

: переменной «а» присваивается значение 0.2.

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

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

Пример :


Результат

: переменной «а» присваивается значение 8.

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

этой странице

.


Выводы :

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

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


program


Calculate


;


begin




writeln


(



выражение



)


end


.

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

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


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

В Паскале, как и в большинстве языков программирования, несколько специфически передаются основные математические операции — так математические выражения надо записывать в одну строку, а не в несколько уровней, как принято в классической математической нотации. Это достигается значительно более массовым использованием скобок, что иногда огорчает начинающих. Также всегда нужно писать знак умножения *. Кроме того, параметры функций всегда должны быть в скобках. Например:

Математическое выражение Запись на языке Паскаль
2+2=4 2+2=4
a*(1+sqr(e))/2
(-b+sqrt(sqr(b)-4*a*c))/(2*a)
exp(2*x+y)
abs(cos(x)*sin(x)*cos(y)/tan(y))

или

abs(cos(x)*sin(x)*cos(y)/(sin(y))/cos(y))

если компилятор не поддерживает Tan.


Базовая арифметика

Название операции Оператор Пример Примечание
Добавление + 2+2 (=4)
Вычитание 18.3-11 (=7.3)
Умножение * 7*8 (=56)
Деление / 7/8 (=0.875) Результат всегда действительного типа (real)
Целая часть деления div 7 div 2 (=3)
Остаток от деления mod 7 mod 2 (=1)


Сравнение

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


if




2


+


2


=


4




then




writeln


(


‘Два и два вместе дают четыре!’


)


else




writeln


(


‘Не может быть такого!’


)


;

Название операции Оператор Пример
Равно = 2+2=4
Не равно (?) <> 2+2<>5
Больше > 72>71.99
Больше или Равно >= x*x>=0
Меньше < 0<22
Меньше или Равно <= 1<=1


Функции для преобразования действительных и целых чисел

Паскаль — язык программирования со статической сильной типизацией. Это означает, что компилятор не выполняет преобразований значений между типами, которые могут привести к потере информации; в частности, если подставить в конструкцию, предусматривает целое значение, действительное число, компилятор сообщит об ошибке, даже если это число имеет целое значение. Так, как мы видели выше, 13 and 11 равна 9, но выражение 13.0 and 11 вызовет сообщение компилятора об ошибке! Чтобы избежать этого, надо явно задавать преобразования действительного числа на целое с помощью следующих функций:

Название функции описание пример
Round(X) Возвращает целое значение, ближайшее к X Round(1.7)=2, Round(-3.1)=-3
Int(X),

Trunc(X)
Возвращает целую часть X Int(1.8)=1, Trunc(-11.3)=-11
Floor(X) Возвращает наибольшее целое значение, не превышает X Floor(1.7)=1, Floor(-3.1)=-4
Ceil(X) Возвращает наименьшее целое значение, не менее от X Ceil(1.7)=2, Ceol(-3.1)=-3



Логические и побитовые операции


Логические операции используются для объединения нескольких логических условий в одну.

Название операции оператор пример описание
Логическое И, and, логическое умножение and (2+3=5) and (0>-1) Истинное, если оба операнда истинны
Логическое ИЛИ, or, логическое сложение or (2+2=5) or (1=1) Истинное, если хотя бы один из операндов истинный
Логическое исключающее ИЛИ, eXclusive or xor (2+2=5) xor (1=1) Истинное, если ровно один из операндов истинный
Отрицание, логическое НЕ, not not not (2+2=5) Истинное, если операнд ложный

Логические операторы, применены к целым типов, могут использоваться, как побитовые. Чтобы получить результат побитовой операции, надо представить операнды в двоичной системе (так, как они представлены в компьютере), после чего применить соответствующую операцию в соответствующих разрядов, причем 1 означает true 0 — false. так,

выведет 9, потому что

13 в двоичной системе будет 1 1 1
11 в двоичной системе будет 1 1 1
9 в двоичной системе будет 1 1

Кроме того, есть еще две побитовых операции сдвига:

Название операции оператор пример описание
сдвиг вправо shr 14 shr 2 (=3) Сдвигает двоичные разряды первого операнда справа на второй операнд разрядов;эквивалент целой части деления на степень 2
смещение слева shl 7 shl 3 (=56) Сдвигает двоичные разряды первого операнда слева на второй операнд разрядов;эквивалент умножению на степень 2



Алгебраические функции


Серым обозначены функции, которые не поддерживаются в Turbo Pascal

Название функции описание Заменитель (для Turbo Pascal)
Pi Возвращает значение числа { displaystyle pi ~}

(+3,141592653589793238462643383279 … с точностью, определенным типом real)

Abs(X) Абсолютное значение (модуль) X
Sign(X) Знак числа X: 1, если X отрицательный, 1, если положительный 0, если X = 0
Exp(X) Экспонента X (e X)
Ln(X) Натуральный логарифм X
Log2(X) Логарифм X по основанию 2 Ln(X)/Ln(2)
Log10(X) Логарифм X по основанию 10 Ln(X)/Ln(10)
LogN(X,Y) Логарифм Y по основанию X Ln(Y)/Ln(X)
Power(X,Y) Степень X Y Exp(Y*Ln(X))
Sqrt(X) Корень квадратный из X
Sqr(X) квадрат X
Max(X,Y) Более из значений X и Y
Min(X,Y) Меньше из значений X и Y

Примечание: корень степени Y из числа X можно представить как X 1 / Y, и, соответственно, как Power (X, 1 / Y) или в Turbo Pascal как Exp (Ln (X) / Y).



Тригонометрические функции


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

Название функции описание Заменитель (для Turbo Pascal)
DegToRad (X) Вычисляет радианной меру угла X, представленного в градусах X * Pi / 180
RadToDeg (X) Вычисляет градусную меру угла X, представленного в радианах X * 180 / Pi
Sin (X) Синус X (X в радианах)
Cos (X) Косинус X (X в радианах)
Tan (X) Тангенс X (X в радианах) Sin (X) / Cos (X)
ArcTan (X) Арктангенс X, угол, тангенс которого равен X, в радианах
ArcSin (X) Арксинус X, угол, синус которого равен X, в радианах ArcTan (X / sqrt (1-sqr (X)))
ArcCos (X) Арккосинус X, угол, косинус которого равен X, в радианах 2 * ArcTan ((1-X) / (1 + X))
Sinh (X) Гиперболический синус X (Exp (X) -exp (-X)) / 2
Cosh (X) Гиперболический косинус X (Exp (X) + exp (-X)) / 2
Tanh (X) Гиперболический тангенс X (Exp (2 * X) -1) / (exp (2 * X) +1)



Функции для работы со случайными величинами


Для имитации случайных процессов в Паскале есть генератор псевдослучайных чисел (ГПВЧ) и функции для работы с ним; такие числа достаточно непредсказуемыми для практического использования (то есть каждое последующее использование функции Random даст какой-то мере неожиданный результат), но их последовательность может быть полностью воспроизведена, если установить начальное значение ГПВЧ.

Название функции описание Заменитель (для Turbo Pascal)
Randomize Устанавливает начальное значение ГПВЧ равным текущему значению часов
Randomize (X) Устанавливает начальное значение ГПВЧ равным X
Random Возвращает псевдослучайное действительное число от 0 (включительно) до 1 (без включительно)
Random (X) Возвращает псевдослучайное целое число от 0 до X-1
Random (X, Y) Возвращает псевдослучайное целое число от X до Y X + Random (Y-X + 1)



Функции для работы со сочтеными типами


Для величин сочтеных типов (все цели, буквенный, логическое и перечни) существуют также несколько удобных стандартных функций и процедур:

Название функции описание
Succ (X) Возвращает значение, идет после X (для целых — X + 1, для буквенного — символ с последующим значением, для перечисления — следующее значение: так, Succ ( ‘A’) возвращает ‘B’
Pred (X) Возвращает, предшествующий X (для целых — X-1, для буквенного — символ с предыдущим значением, для перечисления — предварительное значение: так, Pred ( ‘A’) возвращает ‘@’
Inc (X) Увеличивает значение X на 1, эквивалент X = Succ (X)
Inc (X, N) Увеличивает значение X на N, эквивалент N приложений Inc (X)
Dec (X) Уменьшает значение X на 1, эквивалент X = Pred (X)
Dec (X, N) Уменьшает значение X на N, эквивалент N применений Dec (X)
Ord (X) Возвращает X (для нечисловых типов)
Odd (X) Проверяет X на нечетность, true, если X нечетный или false, если X имеет четное значение



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


Во время разбора математического выражения Паскаль сначала выполняет операции с высоким приоритетом, затем с низким, все справа налево. Так, в выражении 2 + 2 * 2 сначала будет вычислено 2 * 2 = 4, а уже затем 2 + 4 = 6 — так же, как в обычной математике; в выражении 10 mod 2 * 3 сначала будет выполнено 10 mod 2 = 0, а уже потом 0 * 3 = 0!

операции приоритет вид операции
@ Not — + Первый (высший) Унарные операции (плюс и минус унарные, то есть только в форме -a, а не cd!)
* / Div mod and второй Операции типа умножение
+ — or xor третий Операции вроде добавления
= <> <> <=> = In четвертый операции сравнения
() F () Пятый (ниже) Скобки, вызов функции




[Всего голосов: 16    Средний: 3.7/5]


На занятии рассматриваются основные стандартные типы данных в Паскаль, понятие переменной и константы; объясняется, как работать с арифметическими операциями

Содержание:

  • Типы данных в Паскале
    • Целочисленные типы данных в Паскаль
    • Комментарии в Паскале
    • Вещественные типы данных в Паскаль
  • Приведение типов
  • Константы в Паскале
    • «Красивый» вывод целых и вещественных чисел
  • Арифметические операции в Паскале
    • Порядок выполнения операций
  • Стандартные арифметические процедуры и функции Pascal

Типы данных в Паскале

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

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

Рассмотрим наиболее распространенные в Pascal типы данных.

Целочисленные типы данных в Паскаль

Тип Диапазон Требуемая память (байт)
byte 0..255 1
shortint -128..127 1
integer -32768.. 32767 2
word 0..65535 2
longint -2147483648..2147483647 4

Нужно иметь в виду, что при написании программ в паскале integer (в переводе с англ. целое) является наиболее часто используемым, так как диапазон значений наиболее востребуем. Если необходим более широкий диапазон, используется longint (long integer, в переводе с англ. длинное целое). Тип byte в Паскале используется, когда нет необходимости работать с отрицательными значениями, то же самое касается и типа word (только диапазон значений здесь значительно больше).

Примеры того, как описываются (объявляются) переменные в Паскале:

Pascal PascalABC.NET
1
2
3
4
5
6
7
8
program a1;
var x,y:integer; {целочисленный тип}
    myname:string; {строковый тип}
begin
x:=1; y:=x+16;
myname:='Петр';
writeln ('имя: ',myname, ', возраст: ', y)
end.
1
2
3
4
5
6
7
8
program a1;
begin
  var x, y: integer; {целочисленный тип}
  var myname: string; {строковый тип}
  x := 1; y := x + 16;
  myname := 'Петр';
  print($'имя: {myname}, возраст: {y}')
end.
Результат: 
имя: Петр, возраст: 17

При использовании PascalABC.NET наиболее часто используются следующие целочисленные типы:

Тип Длина, байт Диапазон допустимых значений
integer 4 -2 147 483 648 .. 2 147 483 647
int64 8 -9 223 372 036 854 775 808 .. 9 223 372 036 854 775 807
BigInteger переменная неограниченный

Комментарии в Паскале

Обратите внимание на то, как используются комментарии в Паскале. В примере комментарии, т.е. служебный текст, который «не видим» для компилятора, заключаются в фигурные скобки {}. Обычно комментарии делаются программистами с целью пояснения фрагментов кода. Для однострочных комментариев можно использовать два слэша //:

{Очень простая программа
для вывода слова "Привет"}
begin
// вывод 
write('Привет');
end.

Задача 5. Население Москвы равняется а=9000000 жителей. Население Нью-Васюков равняется b=1000 жителей. Напишите программу, которая определяет разницу в числе жителей между двумя городами. Используйте переменные величины.

[Название файла: L1task5.pas]

Вещественные типы данных в Паскаль

Вещественные числа в Паскале и вообще в программировании — это название дробных чисел.

Тип Диапазон Требуемая память (байт)
real 2.9 * 10E-39 .. 1.7 * 10E38 6
single 1.5 * 10 E-45 .. 3.4 * 10E38 4
double 5 * 10E-324 .. 1.7 * 10E308 8
extended 1.9 * 10E-4951 .. 1.1 * 10E4932 10

Тип real в Паскале — наиболее часто используемый из вещественных типов.

Выше были представлены простые типы данных в Паскаль, к которым относятся:

  • Порядковые
  • Целые
  • Логические
  • Символьные
  • Перечисляемые
  • Интервальные
  • Вещественные

Для вывода значений переменных вещественного типа обычно используется форматированный вывод:

  • в формате используется либо одно число, означающее число позиций, отводимых на это число в экспоненциальной форме;
  • p:=1234.6789;
    Writeln(p:12);  {_1.2346E+004}
  • либо два числа, первое из которых обозначает общий размер поля, отведенного под это число, второе — число знаков после запятой, т.е. точность.
  • p:=1234.6789;
    Writeln(p:6:2); {1234.68}

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

    Приведение типов

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

    Значения типов данных, которые занимают меньше памяти, можно присвоить переменным типа данных с бОльшей емкостью. Так, возможны следующие приведения:

    integer → int64
    int64  → real
    integer → BigInteger

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

    var a := 10; // integer
    var b := 123456789012345; // int64
    var c := -3bi; // BigInteger
     
    var i := int64(a); // приведение integer → int64
    var x := real(b); // приведение int64  → real
    var p := BigInteger(a); // приведение integer → BigInteger

    Обратное приведение с помощью функций

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

    real → integer

    Пример:

    ##
    var x := Sqrt(3); // корень квадратный из 3, тип real
    var a := Trunc(x); // приведение к integer с отсечением дробной части. рез-т 1
    var b := Round(x); // приведение к integer с округлением до ближайшего целого. рез-т 2

    Константы в Паскале

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

    Объявление константы в Паскале происходит до объявления переменных (до служебного слова var) и выглядит следующим образом:

    Пример описания константы в Паскале:

    Pascal PascalABC.NET
    1
    2
    3
    4
    5
    6
    
    const x=17;
    var myname:string;
    begin
    myname:='Петр';
    writeln ('имя: ',myname, ', возраст: ', х)
    end.
    1
    2
    3
    4
    5
    
    const x = 17;
    begin
      var myname := 'Петр';
      print($'имя: {myname}, возраст: {x}')
    end.

    «Красивый» вывод целых и вещественных чисел

    Для того чтобы после вывода значений переменных оставались отступы, чтобы значения не «сливались» друг с другом, принято через двоеточие указывать какое количество символов нужно предусмотреть для вывода значения:

    Вывод целых чисел

    Вывод целых чисел

    Вывод вещественных чисел

    Вывод вещественных чисел

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

    ДЕЙСТВИЕ РЕЗУЛЬТАТ СМЫСЛ
    2 + 3 5 плюс
    4 — 1 3 минус
    2 * 3 6 умножить
    10 / 5 2 разделить
    10 ** 2 100 возведение в степень с результатом типа real
    17 div 5 3 целочисленное деление
    17 mod 5 2 остаток от целочисленного деления

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

    Порядок выполнения операций

    1. вычисление выражений в скобках;
    2. умножение, деление, div, mod слева направо;
    3. сложение и вычитание слева направо.

    порядок выполнения операций


    Канонический способ:

    var 
      a: integer;
      b: real;
     
    begin
      a := 1;
      writeln('a := 1; a = ',a);
      a += 2; // Увеличение на 2
      writeln('a += 2; a = ',a);
      a *= 3; // Умножение на 3
      writeln('a *= 3; a = ',a);
      writeln;
      b := 6;
      writeln('b := 6; b = ',b);
      r /= 2;
      writeln('b /= 2; b = ',b);
    end.

    Стандартные арифметические процедуры и функции Pascal

    Здесь стоит более подробно остановиться на некоторых арифметических операциях.

    • Операция inc в Паскале, произносимая как инкремент, это стандартная процедура pascal, которая обозначает увеличение на единицу.
    • Пример операции inc:

      1
      2
      3
      
      x:=1;
      inc(x); {Увеличивает x на 1, т.е. x=2}
      writeln (х)

      Более сложное использование процедуры inc:
      Inc(x,n) где x — порядкового типа, n — целого типа; процедура inc увеличивает x на n.

    • Аналогично работает процедура Dec в Паскале: Dec(x) — уменьшает x на 1 (декремент) или Dec(x,n) — уменьшает x на n.
    • Оператор abs представляет собой модуль числа. Работает следующим образом:
    • a:=-9;
      b:=abs(a); { b = 9}
    • Оператор div в паскале является часто используемым, так как целый ряд задач связан с действием деление нацело.
    • Остаток от деления или оператор mod в pascal тоже незаменим при решении ряда задач.
    • Заслуживающей внимания является стандартная функция odd Паскаля, которая определяет, является ли целое число нечетным. Т. е. возвращает true (истина) для нечетных чисел, false (ложь) для четных чисел.
    • Пример использования функции odd:

      1
      2
      3
      4
      
      begin
          WriteLn(Odd(5)); {True}
          WriteLn(Odd(4)); {False}
      end.
    • Функция exp в паскале возвращает экспоненту параметра. Записывается как exp(x), где x типа real.
    • Квадрат числа в Паскале вычисляется при помощи процедуры sqr.
    • Пример использования процедуры sqr в Pascal:

      1
      2
      3
      4
      5
      
      var x:integer;
      begin
      x:=3;
      writeln(sqr(x)); {ответ 9}
      end.
    • Операция возведение в степень в Паскале отсутствует как таковая. Но для того чтобы возвести в степень число можно использовать функцию exp.
    • Формула такая: exp(ln(a)*n), где а — число, n — степень (а>0).

      Однако в компиляторе pascal abc возведение в степень осуществляется значительно проще:

       WriteLn(Power(2,3)); {ответ 8}
    • Извлечь квадратный корень в Паскале можно при помощи процедуры sqrt.
    • Пример использования процедуры sqrt в Pascal:

      1
      2
      3
      4
      5
      
      var x:integer;
      begin
      x:=9;
      writeln(sqrt(x)); {ответ 3}
      end.

    Задача 6. Известны размеры спичечной коробки: высота — 12.41 см., ширина — 8 см., толщина — 5 см. Вычислить площадь основания коробки и ее объем

    (S=ширина * толщина, V=площадь*высота)

    [Название файла: L1task6.pas]

    Задача 7. В зоопарке три слона и довольно много кроликов, причем количество кроликов часто меняется. Слону положено съедать в сутки сто морковок, а кролику — две. Каждое утро служитель зоопарка сообщает компьютеру количество кроликов. Компьютер в ответ на это должен сообщить служителю общее количество морковок, которые сегодня нужно скормить кроликам и слонам.

    [Название файла: L1task7.pas]

    Задача 8. Известно, что x кг конфет стоит a рублей. Определите, сколько стоит y кг этих конфет, а также, сколько килограмм конфет можно купить на k рублей. Все значения вводит пользователь.

    [Название файла: L1task8.pas]

      

    В приведенных ниже примерах все функции имеют аргументы. Аргументы
    m и n имеют целочисленный тип,
    a и b – тип real,
    x и y – любой из этих типов.

    Abs(x) – возвращает абсолютное значение аргумента x;
    Ceil(x) - возвращает ближайшее целое, не меньшее, чем х;
    Floor(x) - возвращает ближайшее целое, не превышающее х;
    Frac(x) - возвращает дробную часть аргумента x;
    Max(x, y, …) – возвращает максимальное из значений x, y, …;
    Min(x, y, …) – возвращает минимальное из значений x, y, … ;
    Random(m) – возвращает случайное число из интервала [0 ; m-1];
    Random(a) – возвращает случайное число из интервала [0 ; a);
    Random(m, n) – возвращает случайное число из интервала [m ; n];
    Random(a, b) – возвращает случайное число из интервала [a ; b);
    Random2(m) – возвращает кортеж из двух случайных чисел в интервале [0 ; m-1];
    Random2(a) – возвращает кортеж из двух случайных чисел в интервале [0 ; a);
    Random2(m, n) – возвращает кортеж из двух случайных чисел в интервале [m ; n];
    Random2(a, b) – возвращает кортеж из двух случайных чисел в интервале [a ; b);
    Random3(m) – возвращает кортеж из трех случайных чисел в интервале [0 ; m-1];
    Random3(a, b) – возвращает кортеж из трех случайных чисел в интервале [a ; b);
    Round(x) - возвращает округленное до целых по правилам арифметики значение типа integer;
    Round(x, n) - возвращает значение х, округленное до n знаков в дробной части;
    Sign(x) – возвращает -1 при x < 0, 0 при x = 0 и 1 при x > 0;
    Sin(x) – возвращает sin(x) типа real;
    Sqr(a) – возвращает a2;
    Sqr(m) – возвращает m2 типа int64;
    Sqrt(x) – возвращает √x типа real;
    Trunc(a) – возвращает целую часть значения a того же типа
    

    12 Янв 14

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

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

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

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

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

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

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

    Код

    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        Просмотры :  11442

    • 1
    • 2
    • 3
    • 4
    • 5

    Навигация

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

    Поиск

    Популярные

    Обсуждаемые

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

    RSS лента

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

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

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

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

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

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

    Опрос

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