0

これが問題です: 整数は、それが 1 より大きく、1 とそれ自体でしか割り切れない場合、素数であると言われます。たとえば、2、3、5、7 は素数ですが、4、6、8、9 はそうではありません。

a) ある数が素数かどうかを判断する関数を書きなさい。b) 1 から 10000 までのすべての素数を判別して出力するスクリプトでこの関数を使用します。

すべての素数を見つけたことを確認する前に、これらの 10000 個の数のうち何個を実際にテストする必要がありますか? 結果を に表示します<textrarea>

これは私のコードです:

    function isPrime(n)
    {
        boolean prime=true;
            if(n==1 || n==0)
            {

                prime= false;
            }

            if(n==2)
            {
                prime= true;
            }
            else
            {
                for(int i=2;i<n;i++)
                {
                    if(n%i==0)
                    {
                        prime= false;
                    }
                }
            }
            return prime;
    }
    function printPrimes()
    {
        document.writeln("<textarea rows="10" cols="15">");
        for(var i=0; i<=1000; i++)
        {
            if(isPrime(i)==true)
            {
                document.writeln("<p>" + i + "</p>");
            }
        }
        document.writeln("</textarea>");
    }
    printPrimes();

これは私のhtmlです:

<!DOCTYPE html>
<html>
    <head>
        <script src="prime.js" type="text/javascript"> </script>
    </head>
    <body>
        <h1> Prime numbers between 1 and 1000 are: </h1>
    </body>

クロムでhtmlファイルを開くと、ヘッダーのみが表示され、スクリプトが実行されていないようです!

4

2 に答える 2

0

スクリプトを にインポートしている<head>ので、そこに出力されます。に移動してみてください<body>

これはおそらく、素数を見つける最も遅い方法です。

編集— 別の問題はこれです:

            for(int i=2;i<n;i++)

intJavaScript にはキーワードはありません- それはvar. これにより、構文エラーが発生し、エラー コンソールに表示されます。booleanまた、キーワード (「prime」の宣言)もありません。HTML/JavaScript の開発中は、エラー コンソールを開いたままにしておくことが重要です。

于 2013-03-18T15:41:16.110 に答える
0

<textarea>これは、<head>要素に を書き込もうとしているためです。内でスクリプトをロード/実行してみてください<body>

于 2013-03-18T15:41:26.857 に答える