• Написать программу в с++, определяющую, какое число чаще других встречается в последовательности целых случайных чисел. Для генерации чисел использовать линейный конгруэнтный метод.

Ответы 1

  • #include <iostream>using namespace std;const int n = 15;double congruential(int &x) // функция генерации псевдослучайных чисел{ const int m = 100, // генерация псевдослучайных чисел в диапазонезначений от 0 до 100 (выбирается случайно m > 0)           a = 8, // множитель (выбирается случайно 0 <= a <= m)         inc = 65; // инкрементирующее значение (выбирается случайно 0<= inc <= m) x = ((a * x) + inc) % m; // формула линейного конгруэнтного методагенерации псевдослучайных чисел  return (x / double(m));}int main() {    double arr[n];    double num, frq, max_frq;    int x0 = 20;    for (int i=0; i<n; i++) {        arr[i] = congruential(x0);        cout << arr[i] << " ";    }    num = arr[0];    max_frq = 1;    for (int i=0; i < n-1; i++) {        frq = 1;        for (int k = i+1; k<n; k++)             if (arr[i] == arr[k])               frq += 1;        if (frq > max_frq) {            max_frq = frq;            num = arr[i];        }    }    cout << endl;    if (max_frq > 1)         cout << max_frq << " : " << num << endl;else        cout << "All uniqum" << endl;    return 0;}
    • Автор:

      belleewca
    • 5 лет назад
    • 0
  • Добавить свой ответ

Еще вопросы

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years