Serviceを読んで理解し、同意したものとみなします。スタック・オーバーフローはプログラマーとプログラミングに熱心な人のためのQ&Aサイトです。197件1こんばんは。今Rubyで簡単な「掛け算の表」を作るのに挑戦しています。Rubyの二重whileが期待した出力をしません。自分なりにRubyのリファレンスでwhileの項目を見たり、Rubyの解説サイトでwhileの欄を見たりして色々弄ってみましたが上手くいきませんでした。自分が書いたコードはこんな感じです(使ってる言葉とか間違ってたり、コードが汚かったら申し訳ありません)問題の出力はこんなかんじですご覧の通り1の段だけ出ていて2~9の段が出力されません...。1で変数の初期化をしています。1で条件式がtrueなので処理に入ります。doで、whileの中にwhileを作った形になってます。1*9までの結果が出力に出るはずです。この内側のwhileがfalseになって初めて、putsが実行され、改行されます。doに来て、条件式がtrueになるので同じ処理が続いてくはずです。出力結果は1の段しか出ません....凄く下手で見辛い質問で申し訳ありません。自分なりに格闘して探ってみたのですが、解決できません。個の銅バッジすみません、期待する出力を書いてませんでした...。票3変数をaからbまで1ずつ増やしながらループさせる場合、大抵の言語ではもっと適した制御構造があるので、そちらを使いましょう。個の銅バッジせっかく回答してくださったのに返信が遅れてしまい申し訳ありません。|2while文は条件式だけ書くので、このままだと次の段に行った時に変数yの値が10のままになり、変数yが1に初期化されない。doのwhile文は変数yが10なので、falseになり、このように1の段の結果しか処理されない。1:09すごい!たしかにできました!ありがとうございます。8:57変数スコープというキーワードで調べてみると良いと思います。|回答スタック・オーバーフローに参加してくれて、ありがとうございます!質問の回答を共有してください。回答を説明し、自分の検討結果も共有してください。意見を述べること(意見を述べるなら、参照リソース、自分の経験で意見をサポートしてください)さらにサポートが必要な場合このヘルプを参考してください。“回答を投稿”をクリックすることで利用規約、プライバシーポリシー、及びクッキーポリシーに同意したものとみなされます。タグが付いた他の質問を参照するか、自分で質問をする。質問のフィードこのRSSフィードを購読するには、このURLをコピーしてRSSリーダーに貼り付けてください。