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

Дневник разработчика

Какие бывают операторы

Операторы необходимы для написания программ, в которых объекты взаимодействуют, а так же для проверки объектов, например для сравнения или выполнения арифметических операций.

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

операторОписаниепример
+Дополнение – добавляет значения по обе стороны оператора.a + b даст 30
Вычитание – вычитает правый операнд из левого операнда.a – b даст -10
*Умножение – умножает значения по обе стороны оператора.a * b даст 200
/Разделение – делит левый операнд правой рукой.b / a даст 2
%Модуль – делит левый операнд правой рукой и возвращает остаток.b % a даст 0
**Exponent – Выполняет экспоненциальный (энергетический) расчет для операторов.a ** b даст 10 мощности 20
Арифметические операторы в Ruby.
операторОписаниепример
==Проверяет, равно ли значение двух операндов или нет, если да, то условие становится истинным.(a == b) не соответствует действительности.
!=Проверяет, равно ли значение двух операндов или нет, если значения не равны, тогда условие становится истинным.(a! = b) истинно.
>Проверяет, превышает ли значение левого операнда значение правого операнда, если да, тогда условие становится истинным.(a> b) неверно.
<Проверяет, является ли значение левого операнда меньше значения правильного операнда, если да, тогда условие становится истинным.(a <b) истинно.
> =Проверяет, превышает ли значение левого операнда значение правого операнда, если да, тогда условие становится истинным.(a> = b) неверно.
<=Проверяет, является ли значение левого операнда меньше или равно значению правильного операнда, если да, тогда условие становится истинным.(a <= b) истинно.
<=>Комбинированный оператор сравнения. Возвращает 0, если первый операнд равен второму, 1, если первый операнд больше второго и -1, если первый операнд меньше второго.(a <=> b) возвращает -1.
===Используется для проверки равенства внутри предложения whencase .(1 … 10) === 5 возвращает true.
.eql?Истина, если приемник и аргумент имеют одинаковый тип и равные значения.1 == 1.0 возвращает true, но 1.eql? (1.0) является ложным.
equal?Истина, если приемник и аргумент имеют одинаковый идентификатор объекта.если aObj является дубликатом bObj, тогда aObj == bObj истинно, a.equal? ​​bObj является ложным, но a.equal? ​​aObj истинно.
Операторы сравнения в Ruby.
операторОписаниепример
=Простой оператор присваивания, присваивает значения из правых операндов в левый операнд.c = a + b присваивает значение a + b в c
+=Оператор Add AND присваивает, добавляет правый операнд в левый операнд и присваивает результат левому операнду.c + = a эквивалентно c = c + a
-=Вычитает и присваивает оператор, вычитает правый операнд из левого операнда и присваивает результат левому операнду.с – = а эквивалентно с = с – а
*=Оператор умножения и присваивания, умножает правый операнд на левый операнд и присваивает результат левому операнду.c * = a эквивалентно c = c * a
/=Оператор Divide AND присваивает, делит левый операнд на правый операнд и присваивает результат левому операнду.c / = a эквивалентно c = c / a
%=Оператор модуля и присваивания, принимает модуль с использованием двух операндов и присваивает результат левому операнду.c% = a эквивалентно c = c% a
**=Оператор Exponent AND присваивает операторам экспоненциальный (энергетический) расчет и присваивает значение левому операнду.c ** = a эквивалентно c = c ** a
Операторы присовения в Ruby.
операторОписаниепример
andВызывается логическим оператором AND. Если оба операнда верны, тогда условие становится истинным.(a и b) верно.
orВызывается логическим оператором ИЛИ. Если какой-либо из двух операндов не равен нулю, то условие становится истинным.(a или b) истинно.
&&Вызывается логическим оператором AND. Если оба операнда не равны нулю, условие становится истинным.(a && b) истинно.
||Вызывается логическим оператором ИЛИ. Если какой-либо из двух операндов не равен нулю, то условие становится истинным.(a || b) истинно.
!Вызывается логическим оператором NOT. Используется для изменения логического состояния операнда. Если условие истинно, то логический оператор NOT сделает ложным.! (a && b) является ложным.
notВызывается логическим оператором NOT. Используется для изменения логического состояния операнда. Если условие истинно, то логический оператор NOT сделает ложным.not (a && b) является ложным.
Логические операторы в Ruby.

Важно знать при работе с типами объектов

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

При сохранении чисел на входе, по средствам метода gets, числа являются строками! Если в дальнейшем эти числа нужны для вычислений или сравнения по средствам соответствующих операторов, то следует явно приводить число к типу число по средствам метода .to_i

Юрий Ронин