Difference between revisions of "Integer/ru"

From Second Life Wiki
Jump to navigation Jump to search
(Created page with "{{LSL Header|ml=*}} {{LSLC|}}{{LSLC|Types}} =Integers= The integer data type is a signed 32 bit value between −2,147,483,648 and +2,147,483,647 (that is 0x80000000 to 0x7FFFFF…")
 
Line 2: Line 2:
{{LSLC|}}{{LSLC|Types}}
{{LSLC|}}{{LSLC|Types}}


=Integers=
=Целые числа=
The integer data type is a signed 32 bit value between −2,147,483,648 and +2,147,483,647 (that is 0x80000000 to 0x7FFFFFFF in hex). Integers are whole numbers. The fractional datatype is the [[float]].
К целочисленному типу относятся '''целые''' значения от −2,147,483,648 до +2,147,483,647 (или от 0x80000000 до 0x7FFFFFFF в шестнадцатеричной системе счисления). Числа с плавающей точкой относятся к [[float|вещественному]] типу.


[[DEBUG_CHANNEL]] can be used as a constant for the maximum integer (for that is the value it is defined as).
Константа [[DEBUG_CHANNEL]] равна максимально возможному значению целочисленного типа.


==Examples==
==Примеры==
All of the following are integers:
Ниже представлены примеры целочисленных величин:
<lsl>integer firstInt = 5512623;
<lsl>integer firstInt = 5512623;
integer secondInt = ACTIVE;
integer secondInt = ACTIVE;
Line 14: Line 14:
integer fourthInt = -160693;</lsl>
integer fourthInt = -160693;</lsl>


The following are NOT integers, use {{LSLG|float}} for them:
Представленные ниже величины - '''не''' целочисленные. Для них следует использовать вещественный тип <nowiki>(</nowiki>{{LSLG|float}}<nowiki>)</nowiki>:
<lsl>
<lsl>
integer decimalValue = 125.2; // ERROR : Type mismatch -- Integer literals can't have a decimal.
integer decimalValue = 125.2; // ОШИБКА : Неверный тип, целочисленные значения не могут быть дробными.
integer bigValue = 3147483647; // An undocumented way to say -1,147,483,649 // Integer literals can't be larger than 2,147,483,647.
integer bigValue = 3147483647; //по сути это -1,147,483,649 // целочисленные значения не могут быть больше 2,147,483,647.
integer biggerValue = 10123456789; // An undocumented way to say -1 // Integer literals can't be larger than 2,147,483,647.
integer biggerValue = 10123456789; //по сути это -1 // целочисленные значения не могут быть больше 2,147,483,647.
</lsl>
</lsl>


The following function can be used to determine whether a string of characters consists only of integers. This can be important if you need to know that a user has entered a valid integer in chat or a textbox, for example.
Представленная ниже функция проверяет, состоит ли строка символов только из цифр. Так можно проверить, что пользователь ввёл целое число в чате или текстовом диалоге.
<lsl>
<lsl>
integer IsInteger(string var)
integer IsInteger(string var)
Line 36: Line 36:
}</lsl>
}</lsl>


==Further Reading==
==Подробнее==
For a more extensive coverage of integers, including the different ways they are used in LSL, see [[LSL_101/LSL_in_Focus:_Integers|LSL in Focus: Integers]].
Более подробно о целочисленном типе и его использовании в языке LSL читайте в статье [[LSL_101/LSL_in_Focus:_Integers|LSL in Focus: Integers]].

Revision as of 09:39, 29 July 2012

Целые числа

К целочисленному типу относятся целые значения от −2,147,483,648 до +2,147,483,647 (или от 0x80000000 до 0x7FFFFFFF в шестнадцатеричной системе счисления). Числа с плавающей точкой относятся к вещественному типу.

Константа DEBUG_CHANNEL равна максимально возможному значению целочисленного типа.

Примеры

Ниже представлены примеры целочисленных величин: <lsl>integer firstInt = 5512623; integer secondInt = ACTIVE; integer thirdInt = 0x61EC1A; integer fourthInt = -160693;</lsl>

Представленные ниже величины - не целочисленные. Для них следует использовать вещественный тип (float): <lsl> integer decimalValue = 125.2; // ОШИБКА : Неверный тип, целочисленные значения не могут быть дробными. integer bigValue = 3147483647; //по сути это -1,147,483,649 // целочисленные значения не могут быть больше 2,147,483,647. integer biggerValue = 10123456789; //по сути это -1 // целочисленные значения не могут быть больше 2,147,483,647. </lsl>

Представленная ниже функция проверяет, состоит ли строка символов только из цифр. Так можно проверить, что пользователь ввёл целое число в чате или текстовом диалоге. <lsl> integer IsInteger(string var) {

   integer i;
   for (i=0;i<llStringLength(var);++i)
   {
       if(!~llListFindList(["1","2","3","4","5","6","7","8","9","0"],[llGetSubString(var,i,i)]))
       {
           return FALSE;
       }
   }
   return TRUE;

}</lsl>

Подробнее

Более подробно о целочисленном типе и его использовании в языке LSL читайте в статье LSL in Focus: Integers.