khuseiN

Untitled

Mar 1st, 2023
140
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.45 KB | None | 0 0
  1. #include <iostream>
  2. #include <cstdlib>
  3. #include <ctime>
  4. using namespace std;
  5.  
  6. const int MAX_VARIANTS = 14; // количество вариантов решения
  7. const int MAX_STATES = 10; // количество возможных состояний
  8.  
  9. // Функция для генерации случайных чисел в диапазоне от 1 до 100
  10. int randRange() {
  11. return rand() % 100 + 1;
  12. }
  13.  
  14. // Функция для генерации случайных вероятностей
  15. float randProbability() {
  16. float prob = (float)randRange() / 100;
  17. return prob;
  18. }
  19.  
  20. // Функция для выбора оптимального решения с помощью критерия Гурвица
  21. int gurwitzCriterion(float c, float e[MAX_VARIANTS][MAX_STATES]) {
  22. int bestVariant = 0;
  23. float bestResult = 0;
  24. for (int i = 0; i < MAX_VARIANTS; i++) {
  25. float maxE = 0;
  26. float minE = 1;
  27. for (int j = 0; j < MAX_STATES; j++) {
  28. if (e[i][j] > maxE) {
  29. maxE = e[i][j];
  30. }
  31. if (e[i][j] < minE) {
  32. minE = e[i][j];
  33. }
  34. }
  35. float result = c * maxE + (1 - c) * minE;
  36. if (result > bestResult) {
  37. bestResult = result;
  38. bestVariant = i;
  39. }
  40. }
  41. return bestVariant;
  42. }
  43.  
  44. // Функция для выбора оптимального решения с помощью опт
  45.  
Advertisement
Add Comment
Please, Sign In to add comment