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

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

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

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

Q&A

解決済

4回答

9294閲覧

Ruby 円の面積を求めるプログラムについて

wingtss

総合スコア15

Ruby

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

0グッド

1クリップ

投稿2014/09/24 01:52

私が作った円の面積を求めるプログラムが動かないのです。。

どうすれば動きますでしょうか?
どなたか教えていただけませんか?
以下私が作ったプログラムです。

lang

1def en r 2return r * r * PI 3end

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

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

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

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

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

guest

回答4

0

ベストアンサー

include Math def en(r) r**2 * PI end

include を追記することでMath::PI と書かずにPIを利用することも出来ます

※処理フローの途中でreturn しなければならないとき以外はreturn を省略することが出来ます

投稿2014/09/27 21:35

gouf

総合スコア2321

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

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

0

定数PIを使う場合はMathモジュールをインクルードする必要があります。
そのため、Math:PIと記述する必要があります。
そこを直せば動くはずです。

投稿2014/09/25 07:30

tarou

総合スコア233

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

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

0

質問にあるコードでは次のようなエラーメッセージがでますね。

in `en': uninitialized constant PI (NameError)

google で "ruby PI" で検索すると、たくさんヒットしますが、その中に次のページがあります。
(他のページでも、以下と同じような情報を得る事はできるはず)

Ruby 2.1.0 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > Mathモジュール http://docs.ruby-lang.org/ja/2.1.0/class/Math.html

そこを読むと、

円周率
p Math::PI

=> 3.141592654

という例があるので、 Math::PI のように記述するのだと知る事ができます。

投稿2014/09/25 14:46

katoy

総合スコア22324

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

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

0

Math::PIですね。
なので正しくはこうです。
def en r
return r * r * Math::PI
end

投稿2014/09/25 14:35

taptappun

総合スコア69

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問