質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Q&A

解決済

2回答

710閲覧

Rubyにける^「キャレット」の意味と使い方をご教示お願いします。

helo

総合スコア36

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

0グッド

1クリップ

投稿2019/02/17 13:26

前提・実現したいこと

Rubyを初めて半年ちょいの初心者なのですが、「^(キャレット)」の使い方と意味が全く分かりません。
いろんなコードを見ていると時折出てくるので、解らないので困っています。
ご教示頂けましたら大変ありがたいです。
よろしくお願いします。

発生している問題・エラーメッセージ

エラーメッセージ

該当のソースコード

ソースコード

試したこと

ここに問題に対して試したことを記載してください。

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2019/02/17 13:32

具体的なコードが書いていないと何のキャレットのことなのかがわからないです。
helo

2019/02/18 12:06

ご連絡ありがとうございます。例えば、以下のような場合等。 二乗を出力しているのであろうことは想像できるのですがどういう意味があるのでしょうか。 よろしくお願いいたします。 each_grid(2, 5, 2, 4) do |x, n| y = x**n puts "#{x}^#{n}=#{y}" end
guest

回答2

0

each_grid(2, 5, 2, 4) do |x, n|

y = x**n
puts "#{x}^#{n}=#{y}"
end

の場合の^は演算子でもなんでもなく
ただ^という文字を表示させているだけです。

この場合、べき乗を表現しています。
数式を上付き数字が表現できない文字列に変換する際のローカルルールの一つですね。


べき乗とは別に排他的論理和に対して^を演算子として用いる事があります。

投稿2019/02/20 23:00

asm

総合スコア15147

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

maisumakun

2019/02/23 00:43

あとは、正規表現内で「先頭」や、([^a-z]のような形で)「文字クラスの否定」という意味になることもあります。
helo

2019/02/23 00:46

asm様、回答ありがとうございます。 この場合、出力を見ると確かに表示されているものでした。 「べき乗」も含め勉強をしてみます。 参考になりました。感謝いたします。
guest

0

ベストアンサー

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

helo

2019/02/20 13:12

otn様  ご回答ありがとうございます。このサイトはもちろん確認しているのですが、よく解らないので こちらに質問を送りました。 もう少し調べてみます。ありがとうございました。
otn

2019/02/20 13:40

なるほど。 そのサイトには、 > 「xor」演算子。排他的論理和。 と書いてありますが、「排他的論理和」が分からないと言うことですね。 これは論理演算で、組み込みクラスでは、 Integer 同士 true false nil のうちいずれか Set(集合) 同士 で、定義されています。 Integer 同士の場合は、2進数で表現して対応する桁同士を次のルールで演算します。 0 ^ 0 → 0 0 ^ 1 → 1 1 ^ 0 → 1 1 ^ 1 → 0 例えば、 10進表現で 10 ^ 3 は2進表現だと 1010 ^ 11 で、同じ位同士を演算すると 1001 で10進表現だと 9 です。 true false nil の場合は、 false ^ false → false false ^ true → true true ^ false → true true ^ true → false で、nil は false と同じです。 Set同士の場合は、どちらか片方の集合にのみ含まれる要素からなる集合です。
helo

2019/02/23 00:41

otn様、ありがとうございます。 大変参考になりました。 何となくですが、解ってきました。元々が文系頭ですので「排他的論理和」等を勉強してみます。 詳細な説明をありがとうございました。感謝いたします。
otn

2019/02/23 10:46

論理和、論理積、論理否定、排他的論理和 が数学用語ですが、論理学の話から、数値の話に話が広がったりしているので、わかりにくいかも知れません。 true/falseのの論理○○の話と、集合の論理○○の話は数学ですが、数値に対しての論理○○は、IT用語だと思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問