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

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

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

No.11059 の関連記事表示

<< 0 >>
■11059  loopの使い方について
□投稿者/ ドラゴン -(2007/12/06(Thu) 06:58:56)

    分類:[VB.NET/VB2005] 

    http://www.dotup.org/uploda/www.dotup.org7860.zip.html
    loopを使って 2−5000までの素数をすべて TextBoxに書き込みというプログラムを作成しているのですが
    loopの使い方がいまひとつわからずうまく作動しません
    どうすればよいでしょうか?
親記事 /過去ログ24より / 関連記事表示
削除チェック/

■11061  Re[1]: loopの使い方について
□投稿者/ れい -(2007/12/06(Thu) 07:14:23)
    No11059 (ドラゴン さん) に返信
    > どうすればよいでしょうか?

    何がわからないのか、どこがわからないのか、よく考えて、
    他人に伝える必要のある部分だけのコードを抽出し、
    他人に伝わるように説明すれば
    誰か答えてくれるかもしれません。

    プロジェクトファイルをまるまる渡されても
    どこがわからないのかわかりません。
記事No.11059 のレス /過去ログ24より / 関連記事表示
削除チェック/

■11062  Re[2]: loopの使い方について
□投稿者/ ドラゴン -(2007/12/06(Thu) 07:20:13)
    No11061 (れい さん) に返信
    > ■No11059 (ドラゴン さん) に返信
    >>どうすればよいでしょうか?
    >
    > 何がわからないのか、どこがわからないのか、よく考えて、
    > 他人に伝える必要のある部分だけのコードを抽出し、
    > 他人に伝わるように説明すれば
    > 誰か答えてくれるかもしれません。
    >
    > プロジェクトファイルをまるまる渡されても
    > どこがわからないのかわかりません。

    失礼しました、
    Dim Loopnumber As Integer
    Dim IsPrime As Boolean
    Dim Uppernumber As Single
    Dim Undernumber As Single

    For Loopnumber = 2 To 5000
    For Uppernumber = 2 To Undernumber - 1
    If Undernumber Mod Loopnumber = 0 Then
    IsPrime = False
    End If
    Next
    If Undernumber Mod Loopnumber <= 1 Then
    IsPrime = True
    End If
    Next
    TextBox1.Text = IsPrime

    このコードだとボタン押しても True としか表示されず
    テキストボックスに素数が一つもでてこないので、
    どうすればよいかと、先日から悩んでいました。

    最終的には2−5000の間の素数を全て出せるようにしたいのです。
記事No.11059 のレス /過去ログ24より / 関連記事表示
削除チェック/

■11064  Re[3]: loopの使い方について
□投稿者/ れい -(2007/12/06(Thu) 07:50:43)
    2007/12/06(Thu) 07:53:41 編集(投稿者)

    No11062 (ドラゴン さん) に返信
    > このコードだとボタン押しても True としか表示されず
    > テキストボックスに素数が一つもでてこないので、
    > どうすればよいかと、先日から悩んでいました。

    IsPrimeはBooleanです。
    TextBox.Textに代入すると文字列に変換されますから
    「True」もしくは「False」となるのも当然です。

    やりたいことはだいたいわかりますが、
    あちこちに変な場所があります。

    以下のコードで動くと思います。
    比較するとよいでしょう。

    For Loopnumber = 2 To 5000
    IsPrime = True
    For Uppernumber = 2 To Loopnumber - 1
    If Loopnumber Mod Uppernumber = 0 Then IsPrime = False
    Next
    If IsPrime Then TextBox1.Text = TextBox1.Text & IsPrime
    Next
記事No.11059 のレス /過去ログ24より / 関連記事表示
削除チェック/

■11066  Re[4]: loopの使い方について
□投稿者/ ドラゴン -(2007/12/06(Thu) 07:59:38)
    No11064 (れい さん) に返信
    > 2007/12/06(Thu) 07:53:41 編集(投稿者)
    >
    > ■No11062 (ドラゴン さん) に返信
    >>このコードだとボタン押しても True としか表示されず
    >>テキストボックスに素数が一つもでてこないので、
    >>どうすればよいかと、先日から悩んでいました。
    >
    > IsPrimeはBooleanです。
    > TextBox.Textに代入すると文字列に変換されますから
    > 「True」もしくは「False」となるのも当然です。
    >>なるほど、いわれてみればそうですね。

    >
    > やりたいことはだいたいわかりますが、
    > あちこちに変な場所があります。
    >
    > 以下のコードで動くと思います。
    > 比較するとよいでしょう。
    >
    > For Loopnumber = 2 To 5000
    > IsPrime = True
    > For Uppernumber = 2 To Loopnumber - 1
    > If Loopnumber Mod Uppernumber = 0 Then IsPrime = False
    > Next
    > If IsPrime Then TextBox1.Text = TextBox1.Text & IsPrime
    > Next

    コードありがとうございます、比較してみます
記事No.11059 のレス /過去ログ24より / 関連記事表示
削除チェック/

■11063  Re[3]: loopの使い方について
□投稿者/ Jitta on the way -(2007/12/06(Thu) 07:45:00)
    No11062 (ドラゴン さん) に返信
    > ■No11061 (れい さん) に返信
    >>■No11059 (ドラゴン さん) に返信
    > >>どうすればよいでしょうか?
    >>
    >>何がわからないのか、どこがわからないのか、よく考えて、
    >>他人に伝える必要のある部分だけのコードを抽出し、
    >>他人に伝わるように説明すれば
    >>誰か答えてくれるかもしれません。
    >>
    >>プロジェクトファイルをまるまる渡されても
    >>どこがわからないのかわかりません。
    >
    > 失礼しました、
    > Dim Loopnumber As Integer
    > Dim IsPrime As Boolean
    > Dim Uppernumber As Single
    > Dim Undernumber As Single
    >
    > For Loopnumber = 2 To 5000
    ここで、IsPrime=Trueをしておくと、最後のIF文がいりません。
    また、3から始めると、Step 2とでき、ループの回数が減ります。
    > For Uppernumber = 2 To Undernumber - 1
    こちらのループはLoopnumberの平方根まででいいです。
    > If Undernumber Mod Loopnumber = 0 Then
    > IsPrime = False
    > End If
    > Next
    > If Undernumber Mod Loopnumber <= 1 Then
    > IsPrime = True
    > End If
    > Next
    > TextBox1.Text = IsPrime
    表示しなければならないのは何ですか?IsPrimeは、素数ではなく、「素数ですか?」ではないですか?
    >
    > このコードだとボタン押しても True としか表示されず
    > テキストボックスに素数が一つもでてこないので、
    > どうすればよいかと、先日から悩んでいました。
    >
    > 最終的には2−5000の間の素数を全て出せるようにしたいのです。
    >
記事No.11059 のレス /過去ログ24より / 関連記事表示
削除チェック/

■11065  Re[4]: loopの使い方について
□投稿者/ ドラゴン -(2007/12/06(Thu) 07:55:44)
    2007/12/06(Thu) 07:57:35 編集(投稿者)

    >> Dim Loopnumber As Integer
    >> Dim IsPrime As Boolean
    >> Dim Uppernumber As Single
    >> Dim Undernumber As Single
    >>
    >> For Loopnumber = 2 To 5000
    > ここで、IsPrime=Trueをしておくと、最後のIF文がいりません。
    > また、3から始めると、Step 2とでき、ループの回数が減ります。
    >> For Uppernumber = 2 To Undernumber - 1
    > こちらのループはLoopnumberの平方根まででいいです。 
    >> If Undernumber Mod Loopnumber = 0 Then
    >> IsPrime = False
    >> End If
    >> Next
    >> If Undernumber Mod Loopnumber <= 1 Then
    >> IsPrime = True
    >> End If
    >> Next
    >> TextBox1.Text = IsPrime
    > 表示しなければならないのは何ですか?IsPrimeは、素数ではなく、「素数ですか?」ではないですか?
    表示したいのは IsPrime判定でTrueになった数字を次々とテキストボックスに乗せたいのです。
記事No.11059 のレス /過去ログ24より / 関連記事表示
削除チェック/

■11067  Re[5]: loopの使い方について
□投稿者/ ドラゴン -(2007/12/06(Thu) 09:11:33)
    どうしても Trueが乱立してしまいますが
    ここから先は自分でやってみたいと思います

    れい様、 Jitta on the way様
    ご協力と助言ありがとうございました
記事No.11059 のレス / END /過去ログ24より / 関連記事表示
削除チェック/

■11068  Re[6]: loopの使い方について
□投稿者/ れい -(2007/12/06(Thu) 09:16:45)
    No11067 (ドラゴン さん) に返信
    > どうしても Trueが乱立してしまいますが
    > ここから先は自分でやってみたいと思います

    あー
    私のコード、間違ってますね。

    TrueTrueTrue…

    になっちゃうと思います。

    まぁちょうどいいのかな。
    間違いはたぶん一箇所。
    がんばりましょう。
記事No.11059 のレス / END /過去ログ24より / 関連記事表示
削除チェック/

■11120  Re[7]: loopの使い方について
□投稿者/ ドラゴン -(2007/12/07(Fri) 10:51:44)
    For Loopnumber = 2 To 5000
    IsPrime = True
    For Uppernumber = 2 To Loopnumber - 1
    If Loopnumber Mod Uppernumber = 0 Then IsPrime = False
    Next
    If IsPrime Then TextBox1.Text = TextBox1.Text & " " & Loopnumber
    Next

    に書き換えたらできましたw‘
記事No.11059 のレス /過去ログ24より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -