Главная » Статьи » Ruby » Более подробно о типах данных

Преобразование типов данных и случайные числа
Методы явного преобразования типов
Метод
Операция
to_f
Преобразовать в число с плавающей запятой
to_i
Преобразовать в целое
to_s
Преобразовать в строку
to_a
Преобразовать в массив
Методы преобразования типов в Ruby традиционно начинаются с приставки to_. Последующая буква — это сокращение от названия класса, в который происходит преобразование (f — Float — число с плавающей запятой, i — Integer — целое, s — String — строка, a — Array — массив). Посмотрим их действие на примере:
7.to_f #=> 7.0
7.9.to_i #=> 7
7.to_s #=> "7"
"7".to_a #=> ["7"]
Случайное число

Часто требуется получить случайное число. Пример:
rand(100) #=> 86
rand #=> 0.599794231588021


В первом случае метод rand возвращает целое число в диапазоне от 0 до 99 (на единицу меньше 100). Во втором случае метод rand возвращает число с плавающей запятой в диапазоне от 0.0 до 1.0 включительно. Различие в результате обусловлено передаваемым параметром:
если передаётся параметр (в данном случае 100), то генерируется целое случайное число (в диапазоне 0...N, где N — передаваемый аргумент);
если параметр отсутствует, то генерируется число с плавающей запятой в диапазоне от 0.0 до 1.0.

Есть способ предсказать весь ряд «случайных» чисел. Делается это при помощи метода srand. Ему передаётся целое число (идентификатор «случайной» последовательности). После этого весь случайный ряд можно предугадать. Проведём эксперимент: берусь угадать массив, который будет создан следующей программой.
srand 123
Array.new(5){ rand(100) } #=> [66, 92, 98, 17, 83]


Если вы выполните данную программу у себя, то получите тот же самый массив. 123 — номер «случайной» последовательности. Измените его и массив изменится!

Если вызвать srand без параметра или не вызывать его вообще, то номер «случайной» последовательности выбирается случайным образом.


Категория: Более подробно о типах данных | Добавил: Kostya (10.05.2009)
Просмотров: 3652 | Комментарии: 2 | Теги: преобразование типов, Ruby, случайное число | Рейтинг: 0.0/0
Всего комментариев: 2
1 Natashalat  
Где бесплатно X Rumer 7.0.10 ELITE??
Дайте мне адрес , пожалуйста!!!
Это лучшая программа для массового размещения на форумах ! XRumer может сломать большинство видов каптч !

2 Natashalat  
Как скачать X-Rumer 7.0.10 ?
Пришлите мне , пожалуйста URL!
Это лучшая программа для массового размещения на форумах ! XRumer может сломать большинство видов каптч !

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]