これが私の課題です。素数とは、1 とそれ自体でのみ割り切れる 1 より大きい数です。この割り当てでは、2 から n (n はユーザーが指定した数) までのどの数が素数であるかがわかります。
ユーザーに 2 より大きい数値 n を尋ねます。2 より大きい数値が提供されるまで、数値を尋ね続けます。ユーザーが数字のみを入力すると仮定します (つまり、ユーザーがテキストを入力するかどうかを確認する必要はありません)。
ループを使用して、2 から n までの変数 i を反復処理します。反復ごとに、2 から i までのすべての数値をチェックして、その数値が素数かどうかを判断します。素数の場合は、i と「Prime」という単語を出力します。
モジュラス演算子 % を使用して、数値が素数かどうかを判断します
これが私がこれまでに持っているものです。うまくいきません。そして、私はその理由を知りません。助けてください、基本的なプログラミングを選択科目として取っているビジネス学生です。
#include <iostream>
using namespace std;
int main()
{
int n;
int i;
int x;
while (n<=2)
{
cout << "Enter a number greater then 2: \n";
cin >> n;
for (x=n; x>=2; x--)
{
bool prime = false;
for (i=2; i<x; i++)
{
if (x%i==0)
{
prime = true;
}
}
if (prime==false)
{
cout << x << " Prime.\n";
}
}
}
return 0;
}