0

Ruby Shoes で GUI を使った簡単な電卓をコーディングしてみました。

アイデアは、押したボタンの数値を配列に保存し、そこから整数を取得することでした (array[i] * {arraydepth}数値に追加するループ)。次に、「結果」表示を保持するスタックをクリアし、結果を表示する新しいテキストフィールドに置き換えます (現在、まだそこまで到達していないため、「変更済み」と表示されています)。

私の方法はうまくいきません。この関数を使用して配列に数値を追加しようとすると

def addToVar(number)

  if choosingVar2
    var2Counter += 1
    var2[var2Counter] = number
  else
    var1Counter += 1
    var1[var1Counter] = number
  end

  transToNumber

rescue
  @p.clear { para \"edited\" }

end

の前のコードは実行されませんrescue。/のalert("alert")前にを付けてみました。それはうまくいきましたが、最初のものより前のものはすべて実行されません。なんで?ifelseifrescue

次の関数を使用して、配列に格納されている値から整数を取得しようとすると、同じ問題が発生します

def transToNumber

  mult = 1
  while var1Counter > 0
    var1Num += var1[var1Counter] * mult
    mult *= 10
    var1Counter -= 1
  end

  mult = 1
  while var2Counter > 0
    var2Num += var2[var2Counter] * mult
    mult *= 10
    var2Counter -=1
  end

  @p.clear { para \"edited\" }

end

配列に何か問題があると思われます。

ここでコードを完成させます。

4

1 に答える 1