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

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

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


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

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

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

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]


Операции сравнения

Что делать, чтобы стать программистом

Что делать, чтобы стать программистом

Многие сегодня хотят стать программистами. Хотят. Но ничего не делают для этого. Не делают даже простых вещей. Не хотят даже прочитать книжку из 10 страниц. В итоге так и остаются никем. Потому что мечты не сбываются никогда. Сбываются только планы…
Подробнее…

Ещё один из самых распространённых типов операций — это операции сравнения. Эти операции постоянно используются в программах, потому что программы не только выполняют какие-то вычисления, но и проделывают массу других штучек. В частности, выполняют операции сравнения, то есть сравнивают что-то с чем-то.

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

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

Я не стал использовать операцию деления, потому что пользователь в качестве делителя может ввести число 0. А на ноль, как известно, делить нельзя. Поэтому программа завершится с ошибкой, и пользователь будет очень недоволен.

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

Как сделать такую проверку программно? Да очень просто — выполнить операцию сравнения. То есть сравнить число с нулём.

В таблице 15.3 приведены операции сравнения, которые допускается использовать в языке Free Pascal.

Таблица 15.3. Операторы сравнения Free Pascal.

Оператор Операция
= Равно
<> Не равно
< Меньше чем
> Больше чем
<= Меньше или равно
>= Больше или равно
in Входит в

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

Остался вопрос

как в программе использовать операторы сравнения?

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


if … then … else

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

if (если) выполняется условие then (то)
  выполняем этот код
else (иначе) если условие не выполняется
  выполняем этот код

А теперь попробуем доработать программу из
предыдущего урока и добавить в неё операцию целого деления. Добавленный код будет выглядеть так:

if y = 0 then
  WriteLn('Error: Division by ZERO!!!')
else
  WriteLn('x div y = ', x div y);

Здесь мы сначала проверяем значение переменной у. Если это значение
равно нулю, то мы выводим сообщение об ошибке. Иначе, то есть если переменная у имеет любое другое значение (не ноль), мы выполняем операцию целого деления и выводим результат.

Домашнее задание:

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

В выражении


у = 0

замените оператор = на оператор <>. Посмотрите,
что получится, если ввести в качестве второго числа 0. Доработайте программу таким образом,
чтобы она правильно работала с выражением


y <> 0

Поэкспериментируйте с другими операторами сравнения.

В языке Pascal есть ряд операций для работы с логическим типом данных — boolean.

Логическая переменная может принимать только два значения — True(истина) или False(ложь).

Операции сравнения

Сравнение — это простые условные выражения, которые сравнивают два логических значения, и возвращают True или False.

Free Pascal поддерживает такие операции сравнения:

Равно = (эквивалентно)

Возвращает True, если сравниваемые объекты равны, в ином случае возвращает False.

Не равно <>

Возвращает True, если сравниваемые объекты не равны, в ином случае — False.

Больше >

Возвращает True, если значение больше второго, иначе — False.

Больше равно >=

Возвращает True, если значение первой переменной больше или равно второй.

Меньше <

Возвращает True, если первое значение меньше второго, иначе — False.

Меньше равно <=

Возвращает True, если значение первой переменной меньше или равно второй.

Пример программы с операциями сравнения:

program Compare;
var
  x, y : integer;
begin
  x := 7;
  y := 42;
  writeln(x = y);  //Ложь
  writeln(x <> y); //Истина
  writeln(x > y);  //Ложь
  writeln(x < y);  //Истина
  readln;
end.

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

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

Для составных условных конструкций применяются логические операции.
В Паскале поддерживаются следующие логические операции and, or, not, xor.

Логическое отрицание not

Возвращает True, если выражение равно False, в ином случае возвращает True.

Логическое умножение and (конъюнкция)

Первый операнд Второй операнд Результат операции and
0 0 0
0 1 0
1 0 0
1 1 1

Логическое сложение or (дизъюнкция)

Первый операнд Второй операнд Результат операции or
0 0 0
0 1 1
1 0 1
1 1 1

Исключающее или xor (строгая дизъюнкция)

Первый операнд Второй операнд Результат операции xor
0 0 1
0 1 0
1 0 0
1 1 1

Логические операции применяются не только к значениям типа boolean и логическим выражениям. Их можно применять к числовым значениям. При этом они работают с представлениями чисел в двоичной системе. Поскольку операции работают с битами числа, они называются битовыми.

Пример битовых операций:

program BitOperation;
var
  a, b, c : Int8;
begin
  a := not 120;   //a = -121
  b := 30 and 21; //b = 20
  c := 42 or 21;  //c = 63
  writeln('a = ', a);
  writeln('b = ', b);
  writeln('c = ', c);
  readln;
end.     

not(17010) = not(011110002) = 100001112 = -12110

3010 and 2110 = 000111102 and 000101012 = 000101002 = 2010

4210 or 2110 = 001010102 and 000101012 = 001111112 = 6310

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

  1. Наибольший приоритет имеет оператор not;
  2. Второй по приоритету and;
  3. Дальше выполняется or;
  4. В завершение идут операторы сравнения < > <= >= = <>.

Смотрите также:

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

В таблице приведены основные математические операции Турбо Паскаль.

Символ операции Название операции Пример
*
умножение 2*3 (результат: 6)
/
деление 30/2 (результат: 1.5E+01)
+
сложение 2+3 (результат: 5)
-
вычитание 5-3 (результат: 2)
div
целочисленное деление 5 div 2 (результат: 2)
mod
остаток от деления 5 mod 2 (результат: 1)

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

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

  • NOT — логическое отрицание («НЕ»)
  • AND — логическое умножение («И»)
  • OR — логическое сложение («ИЛИ»)
  • XOR — логическое «Исключающее ИЛИ»

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

A B  not A   A and B   A or B   A xor B 
true true false true true false
true false   false true true
false true true false true true
 false   false    false false false

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

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

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

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

Основные математические функции

В этом разделе приведены основные математические функции, встроенные в системную библиотеку Турбо Паскаль.

Abs(X)

Возвращает абсолютное значение числа X.

Cos(X), Sin(X)

Возвращает косинус (синус) числа X, где X — угол в радианах.

Функций тангенс и котангенс в Турбо Паскале нет. Для их вычисления используйте выражение sin(x)/cos(x) (или cos(x)/sin(x) для котангенса).

ArcTan(X)

Возвращает арктангенc числа X.

Exp(X)

Возвращает число, равное e в степени X.

Ln(x)

Возвращает число, равное натуральному логарифму от числа X.

Pi

Число Пи.

Sqr(X)

Возвращает число, равное квадрату числа X.

Функции возведения в произвольную степень в Турбо Паскале нет. Используйте многократное умножение для возведения в целочисленную степень, либо функции Exp и Ln для возведения в вещественную степень.

Sqrt(X)

Возвращает число, равное квадратному корню из числа X.

Trunc(X)

Возвращает число, равное целой части числа X. (Происходит отбрасывание дробной части числа X. Результат выполнения имеет тип Longint).

Frac(X)

Возвращает число, равное дробной части числа X.

Int(X)

Возвращает число, равное целой части числа X. Результат выполнения функции — real.

Round(X)

Функция округляет число X. Возвращаемое значение имеет тип Longint.

Random(X)

Возвращает случайное целое число в диапазоне 0..X. Если аргумент опущен (Random), то возвращается случайное вещественное число от 0 до 1.

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

Пример. Вывод на экран 5 случайных чисел в диапазоне -10..10.

var i: integer;
begin
   randomize;
   for i:=1 to 5 do writeln(random(21)-10);
end.
Inc(X,Y)

Увеличивает значение числа X на Y. Если число Y не указано, то увеличение происходит на 1.

Dec(X,Y)

Уменьшает значение числа X на Y. Если число Y не указано, то уменьшение происходит на 1.

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

Не пропустите также:

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

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии