Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Def howBig (i)

Читайте также:
  1. Puts howBig(7); puts howBig(15)

If 23

puts "23 є ІСТИНА"

End

if "qq"

puts "І будь-який рядок є ІСТИНА"

End

 

Ruby підтримує всі стандартні логічні оператори, а також додатковий оператор defined? Для кон’юнкції двох логічних виразів використовуються and і &&. Їх результат буде правдивий тільки якщо істинні обидва операнда. Ці функції обчислюють інший операнд лише тоді, коли перший правдивий, а відрізняються вони лише своїм пріоритетом (пріоритет оператора and менше &&).

В свою чергу результатом виконання операторів or і || (диз’юнкції) буде істина, якщо хоча б один з операндів правдивий. Вони обчислюють інший оператор тільки в тому випадку, якщо перший виявиться помилковим. Як і у випадку з оператором and, оператор or має менший пріоритет у порівнянні з || (відзначимо, що оператор and має пріоритет, рівний пріоритету оператора or, в той час як пріоритет && вище, ніж у ||).

Оператори not і! повертають значення, протилежне своєму аргументу (якщо аргумент правдивий, то результат хибний, і навпаки). Між собою відрізняються тільки пріоритетом.

Оператор defined? повертає nil, якщо його аргумент не визначений, і його опис в іншому випадку. Нижче наведені приклади застосування цього оператора.

 

puts defined? 1

puts defined? Dummy

puts defined? Printf

puts defined? (с, d = 1, 2)

puts defined? 42.abs

 

У логічних виразах допускаються також наступні операції порівняння: == <, <=, >=, >, !=.

Синтаксис умовного оператора if в мові Ruby аналогічний його синтаксису в більшості інших мов програмування.

 

# Визначення методу оцінки величини виразу

Def howBigPrint (i)

if i <10

puts "Число # {i} менше 10"

elsif i <20

puts "Число # {i} між 10 і 20"

elsif i <30

puts "Число # {i} між 20 і 30"

Else

puts "Число # {i} більше або дорівнює 30"

End

End

# Використання методу...

HowBigPrint(7); howBigPrint(15)

HowBigPrint(23); howBigPrint(105)

 

Загальна форма оператора if така:

 

if <логічний_вираз> [then]

тіло_оператора

elsif < логічний_вираз > [then]

тіло_оператора

...

Else

Тело_оператора

End

 

Тут <логіческое_вираженіе> може бути будь-яким фрагментом коду на мові Ruby, результатом обчислення якого є логічна величина (з урахуванням сказаного вище). Слово then відокремлює тіло оператора від умови. Запис його в квадратних дужках означає, що воно може бути опущено, якщо тіло починається з нового рядка. Значення, що повертається оператором if, є результат останнього обчисленого виразу. Змінимо наш приклад, щоб продемонструвати сказане:

 

# Метод оцінки величини виразу

# Тепер повертає рядок

def howBig (i)

if i <10 then "Аргумент менше 10"

elsif i <20 then "Аргумент між 10 і 20

elsif i <30 then "Аргумент між 20 і 30"

else "Аргумент більше або дорівнює 30"

End

End

# Використання методу...


Дата добавления: 2015-08-09; просмотров: 77 | Нарушение авторских прав


Читайте в этой же книге: Оператор GROUP ВУ | When 100 .. 999 | For i in 1 ... 6 |
<== предыдущая страница | следующая страница ==>
Итоговые функции| Puts howBig(7); puts howBig(15)

mybiblioteka.su - 2015-2024 год. (0.009 сек.)