1
0
mirror of https://github.com/php/doc-ru.git synced 2026-04-28 01:33:30 +02:00
Files
archived-doc-ru/language/operators/arithmetic.xml
T

129 lines
4.7 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 43d07782b514d0c7a8487f2c74063739f302df8d Maintainer: sergey Status: ready -->
<!-- Reviewed: no -->
<sect1 xml:id="language.operators.arithmetic">
<title>Арифметические операторы</title>
<titleabbrev>Арифметика</titleabbrev>
<simpara>
Помните школьные основы арифметики? Описанные ниже операторы работают так же.
</simpara>
<table>
<title>Арифметические операции</title>
<tgroup cols="3">
<thead>
<row>
<entry>Пример</entry>
<entry>Название</entry>
<entry>Результат</entry>
</row>
</thead>
<tbody>
<row>
<entry>+$a</entry>
<entry>Идентичность</entry>
<entry>
Конвертация значения переменной <varname>$a</varname> в целое число (<type>int</type>)
или число с плавающей точкой (<type>float</type>), если нужно.
</entry>
</row>
<row>
<entry>-$a</entry>
<entry>Отрицание</entry>
<entry>Смена знака <varname>$a</varname>.</entry>
</row>
<row>
<entry>$a + $b</entry>
<entry>Сложение</entry>
<entry>Сумма <varname>$a</varname> и <varname>$b</varname>.</entry>
</row>
<row>
<entry>$a - $b</entry>
<entry>Вычитание</entry>
<entry>Разность <varname>$a</varname> и <varname>$b</varname>.</entry>
</row>
<row>
<entry>$a * $b</entry>
<entry>Умножение</entry>
<entry>Произведение <varname>$a</varname> и <varname>$b</varname>.</entry>
</row>
<row>
<entry>$a / $b</entry>
<entry>Деление</entry>
<entry>Частное от деления <varname>$a</varname> на <varname>$b</varname>.</entry>
</row>
<row>
<entry>$a % $b</entry>
<entry>Деление по модулю</entry>
<entry>Целочисленный остаток от деления <varname>$a</varname> на <varname>$b</varname>.</entry>
</row>
<row>
<entry>$a ** $b</entry>
<entry>Возведение в степень</entry>
<entry>
Возведение значения переменной <varname>$a</varname> в степень,
указанную в переменной <varname>$b</varname>.
</entry>
</row>
</tbody>
</tgroup>
</table>
<simpara>
Операция деления («/») возвращает число с плавающей точкой, кроме случая,
когда оба значения — целые числа (или строки, которые преобразуются
в целые числа), которые делятся нацело, тогда возвращается целое значение.
Для целочисленного деления вызывают функцию <function>intdiv</function>.
</simpara>
<simpara>
При делении по модулю операнды преобразовываются в целые числа (<type>int</type>) (путём удаления дробной части)
до начала операции. Для деления по модулю чисел с плавающей точкой вызывают
функцию <function>fmod</function>.
</simpara>
<para>
Результат операции остатка от деления <literal>%</literal> получит тот же знак,
что и делимое — то есть, результат выражения <literal>$a % $b</literal>
получит тот же знак, что и значение переменной <varname>$a</varname>. Например:
<informalexample>
<programlisting role="php">
<![CDATA[
<?php
echo (5 % 3)."\n"; // печатает 2
echo (5 % -3)."\n"; // печатает 2
echo (-5 % 3)."\n"; // печатает -2
echo (-5 % -3)."\n"; // печатает -2
?>
]]>
</programlisting>
</informalexample>
</para>
<sect2 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><link linkend="ref.math">Математические функции</link></member>
</simplelist>
</para>
</sect2>
</sect1>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->