Итак, нас попросили получить режим (ы) для вектора, который будет заполнять пользователь, это вектор двойных чисел, так что пока он работает для получения 1 режима, но когда дело доходит до большего чем 1 режим я заморозить, кто-нибудь получил какие-либо предложения? (кстати я новичок с кодированием, так что не жарят)
void getMode(vector<double> v)
{
double element = 0;
int freq = 0;
for (int it = 0; it != v.size(); it++)
{
double tempElement = v[it];
int tempFreq = 0;
for (int i = 0; i < v.size(); i++)
if (v[i] == tempElement)
tempFreq++;
if (tempFreq > freq)
{
element = tempElement;
freq = tempFreq;
}
}
if(freq > 1 )
{
cout << "\nfreq: " << freq <<"\nElement: " << element;
}
else
{
cout << "\nno mode ";
}
}
так скажем, пользователь вводит 1,1,3,3,4,5
мой режим будет только цифрой 1 вместо 1 и 3, он в основном берет первый найденный режим и печатает его вместо печати обоих режимов, которые я получил.