C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

ログ内検索
  • キーワードを複数指定する場合は 半角スペース で区切ってください。
  • 検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
  • [返信]をクリックすると返信ページへ移動します。
キーワード/ 検索条件 /
検索範囲/ 強調表示/ ON (自動リンクOFF)
結果表示件数/ 記事No検索/ ON
大文字と小文字を区別する

No.99581 の関連記事表示

<< 0 >>
■99581  Re[2]: 乗数  繰り返し処理
□投稿者/ たか -(2022/05/01(Sun) 11:38:30)
    2022/05/01(Sun) 11:41:37 編集(投稿者)

    No99580 (魔界の仮面弁士 さん) に返信
    > ■No99571 (yama さん) に返信
    >>繰り返しの処理を用いて作りたいです
    >>答えというよりはヒントが欲しいです。答えでもいいです
    >
    > 作成するにあたり、『何に対して繰り返しを行いたい』でしょうか?
    > そもそも繰り返しを必要とするような処理には見えなかったです。
    >
    > あえて繰り返すとすれば、選択肢として思い当たるのはこの辺り。
    >  
    > (1) 累乗演算部を、繰り返しの掛け算処理として実装する。
    > (2) 掛け算処理を、繰り返しの足し算処理として実装する。
    > (3) 画面からの入力値が、数値として適切かを繰り返し処理で判定する。
    >
    > ---
    > (1) や (2) で繰り返し処理を使う手法は、
    >  【2】の【0.5】乗は【1.4142135623731】
    > といった、小数値や負数の場合に実装が複雑になりすぎるので、
    > あまり良い処理方法ではないですね。
    > 設問が『数値を入れて』ではなく、『0 以上の整数を入れて』とか
    > 『自然数を入れて』といった内容であれば、利用できたのですけれども…。
    >
    >
    > (3) については、コンソールアプリで Console.ReadLine() の入力を
    > 数値判定するような順次処理に対しては有効です。
    >  Dim num1 As Single, num As Single
    >  Do
    >   Console.Write("数値1を入れてください:")
    >  Loop Until Single.TryParse(Console.ReadLine(), num1)
    >  Do
    >   Console.Write("数値2を入れてください:")
    >  Loop Until Single.TryParse(Console.ReadLine(), num2)
    >
    >
    > しかし、WinForms などで、TextBox の入力を
    > 数値判定するような場面には向かないですね。
    >
    > 無理矢理、(3) のパターンを Loop ステートメントで実装してみたものがこちら。
    > 普通は If 文を使うところなので、繰り返し処理になっているかと言うと微妙ですが…。
    >
    > Private Sub TextBoxes_TextChanged(sender As Object, e As EventArgs) Handles TextBox1.TextChanged, TextBox2.TextChanged
    >   Dim a, b As Double
    >   Do Until Double.TryParse(TextBox1.Text, a) AndAlso Double.TryParse(TextBox2.Text, b)
    >     TextBox3.Text = ""
    >     Return
    >   Loop
    >   TextBox3.Text = (a ^ b).ToString()
    > End Sub

    すみません。
    三つ目の【】以外は【】は整数3桁(マイナスあり)まで
    三つ目の【】は少数3桁まで 四捨五入
記事No.99571 のレス /過去ログ173より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -