るりまサーチ

最速Rubyリファレンスマニュアル検索!
156件ヒット [1-100件を表示] (0.088秒)

別のキーワード

  1. rbconfig ruby
  2. fiddle ruby_free
  3. fiddle build_ruby_platform
  4. rake ruby
  5. rubygems/defaults ruby_engine

ライブラリ

クラス

モジュール

キーワード

検索結果

<< 1 2 > >>

Random#rand(max) -> Integer | Float (21390.0)

一様な擬似乱数を発生させます。

...e.end - range.begin が整数を返す場合は range.begin + self.rand((range.end - range.begin) + e)
の値を返します(e は終端を含む場合は1、含まない場合は0です)。
range.end - range.begin が実数を返す場合も同様です。
このため range が Time の場合な...
...どにもうまく動作します。

引数が実数でも範囲でもない場合は Object#to_int で変換した値が指定されたものとして扱います。

@param max 乱数値の上限を正の整数または実数で指定します。
max 自体は乱数値の範囲に...
...range.end - range.begin は数値である必要があり、
range.begin + 数値 が適切な値を返す必要があります。

@raise Errno::EDOM rand(1..Float::INFINITY) などのように範囲に問題があるときに発生します。
@raise ArgumentError 引数の数...

Random#rand(range) -> Integer | Float (21390.0)

一様な擬似乱数を発生させます。

...e.end - range.begin が整数を返す場合は range.begin + self.rand((range.end - range.begin) + e)
の値を返します(e は終端を含む場合は1、含まない場合は0です)。
range.end - range.begin が実数を返す場合も同様です。
このため range が Time の場合な...
...どにもうまく動作します。

引数が実数でも範囲でもない場合は Object#to_int で変換した値が指定されたものとして扱います。

@param max 乱数値の上限を正の整数または実数で指定します。
max 自体は乱数値の範囲に...
...range.end - range.begin は数値である必要があり、
range.begin + 数値 が適切な値を返す必要があります。

@raise Errno::EDOM rand(1..Float::INFINITY) などのように範囲に問題があるときに発生します。
@raise ArgumentError 引数の数...

String#crypt(salt) -> String (3149.0)

self と salt から暗号化された文字列を生成して返します。 salt には英数字、ドット (「.」)、スラッシュ (「/」) から構成される、 2 バイト以上の文字列を指定します。

...くランダムな文字列を選ぶべきです。
他にも 29297 などがあります。

注意:

* Ruby 2.6 から非推奨になったため、引き続き必要な場合は
string-crypt gem の使用を検討してください。
* crypt の処理は crypt(3) の実装に依存して...
...list[例][ruby]{
# パスワードの暗号化
salt = [rand(64),rand(64)].pack("C*").tr("\x00-\x3f","A-Za-z0-9./")
passwd.crypt(salt)

# UNIX のログイン認証
require 'etc'

def valid_login?(user, password)
ent = Etc.getpwnam(user)
password.crypt(ent.passwd) == ent.passwd
end

p valid_login...

Random#bytes(size) -> String (3113.0)

ランダムなバイナリー文字列を返します。結果の文字列のサイズを指定できます。

...ランダムなバイナリー文字列を返します。結果の文字列のサイズを指定できます。

@param size 結果の文字列のサイズをバイト数で指定します。

//emlist[例][ruby]{
r2 = Random.new(1)
p r2.bytes(10) # => "%\xF4\xC1j\xEB\x80G\xFF\x8C/"
//}...
...ムなバイナリー文字列を返します。結果の文字列のサイズを指定できます。

@param size 結果の文字列のサイズをバイト数で指定します。

//emlist[例][ruby]{
r2 = Random.new(1)
p r2.bytes(10) # => "%\xF4\xC1j\xEB\x80G\xFF\x8C/"
//}

@see Random.bytes...

Random#seed -> Integer (3113.0)

現在の乱数の種を返します。

...現在の乱数の種を返します。

//emlist[例][ruby]{
p Random.new(3).seed # => 3
//}...

絞り込み条件を変える

Array#sample(random: Random) -> object | nil (349.0)

配列の要素を1個(引数を指定した場合は自身の要素数を越えない範囲で n 個) ランダムに選んで返します。

...
場合は返り値もユニークな配列になります。

配列が空の場合、無引数の場合は nil を、個数を指定した場合は空配列を返します。

srand()が有効です。

@param n 取得する要素の数を指定します。自身の要素数(self.length)以上...
...ェクトを指定した場合は to_int メソッドによる暗
黙の型変換を試みます。

@param random 乱数生成器(主に Random オブジェクト)を指定します。
選択する要素のインデックスを返す rand メソッドに応答する...
...す。rand メソッド
の引数には Random#rand(max) のように選択可能なイン
デックスの最大値が指定されます。
Kernel.#randRandom を使用しないオブジェク
トを指定した場合、Kernel.#srandの指...

Enumerable#sort_by {|item| ... } -> [object] (209.0)

ブロックの評価結果を <=> メソッドで比較することで、self を昇 順にソートします。ソートされた配列を新たに生成して返します。

...して返します。

つまり、以下とほぼ同じ動作をします。

//emlist[例][ruby]{
class Array
def sort_by
self.map {|i| [yield(i), i] }.
sort {|a, b| a[0] <=> b[0] }.
map {|i| i[1]}
end
end
//}

Enumerable#sort と比較して sort_by が優れている点と...
...

//emlist[][ruby]{
p ["BAR", "FOO", "bar", "foo"].sort {|a, b| a.downcase <=> b.downcase }
//}

一方、次のように sort_by を使うと downcase の実行回数は要素数と同じです。
つまり、その部分の実行時間は O(n) のオーダーです。

//emlist[][ruby]{
p ["BAR...
...wncase }
//}

以下の、実行回数の検証結果を参照してみてください。

//emlist[][ruby]{
class Integer
def count
$n += 1
self
end
end

ary = []
1.upto(1000) {|v| ary << rand(v) }

$n = 0
ary.sort {|a,b| a.count <=> b.count }
p $n # => 18200

$n = 0
ary.sort_b...

Array#sample -> object | nil (149.0)

配列の要素を1個(引数を指定した場合は自身の要素数を越えない範囲で n 個) ランダムに選んで返します。

...
場合は返り値もユニークな配列になります。

配列が空の場合、無引数の場合は nil を、個数を指定した場合は空配列を返します。

srand()が有効です。

@param n 取得する要素の数を指定します。自身の要素数(self.length)以上...
...ェクトを指定した場合は to_int メソッドによる暗
黙の型変換を試みます。

@param random 乱数生成器(主に Random オブジェクト)を指定します。
選択する要素のインデックスを返す rand メソッドに応答する...
...す。rand メソッド
の引数には Random#rand(max) のように選択可能なイン
デックスの最大値が指定されます。
Kernel.#randRandom を使用しないオブジェク
トを指定した場合、Kernel.#srandの指...

Enumerable#max_by {|item| ... } -> object | nil (149.0)

各要素を順番にブロックに渡して実行し、 その評価結果を <=> で比較して、 最大であった値に対応する元の要素、もしくは最大の n 要素が降順で入った配列を返します。

...、もしくは最大の n 要素が降順で入った配列を返します。

引数を指定しない形式では要素が存在しなければ nil を返します。
引数を指定する形式では、空の配列を返します。
該当する要素が複数存在する場合、どの要素を...
...ます。

@param n 取得する要素数。

//emlist[例][ruby]{
a = %w(albatross dog horse)
a.max_by # => #<Enumerator: ["albatross", "dog", "horse"]:max_by>
a.max_by { |x| x.length } # => "albatross"
//}

//emlist[例][ruby]{
a = %w[albatross dog horse]
a.max_by(2)...
...//emlist[例: enum.max_by(n)は、重み付きランダムサンプリングを実装するために使用できます。次の実装例は、Enumerable#wsampleを使用します。][ruby]{
module Enumerable
# weighted random sampling.
#
# Pavlos S. Efraimidis, Paul G. Spirakis
# Weighte...
<< 1 2 > >>