Text Box から入れた数字の平方根を求め、Label に書き出すプログラム
↑これってどうやればいいでしょうか????
ヘルプで「平方根」を検索か、
過去ログを「平方根」で検索か、
VB6 平方根 でGoogle検索。
Sqr関数を使うのでは。
Label1.Caption = Sqr(Text1.Text)
又は、
Label1.Caption = Text1.Text ^ (1 / N)
平方根の場合、N=2
立方根の場合、N=3
X乗根の場合、N=X
>まさやん氏
このぐらいの事は頑張って本人がある程度調べられるようにならないと
本人のためにならないと思う
これっきりプログラムしないんだったら関係ないかもしれないけどさ
それはそれとして、
>Label1.Caption = Sqr(Text1.Text)
初心者相手であるからこそ、データ型の事を考えずに
適当に書いてしまうのは宜しくないのでは
本来なら例えば
Label1.Caption = CStr(Sqr(CDbl(Text1.Text)))
とかにすべき
VBだとこの辺適当でも動いちゃうけどさ
(もっと言うと本来ならIsNumericとか使うべきだけど…
とりあえず、そのレベルの話は いいか)
タメ口、キモ〜
編集 削除あれですね、なんと Option Explicit でも
Label1.Caption = Sqr(Text1.Text)
Label1.Caption = Text1.Text ^ (1 / N)
両方通ってしまうと言うことは、もうこれは言語仕様というしかかな。
VB.NETでも同じですね、さすがに Option Strict On だとはじかれますが。
それとIsNumericは入り込む余地がないんじゃないかな気持ちはわかるが、ただしマイナスチェックは要るな。
If CDbl(Text1.Text) >= 0 Then
Text2.Text = Str(Sqr(CDbl(Text1.Text)))
Else
MsgBox "入力データーは0以上でお願いします。", _
vbOKOnly, "入力エラー"
End If
複素数まで考えると
If Abs(CDbl(Text1.Text)) = CDbl(Text1.Text) Then
Text2.Text = Str(Sqr(CDbl(Text1.Text)))
Else
Text2.Text = Str(Sqr(Abs(CDbl(Text1.Text)))) + "i"
End If
なんてのも有りそうでうだが。
>我龍院氏
>IsNumericは入り込む余地がないんじゃないかな
TextBoxに数値しか入らないように制御掛けたりしてるんだったら
確かに必要は無いですね
但しそれが無い場合は、数値以外を入力されたらCDblも通らないので
数値かどうかの確認は必要かと
それと確かにマイナスの事は考えた方が良さそうですな
質問者が、どの程度のレベルのものを望むかにも よるとは思うが
>但しそれが無い場合は、数値以外を入力されたらCDblも通らないので
>数値かどうかの確認は必要かと
その通りでした。
応援、キモ〜〜〜
編集 削除