Что такое inc в паскале
Перейти к содержимому

Что такое inc в паскале

  • автор:

Инкремент и декремент

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

Процедура Inc в Паскале выполняет операцию инкремента. Синтаксис процедуры следующий:

procedure Inc(var X: TOrdinal);

procedure Inc(var X: TOrdinal; Increment: TOrdinal);

Процедура Inc увеличивает значение переменной Х на значение Increment.

Если Increment не указан, то Х увеличивается на единицу.

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

Процедура Dec в Паскале выполняет операцию декремента. Синтаксис процедуры следующий:

procedure Dec(var X: TOrdinal);

procedure Dec(var X: TOrdinal; Decrement: TOrdinal);

Процедура Dec уменьшает значение переменной Х на значение Decrement.

Если Decrement не указан, то Х уменьшается на единицу.

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

Тип TOrdinal

Типа TOrdinal на самом деле в Паскале не существует. Однако в справочной документации вы можете встретить такое наименование. Это означает, что значение может быть любого порядкового типа.

Операции инкремента и декремента

Для новичков объясню, что такое операции инкремента и декремента.

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

То есть по сути процедура Inc(X, Increment) выполняет следующий код:

Х := Х + Increment

А процедура Dec(X, Decrement) выполняет следующий код:

Х := Х — Decrement

Пример использования процедур Dec и Inc

program funcdecinc; var x : integer; begin x := 100; Dec(x); //x = 99 WriteLn(x); Inc(x); //x = 100 WriteLn(x); Dec(x, 10); //x = 90 WriteLn(x); Inc(x, 20); //x = 110 WriteLn(x); Dec(x, -10); //x = 120 WriteLn(x); Inc(x, -20); //x = 100 WriteLn(x); ReadLn; end.

Особенности использования процедур Dec и Inc

Наверняка вы обратили внимание в примере использования процедур Dec и Inc на последние несколько строк, где в качестве инкремента и декремента передаются отрицательные значения.

В таких случаях процедуры Dec и Inc работают “наоборот”. То есть

Dec(x, -10); — увеличивает Х на 10

Inc(x, -20); — уменьшает Х на 20

Применение процедур Dec и Inc

Наиболее часто процедуры Dec и Inc используются в циклах. Например, так:

x := 10; while x > 0 do begin Write(x, ' '); Dec(x); end;

Ну вот и всё. Больше сказать об этих процедурах мне нечего. Но, думаю, ничего говорить больше и не надо.

Разработчику о работе с 1С:Предприятие, Pascal, Паскаль

Функция inc (A, B), dec (A, B) в Паскале (Pascal).

09.05.2017 | Автор Дмитрий

Функция inc (A, B), dec (A, B) в Паскале (Pascal).
Функция inc (A, B) — увеличивает значение переменной A на значение переменной B.
Функция dec (A, B) — уменьшение значение переменной A на значение переменной B.

program Inc_dec_Task; //программа inc, dec в Паскале var i_Num1, i_Num2: integer; begin i_Num1 := 10; i_Num2 := 3; Writeln('Было i_Num1: ', i_Num1); Writeln('Было i_Num2: ', i_Num2); Writeln('Функция: inc(i_Num1,i_Num2)'); Inc(i_Num1, i_Num2); // увеличение Writeln('Стало i_Num1: ', i_Num1, ' увеличение'); Writeln('Стало i_Num2: ', i_Num2); Writeln('Функция: dec(i_Num1,4)'); Dec(i_Num1, 4); //уменьшение Writeln('Стало i_Num1: ', i_Num1, ' уменьшение'); Writeln('Стало i_Num2: ', i_Num2); //завершение работы программы WriteLn('Нажмите , чтобы выйти.'); ReadLn(); end.  

Функция inc (A, B), dec (A, B) в Паскале (Pascal).

Вторая переменная может отсутствовать. В это случае, по умолчанию переменная B равно 1.
В примере переменную A сначала увеличиваем на 1, а потом уменьшаем на 1.

program Inc_dec_1_Task; //программа inc, dec в Паскале по умолчанию 1 var i_Num1: integer; begin i_Num1 := 10; Writeln('Было i_Num1: ', i_Num1); Writeln('Функция: inc(i_Num1)'); Inc(i_Num1); // увеличение на 1 Writeln('Стало i_Num1: ', i_Num1, ' увеличение на 1'); Writeln('Функция: dec(i_Num1)'); Dec(i_Num1); //уменьшение на 1 Writeln('Стало i_Num1: ', i_Num1, ' уменьшение на 1'); //завершение работы программы WriteLn('Нажмите , чтобы выйти.'); ReadLn(); end.  

Функция inc (A), dec (A) в Паскале (Pascal), без второй переменной, по умолчанию равна 1 (единице).

Рубрика: Pascal — программирование

Что такое inc в паскале

Increase value of integer variable

Declaration

Source position: system.fpd line 50

var X : TOrdinal

var X : TOrdinal ;

Description

Inc increases the value of X with Increment . If Increment isn’t specified, then 1 is taken as a default.

Inc can be used on typed pointers: in that case it increases the value with Increment the size of the type the pointer points to. This works independently of the setting of the $POINTERMATH directive.

Errors

If range checking is on, then A range check can occur, or an overflow error, when an attempt is made to increase X over its maximum value.

See also

Decrease value of variable

Example

Program Example32; Const C : Cardinal = 1; L : Longint = 1; I : Integer = 1; W : Word = 1; B : Byte = 1; SI : ShortInt = 1; CH : Char = 'A'; begin Inc (C); Inc (L,5); Inc (I,-3); Inc (W,3); Inc (B,100); Inc (SI,-3); Inc (CH,1); end. 

Вопросы по Pascal. Процедуры Dec и Inc.

Вопросы по Pascal

Автор cyber На чтение 1 мин.

В чем заключается вопрос : Для чего нужны и как работают процедуры Dec и Inc в Pascal

Сложность: легкая.

Пояснение:

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

Обе процедуры могут принимать два параметра:

  1. Какую переменную увеличить / уменьшить
  2. На сколько увеличить / уменьшить

Если указать в процедуре только один параметр, то значение будет изменено на единицу:

var A,B:integer; begin A := -2; B := 1; // Процедуры сработают так Inc(A); // A := A + 1; Dec(B); // B := B - 1; writeln(A); // станет равным -1, т.к. Inc без 2-го параметра прибавит единицу. writeln(B);// станет равным 0, т.к. Dec без 2-го параметра вычтет единицу. readln; end.

Теперь если мы укажем второй параметр процедуры, то значение переменной будет изменено на конкретное значение:

var A,B:integer; begin A := -2; B := 1; // Процедуры сработают так Inc(A, -5); // A := A + (-5); Dec(B, 2); // B := B - 2; writeln(A); // будет -7 writeln(B); // будет -1 readln; end.

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *