33,311
社区成员
发帖
与我相关
我的任务
分享
#include<iostream>
#include<string>
#include<vector>
#include <algorithm>
#include<cmath>
using namespace std;
inline void keep_window_open(){ char ch; cin >> ch; }
int main()
{
vector<double>numbers;
double number;
while (cin>>number)
{
numbers.push_back(number);
sort(numbers.begin(), numbers.end());
if (numbers.size()%2==0)
{
cout << "The median of the numbers is " << (numbers[numbers.size() / 2] + numbers[numbers.size() / 2 + 1]) / 2 << "."<<endl;
}
if (numbers.size()%2==1)
{
cout << "The median of the numbers is " << numbers[numbers.size() / 2+1] << "." << endl;
}
}
}
#include<iostream>
#include<string>
#include<vector>
#include <algorithm>
#include<cmath>
using namespace std;
inline void keep_window_open(){ char ch; cin >> ch; }
int main()
{
vector<double>numbers;
double number;
while (1)
{
for(int i=0;i<3;i++)
{
cin>>number;
numbers.push_back(number);
} //这样输入不好么? for中的i<3 是最小的了 如果为2 下面你写的代码就越界了 再说了 你后面的代码也有问题
sort(numbers.begin(), numbers.end());
if (numbers.size()%2==0)
{
cout << "The median of the numbers is " << (numbers[numbers.size() / 2] + numbers[numbers.size() / 2 + 1]) / 2 << "."<<endl;
}
if (numbers.size()%2==1)
{
cout << "The median of the numbers is " << numbers[numbers.size() / 2+1] << "." << endl;
}
}
}