Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
AvengerAlive
5 / 5 / 0
Регистрация: 30.07.2011
Сообщений: 257
#1

Вычислить вероятность того, что массив получен в результате произвольного тасования набора - C++

19.08.2011, 15:13. Просмотров 346. Ответов 0
Метки нет (Все метки)

Вот задачка с сайта и код:
http://mi.unicyb.kiev.ua/uploads/Doc...domShuffle.htm

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#include <iostream>
#include <iomanip>
#include <cstdio>
#include <vector>
#include <cmath>
using namespace std;
 
int m[10], cur[10];
int n, s = 0;
 
double probability(vector<int> outputArray) ;
void shuffle(int pos);
void shuffle(int pos)
{
 int i, c;
 if (pos == n)
  {
   for(i = 0; i < n; i++)
   if (m[i] != cur[i]) return;
   s++;
   return;
  }
 for(c = i = 0; i < n; i++)
 if (m[i] != cur[i]) c++;
 if (c > 2 * (n - pos)) return;
 for(i = 0; i < n; i++)
  {
   swap(cur[i],cur[pos]);
   shuffle(pos + 1);
   swap(cur[i],cur[pos]);
  }
}
 
class RandomShuffle
{
 public:
 double probability(vector<int> outputArray) 
  {
   n = outputArray.size();
   for(int i = 0; i < n; i++) m[i] = outputArray[i],cur[i] = i + 1;
   shuffle(0);
   return 1.0 * s / pow((double)n,(double)n);
  }
};
Как вводить данные? Какая должна быть функция main() я чего то не могу разобраться.

Добавлено через 29 минут
Уже сделал, вопрос исчерпан.

 Комментарий модератора 
Больше так сообщения не выделяем.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.08.2011, 15:13     Вычислить вероятность того, что массив получен в результате произвольного тасования набора
Посмотрите здесь:

C++ Что выведется на экран в результате выполнения фрагмента кода?
dynamic_cast<X&>(Y) что в результате? C++
C++ В классе 12 мальчиков и 13 девочек. Найдите вероятность того, что 2 сентября будут дежурить мальчик и девочка
Определить, что будет выдано на терминал в результате выполнения программы C++
Что будет выведено на экран в результате выполнения приведенного фрагмента кода? C++
C++ Нахождение среднего геометрического произвольного набора вещественных чисел. Найти ошибку
Что будет в переменных в результате выполнения кода? C++
C++ Какой результат будет получен в результате выполнения этого кода?
C++ Найти вероятность того, что из R ровно S изделий будут дефектными
C++ Определить вероятность того, что случайная величина попадет в диапазон
C++ Что будет вызвано в результате вызова f()?
Записать в массив истинность того, что элементы k–й строки матрицы упорядочены по убыванию C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 14:12. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru