#include <stdio.h>
#include <math.h>
typedef struct{
int id;
int height;
int weight;
}Body;
int main()
{
int n=5;
Body data[5]={
{1, 165, 60},
{2, 170, 68},
{3, 160, 50},
{4, 180, 75},
{5, 175, 80}
};
for(int i=0; i<=n-1;i++){
for(int j=0; j<n-1; j++){
if(data[j].height > data[j+1].height){
Body temp =data[j];
data[j]=data[j+1];
data[j+1]=temp;
}
}
}
for (int i = 0; i < n; i++) {
printf("ID: %d, Height: %d, Weight: %d\n", data
[i
].
id, data
[i
].
height, data
[i
].
weight); }
double sum = 0.0;
for (int i = n - 3; i < n; i++) {
//n-3からnまでの3つの数を3で割る
sum += data[i].height;
}
double ave = sum / 3.0;
double variance = 0.0;
for (int i = n - 3; i < n; i++) {
variance
+= pow(data
[i
].
height - ave
, 2); //偏差を出してpowはその差を2乗する
}
double std
= sqrt(variance
/ 3.0); // 分散を数で割ったものが標準偏差
printf("\n平均身長: %.1f cm\n", ave
); printf("標準偏差: %.1f cm\n", std
);
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxtYXRoLmg+CnR5cGVkZWYgc3RydWN0ewoJaW50IGlkOwoJaW50IGhlaWdodDsKCWludCB3ZWlnaHQ7Cn1Cb2R5OwoKaW50IG1haW4oKQp7CglpbnQgbj01OwoJCiAgQm9keSBkYXRhWzVdPXsKICAJezEsIDE2NSwgNjB9LAogIAl7MiwgMTcwLCA2OH0sCiAgCXszLCAxNjAsIDUwfSwKICAJezQsIDE4MCwgNzV9LAogIAl7NSwgMTc1LCA4MH0KfTsKCmZvcihpbnQgaT0wOyBpPD1uLTE7aSsrKXsKCWZvcihpbnQgaj0wOyBqPG4tMTsgaisrKXsKCQlpZihkYXRhW2pdLmhlaWdodCA+IGRhdGFbaisxXS5oZWlnaHQpewoJCQlCb2R5IHRlbXAgPWRhdGFbal07CgkJCWRhdGFbal09ZGF0YVtqKzFdOwoJCQlkYXRhW2orMV09dGVtcDsKCQl9Cgl9Cn0KCiAgICBwcmludGYoIui6q+mVt+OBruS9juOBhOmghiA6XG4iKTsKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbjsgaSsrKSB7CiAgICAgICAgcHJpbnRmKCJJRDogJWQsIEhlaWdodDogJWQsIFdlaWdodDogJWRcbiIsIGRhdGFbaV0uaWQsIGRhdGFbaV0uaGVpZ2h0LCBkYXRhW2ldLndlaWdodCk7CiAgICB9CmRvdWJsZSBzdW0gPSAwLjA7CiAgICBmb3IgKGludCBpID0gbiAtIDM7IGkgPCBuOyBpKyspIHsKICAgIAkvL24tM+OBi+OCiW7jgb7jgafjga4z44Gk44Gu5pWw44KSM+OBp+WJsuOCiwogICAgICAgIHN1bSArPSBkYXRhW2ldLmhlaWdodDsKICAgIH0KICAgIGRvdWJsZSBhdmUgPSBzdW0gLyAzLjA7CgogICAgZG91YmxlIHZhcmlhbmNlID0gMC4wOwogICAgZm9yIChpbnQgaSA9IG4gLSAzOyBpIDwgbjsgaSsrKSB7CiAgICAgICAgdmFyaWFuY2UgKz0gcG93KGRhdGFbaV0uaGVpZ2h0IC0gYXZlLCAyKTsKICAgICAgICAvL+WBj+W3ruOCkuWHuuOBl+OBpnBvd+OBr+OBneOBruW3ruOCkjLkuZfjgZnjgosKICAgIH0KICAgIGRvdWJsZSBzdGQgPSBzcXJ0KHZhcmlhbmNlIC8gMy4wKTsKIC8vIOWIhuaVo+OCkuaVsOOBp+WJsuOBo+OBn+OCguOBruOBjOaomea6luWBj+W3rgogICAgcHJpbnRmKCJcbuW5s+Wdh+i6q+mVtzogJS4xZiBjbVxuIiwgYXZlKTsKICAgIHByaW50Zigi5qiZ5rqW5YGP5beuOiAlLjFmIGNtXG4iLCBzdGQpOwoJCiByZXR1cm4gMDsKfQo=
身長の低い順 :
ID: 3, Height: 160, Weight: 50
ID: 1, Height: 165, Weight: 60
ID: 2, Height: 170, Weight: 68
ID: 5, Height: 175, Weight: 80
ID: 4, Height: 180, Weight: 75
平均身長: 175.0 cm
標準偏差: 4.1 cm