0
でバイナリ「演算子の%」から「intが」ほんの数週間前にC++でプログラミングを開始し、私はこの問題が発生しました:エラー:無効な種類の「フロート」のオペランドとC++
float a,i,b,c,d,e,f;
cin>>a;
cin>>c;
if(c%2==0)
{
d=c;
e=1;
}
else
{
d=0;
e=0;
}
for (i=2;i<=a;i++)
{
cin>>b;
if(b%2==0)
{
d=d+b;
e=e+1;
}
}
f=d/e;
if(e==0)
cout<<"0";
else
cout<<fixed<<setprecision(2)<<f;
理想的には、プログラムを算術平均を表す数 "f"を画面に表示する必要があります。
モジュロ演算子 '%'は、整数オペランドに対してのみ定義されています。これは、C、C++、およびAFAIK Javaに適用されます。他のいくつかのプログラミング言語では、左側のオペランドは10進数でも可能です。 2.532%2の場合、0.532が得られる。基本的な問題は、右側のオペランドが整数でない場合です。 –
エラーメッセージには、浮動小数点型では '%'演算子を使用できないことが示されています。 –