こんにちは私は以下のコードをC言語で書いています。私は、数値を入力する人が法を使って素数であるかどうかをチェックするために入力を取り入れようとしています。 しかし、最初のif文でエラーが発生しています。 エラーは浮動小数点例外(コアダンプ)です これはなぜですか?値を0と比較することはできませんか?以下は素数を見つける方法
#include <stdio.h>
int main()
{
int i = 0, j = 0, count = 0, value = 0, stop = 0;
scanf("%d", &j);
stop = j;
for(i = 0; i < stop; ++i)
{
value = j % i;
if(value == 0)
{
++count;
}
}
if(count>1)
{
printf("YES");
}
else
printf("NO");
return 0;
}
実際に私の質問ですが、私は出力を得ることができますが、私のコンパイルが正しく動作するために取得することはできませんよ。 入力
t - t個のテストケースが続きます。所定数はNO」素数であり、場合N [2 < = N < = 2^63-1] 出力
各テストケース出力列 "YES" の場合: [< = 500 T]各行は、1つの整数を含んでいます" さもないと。剰余演算子ので
for(i = 0; i < stop; ++i)
:あなたはi
= 0で始まるので
value = j % i;
これは、次のとおりです。私は賭け
#include <stdio.h>
int main()
{
int i = 0, j = 0, count = 0, value = 0, stop = 0, store[]={0}, s = 0;
scanf("%d", &j);
stop = j;
for(i = 1; i < stop; ++i)
{
value = j % i;
if(value == 0)
{
store[s]=value;
++count;
++s;
}
}
if(count>=2 || j==1)
{
printf("NO");
}
else
printf("YES");
return 0;
}
0で割っています。あなたはそれをすることはできません。 「i」を1にしてみてください。 –
5を0で割った値は? –