Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <vector>
- using namespace std;
- long N[3] = { 10000, 100000, 1000000 }; //кол во номеров
- int r[3] = { 2, 4, 16 }; // max значения
- vector<int> getNumbers(int indexOfN, int indexOfR); //вектор для получения всех чисел по индексам
- long getRandomNumber(int min, int max); //получить случайное число в диапазоне
- long getAverage(vector<int> numbers); // получить среднее значение чисел
- double getDeviation(long average, vector<int> numbers); // получить среднеквадратичное отклонение
- int main() {
- for (int indexOfN = 0; indexOfN < 3; indexOfN++) {
- for (int indexOfR = 0; indexOfR < 3; indexOfR++) {
- vector<int> numbers = getNumbers(indexOfN, indexOfR); // все числа в текущих N и r
- long average = getAverage(numbers);
- double deviation = getDeviation(average, numbers);
- cout << "N = " << N[indexOfN] << " and " << "r = " << r[indexOfR] << ":\n";
- cout << "Average: " << average << "\n";
- cout << "Deviation: " << deviation << "\n\n";
- }
- }
- system("pause");
- return 0;
- }
- vector<int> getNumbers(int indexOfN, int indexOfR)
- {
- vector<int> numbers;
- for (int i = 0; i < N[indexOfN]; i++)
- {
- numbers.push_back(getRandomNumber(1, r[indexOfR] - 1));
- }
- system("pause");
- return numbers;
- }
- long getRandomNumber(int min, int max)
- {
- return min + int((rand() / (double)(RAND_MAX + 1) * (max - min + 1)));
- }
- long getAverage(vector<int> numbers) {
- long average = 0;
- for (unsigned int i = 0; i < numbers.size(); i++) {
- average += numbers[i];
- }
- average /= numbers.size();
- return average;
- }
- double getDeviation(long average, vector<int> numbers) {
- double deviation = 0;
- for (unsigned int i = 0; i < numbers.size(); i++) {
- deviation += pow(numbers[i] - average, 2);
- }
- deviation = sqrt(deviation / numbers.size());
- system("pause");
- return deviation;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement