-1
struct score
{
int math;
int science;
int english;
int history;
int mapeh;
int tle;
int filipino;
};
struct info
{
string firstName;
string lastName;
score grades;
float average;
int studentnum;
int rank;
bool remark;
};
が格納されていない私のコードは、被験者に格納された値があるフロート変数は、ここでは浮動値
です:
それぞれ85 87 89 90 94 92 95
、
vector<info> stud;
for(int i=0; i<stud.size(); i++)
{
stud[i].average= (stud[i].grades.math
+stud[i].grades.science
+stud[i].grades.english
+stud[i].grades.history
+stud[i].grades.mapeh
+stud[i].grades.tle
+stud[i].grades.filipino)/7;
}
値スタッド[i] .averageに格納されている値は90.28でなければならず、代わりに90になります。
何が欠けていますか?私は、デバッガを使用してみましたが、それはそれだけで私に90.00が表示されます私の90(なし小数)
てSetPrecisionを使用してを示していない私はまた、被験者がフロートするためのデータ型を変更しようとしている、そしてそれはdidntの90.28
作業。
ありがとうございました。
整数を整数で割った値は整数になります。あなたがしているのは、整数を合計してから7で割ることです。これは整数 - 結果 - 整数です。 – PaulMcKenzie
あなたの成績オブジェクトはすべて整数です。これらの整数の合計を、整数を与える別の整数で割ります。 '7'を' 7.0'に変更してみてください。 – Jvinniec
を7.0で割ると、私は –