2022-10-28 21:49:20
Re③:ボタン動作時の計算式
別に詳しいワケじゃないんですが、「元数とは数値」は、変数の宣言文ですから、使うのに先だっておこなわなくちゃいけません。 尋ねる文の内容を代入した後に使っているのは、そもそも間違いなんです。 元のプログラムではOKで、関数にしたらダメになるというのは、グローバル変数とローカル変数の差です。 グローバル変数はプログラム全体で有効な変数で、ローカル変数は関数の内部だけで有効な変数です。なでしこv1では、関数の中で宣言された変数は、ローカル変数となりますが、関数の中でも宣言せずに使った変数はグローバル変数となります。 ですから、同じ「元数」とゆう名前でも、尋ねる文が代入された元数はグローバル変数です。でも、その後で「元数とは数値」と、ローカル変数が宣言されているので、以後の元数は、尋ねる文の内容が代入された元数とは別の変数なのです。 宣言されただけで何も代入されていない数値型の変数なので中身は0ですから、何で割っても答えは0になる道理です。 なでしこでは、変数の型を自動的によきように変換してくれるので、尋ねる文で入れた内容が数字だけなら実数型に、文章だったら文字列型になって、通常は計算に支障はありません。 それでもキチンと数値であることを明示しておきたいとゆうことであれば、代入文の前に宣言文を置くか、念のために実数変換するかとゆうところじゃないでしょうか。 |