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

Puts howBig(7); puts howBig(15)

Puts howBig(23); puts howBig(105)

 

Для виконання одного варіанту з двох можливих використовується наступна форма оператора if:

 

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

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

Else

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

End

 

У наступному фрагменті порівнюється значення змінної i з числом 100.

 

if i <100

puts "Мало"

Else

puts "Значно більше"

End

 

Оператор if може використовуватися в правій частині оператора присвоєння, наприклад,

 

str = if i <100 then "Мало" else "Побільше" end

Puts str

 

Для аналогічних цілей використовується і тернарний оператор

 

логічний_вираз? вираз1: вираз2

 

Якщо логічний_вираз істинно, то виконується вираз1, інакше - вираз2. Подивіться на приклади використання цього оператора:

 

i = 23

i <100? puts ("Мало"): puts ("Значно більше")

i = 1234

s = i <100? "Мало": "Значно більше"

Puts s

 

Як бачите, цей оператор особливо зручний, якщо потрібно змінній присвоїти одне з двох значень.

Приклад Напишіть програму, що визначає парність введеного числа.

 

print "Введіть ціле число:" a = gets.to_i

str = a%2 == 0? "Парне": "непарній"

puts "Число # {a}" + str

 

Якщо потрібно виконати послідовність операторів тільки в тому випадку, коли виконано деяка умова, то використовується форма

 

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

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

End

 

Для цієї ж мети можна використовувати і модифікований оператор if:

 

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

 

Нижче наводяться дві версії фрагмента програми, що використовує оператор if:

 

if radiation> 3000

puts "Радіаційна небезпека!"

End

# Те ж саме

puts "Радіаційна небезпека!" if radiation> 3000

 

Приклад Напишіть програму, що визначає, чи є введена фраза паліндромом (перевернутою).

 

puts "Введіть фразу:"

a = gets.chop!.delete (‘‘) # видалили всі прогалини

a = a.tr (‘AZ, А-Я’, ‘az, а-я’) # заміна букв на прописні

str = "паліндром"

str = "не" + str if a! = a.reverse # перевірка

puts "Введена фраза -" + str + "."

 

При виборі з більшого числа альтернатив зручніше використовувати оператор case. Нижче наведено його загальний вигляд:

 

case <вираз>

when <тест1> [then]

...

when <тест2> [then]

...

when <тестN> [then]

...

[else

... ]

End

 

У операторі case <вираз> послідовно порівнюється з виразами <тест> до тих пір доки, воно не співпаде з одним з них (порівняння проводиться за допомогою операції ==), після чого виконується відповідний фрагмент коду. Оператор case повертає значення останнього обчисленого виразу, або nil, якщо такого не було.

 

s = case i

When 0.. 9

"Однозначне"

When 10.. 99

"Двозначне"


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


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

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