Перевести алгоритм с с++ - C#

  1. помогите перевести алгоритм с с++ на c# 2 дня пытался перевести его и ничего не получалось вот код на с++ (решение задач методом хука дживса)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 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 #include <iostream> #include <vector> #include <cmath> using namespace std;   double objectiveFunction(vector < vector<double> > &data, int n, int m); void research(vector < vector<double> > &data, double step, int n);   void main() {     setlocale(LC_ALL,"Russian");       int n;       cout << "Введите количество координат: ";     cin >> n;     n++;    // One cell for value of function       vector< vector< double > > data(3, n);       int i,j;     cout << "Введите координаты точки: ";     for(j=0; j<n-1; j++) {         cin >> data[0][j];         data[1][j]=data[0][j];     }       double step;     cout << "Введите шаг: ";     cin >> step;       double contraction;     cout << "Введите коэффициент уменьшение шага: ";     cin >> contraction;       double expansion;     cout << "Введите коэффициент растяжения: ";     cin >> expansion;       double precision;     cout << "Введите точность: ";     cin >> precision;       for(i=0; step > precision; i++) {         research(data, step, n);         if(data[0][n-1] <= data[1][n-1]) step=step * contraction;         else {             while(true) {                 for(j=0; j<n; j++) {                     data[2][j]=data[1][j];                     data[0][j]=data[0][j] + expansion * (data[1][j] - data[0][j]);                 }                   research(data, step, n);                 if(data[2][n-1] <= data[1][n-1]) {                     for(j=0; j<n-1; j++) {                         data[0][j]=data[2][j];                     }                     break;                 }             }         }     }       cout << "\nРешение\nКоличество итераций: " << i << endl;     for(j=0; j<n-1; j++) {         cout << "\nКоордината " << j << ": "  << data[0][j];     }     cout << "\nЗначение функции: " << data[0][n-1] << endl; }   void research(vector < vector<double> > &data, double step, int n) {     int j;     double newValue;       data[0][n-1]=objectiveFunction(data, n, 0);     for(j=0; j<n; j++) {         data[1][j]=data[0][j];     }       for(j=0; j<n-1; j++) {         data[1][j]=data[0][j]+step;         newValue=objectiveFunction(data, n, 1);           if(newValue < data[1][n-1]) data[1][n-1]=newValue;         else {             data[1][j]=data[0][j]-step;             newValue=objectiveFunction(data, n, 1);               if(newValue < data[1][n-1]) data[1][n-1]=newValue;             else data[1][j]=data[0][j];         }     } }   double objectiveFunction(vector < vector<double> > &data, int n, int m) {     double result=0;     for(int j=0; j<n-1; j++) {         result=result + cos(data[m][j]);     }     return result; }не важно консольное приложение или windows form


textual

Код:

TEMPLATE = app
TARGET = hj
DEPENDPATH += .
INCLUDEPATH += .
 
HEADERS += \
    hooke_and_jeeves.hpp
SOURCES += main.cpp


Похожие ответы
  1. Как реализовать шифрование(алгоритм - трафарет Ришелье)?

  1. Здравствуйте, дорогие форумчане. Пишу реализацию сего алгоритма,столкнулся с типичной при самообучении проблемой. Долго пытался реализовать граф, и вот вроде получилось, нашел подходящее решение с помощью двух классов Vertex(для вершин) и Edge(для рёбер). Проблема в том, что я не знаю как с помощью данной реализации графа построить сам алгоритм, или мне нужно переделать всё? Если сможете объяснить без примеров кода какие инструменты языка мне использовать или что мне исправить, буду крайне благодарен, так как хочу сам добить этот алгоритм.

  1. Добрый день. Пытаюсь реализовать алгоритм шифрования "Кузнечик" на C#, однако у меня возникли трудности с его нелинейным преобразованием (преобразованием L). Зашифрованный текст не расшифровывается обратно. Код функций шифрования и расшифрования приведен ниже:

  1. Доброго времени суток. Помогите,пожалуйста, написать программу поиска подстроки в строке, используя алгоритм КМП. Тип данных ushort

  1. Приветствую. Есть такая строка - "[ "70", "70", "48", "48", "70", "70" ]" Как её перевести в массив байт? 1. Допустим, что первый шаг это через рег. выражения преобразовать в строку такого вида - "70 70 48 48 70 70". Хотя для меня это тоже вопрос. 2. А дальше не представляю что делать. Позадавал по разному запросы поисковику, больше не представляю какие слова туда вставлять.

  1. Отсортировать массив содержащий положительные целые числа не превышающих 100000 за O(N)O(N)O(N).

  1. Здравствуйте. У меня стоит задача создать приложение, демонстрирующее работу генетического алгоритма. Суть, вроде, уловил. Но возникли сложности при реализации отбора особей. Я пытался использовать несколько двумерных массивов(один массив - особи первого/предыдущего поколения, другой - новое), но выходило слишком громоздко, непонятно. Попросил помочь преподавателя. Он сказал, что нужно использовать принцип ООП, в частности, классы и объекты(каждый объект - это отдельный вид). Нашел в сети программу по теме, но там использовались классы от классов, интерфейсы и собственные пространства, в чем я пока не силен. Мне нужно что-то похожее на решение данной задачи, и наставления и советы как правильно стоит использовать объекты, классы. Очень уж долго сам старался разобраться. Кратко о функционале: пользователь может выбирать один из двух способов скрещивания и селекции, указывать размер популяции, диапазоны значений, проценты мутаций и скрещивания. P. S. Также преподаватель сказал, что с классами и объектами работать проще, чем с абстрактными числами. Мне несколько непонятен смысл данного высказывания.

  1. можете, пожалуйста, показать самый простой пример программы реализации алгоритма RSA... не нашла на форуме простых примеров...

  1. Здравствуйте. Мне нужно написать программу в C# на тему "Исследование алгоритмов сортировки методом прямого включения и методом "Шелла". Помоги, пожалуйста, написать...нужна программа и сравнительный анализ этих двух методов.

  1. Всем привет. Попытался реализовать алгоритм Мамдани, но результат алгоритма с ответом в учебнике не сошелся. Возможно кто-нибудь может проверить корректность реализации. И не ругайтесь на ужасный код самого проекта так,как восстановил древние исходники, хочу просто узнать корректность алгоритма. Вот исходник