
ruby で 組み合わせの10C0から10C10までの値をすべて合計した値を求めるアルゴリズムを作ったのですが、undefined method '+" for nil:NilClass(No Method Error)となってしまいます。
def で
a(b,c)をbCcと定義しており、4の+jを書かなければ
ちゃんと、1,10、45、、252と計算され表示されます。
この値の合計を出したいのですが、なぜエラーになるのでしょうか。
1 i=0
2 j=0
3 while i <= 10
4 j = a(10,i) + j
5 i = i + 1
6 puts k
7 end
ーーーーーーーーーーーーーー
たとえば階乗を求めるアルゴリズムで
a=1
b=1
while a<=10 do
b = b * a
a = a + 1
end
puts b
の場合は、ちゃんと自己加算されます。
No.1ベストアンサー
- 回答日時:
おそらく a(10,i) が、なんらかの引数の時に nil を返しているのでしょう。
で、そのタイミングで 「nil + 整数」という演算はできないので、質問のようなエラーになる、と。
あとは、関数 a のコードを見ないとなんとも言えません。
この回答への補足
そうなんです!!
メソッドはこれです。
このメソッドは a(10,4)=210とちゃんとでます。
--------------
def a(g,h)
puts
a=1
b=1
while a<=g do
b = b * a
a = a + 1
end
c=1
d=1
while c<=h do
d = d * c
c = c + 1
end
e=1
f=1
while e<=g-h do
f = f * e
e = e + 1
end
puts b / ( d * f )
end
ーーーーーーーーーーーーーーーーー
そして、問題がこれです。
aa=4
while aa <= 10
ab = a(10,aa)
end
puts ab
たとえばこれで実行すると
210
nil
とでます、どこがnilになっているのでしょうか?
nilとは引数が無効という意味でしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C言語 exitの使い方
-
フォームを開くときに、コンボ...
-
VBAで配列のNULL判定
-
VBAの定数の使い方で、計算値を...
-
数字の位ごとの値を表示するプ...
-
Excel-vba 文字列と変数を...
-
コンボボックスの名前を変数に...
-
ラジオボタンの値の取得につい...
-
DataGridView 複数行同時変更...
-
C言語(DXlib)での音ゲーについ...
-
VB6.0-整数と余りを求める
-
C#で動的にコントロールを取得...
-
C言語でCLAMP(a,b,c)
-
世界のナベアツ
-
フリーランタイマーの時間差分...
-
CGIのPerlの変数をJavaScrip...
-
データ構造のmapとは?
-
1つ前の値を変数に保存する方法
-
VBA コンボボックスの値をスピ...
-
DWORDって
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
C言語 exitの使い方
-
Excel-vba 文字列と変数を...
-
フォームを開くときに、コンボ...
-
数字の位ごとの値を表示するプ...
-
VB6.0-整数と余りを求める
-
C#で動的にコントロールを取得...
-
VBAで配列のNULL判定
-
フリーランタイマーの時間差分...
-
足して100になるような乱数のア...
-
DWORDって
-
ラジオボタンの値の取得につい...
-
VBAの定数の使い方で、計算値を...
-
コンボボックスの名前を変数に...
-
定数のメリットとは?
-
C#でのIF文 時間比較のやり方
-
Excel VBA Forの使い方について...
-
【C++/CLI】コンボボックスの値...
-
DataGridView 複数行同時変更...
-
世界のナベアツ
-
CGIのPerlの変数をJavaScrip...
おすすめ情報