Switch to English?
Yes
Переключитись на українську?
Так
Переключиться на русскую?
Да
Przełączyć się na polską?
Tak
Разместите свой проект бесплатно и начните получать предложения от фрилансеров-исполнителей уже спустя минуты после публикации!

Исправить программу С++ сделанную по алгоритму программы Python


Приложения 1

Просмотр приложений доступен только зарегистрированным пользователям.
    1 ставка скрыта
  • Профиль удален
    3 ноября 2020, 19:21 |
    алгоритм программы был реализован в C++
    Исходный текст см. в приложении.

    Приложение с кодом на C++ отсутствует...

  • Виктор Гриценко
    3 ноября 2020, 19:39 |

    freelancehunt не пропускает такие файлы

    скачайте отсюда:

    https://drive.google.com/file/d/1T3P5HR30WYlALVWh_9VShsnJFDiZGDll/view?usp=sharing


  • Профиль удален
    3 ноября 2020, 19:45 |
    Исходный текст программы Python был взят со страницы:
    http://www.righto.com/2014/02/bitcoin-mining-hard-way-algorithms.html

    Имеется в виду исходник программы на C++, которая была переписана с Python 🙂

  • Виктор Гриценко
    3 ноября 2020, 19:54 |

    у вас не получается скачать с этого линка:

    https://drive.google.com/file/d/1T3P5HR30WYlALVWh_9VShsnJFDiZGDll/view?usp=sharing 

    ?


  • Профиль удален
    4 ноября 2020, 2:16 |

    Кажется, вы не тот код даёте ( этот код рисует графики, текст и числа)

  • Профиль удален
    3 ноября 2020, 21:44 |

    Как я понял.
    1. Вы взяли отсюда код на питоне.
    2. Внесли в него какие-то правки ( которые не должны были затронуть вычислительные алгоритмы). 

    3. Проверили -> результаты не совпадают


    ТЗ - найти ошибку или переделать всю работу с нули ( лишь бы заработало ) ?

  • Виктор Гриценко
    3 ноября 2020, 22:02 |

    Не уверен, что вы поняли правильно.

    Если кратко, то правильно будет так:

    1. взяли код на питоне.
    2. Внесли в него правки, которые точно не затронули вычислительные алгоритмы, т.к. после внесения изменений результат не изменился.

    3. По алгоритму программы на питоне написали программу на С++

    4. Проверили:  результаты программы на питоне не совпадают с результатами 

    программы на С++

    Вы хотите с нуля написать аналогичную программу на С++  ?

    И сколько вы хотите за такую работу ?

     

  • Профиль удален
    4 ноября 2020, 0:53 |

    Сейчас рассматриваю полностью переписать всё.
    Можно узнать, что вы добавляли там ?

  • Профиль удален
    3 ноября 2020, 22:03 |

    На сколько я понял, вы там на выводите графики ещё ? ( как видно из других заданий, на OpenGL ) ?

  • Виктор Гриценко
    3 ноября 2020, 22:47 |

    Эти проекты никак не связаны.

  • Профиль удален
    4 ноября 2020, 0:54 |

    Смотрю сейчас алгоритм.. А что вы добавляли там ?

  • Виктор Гриценко
    4 ноября 2020, 9:15 |

    Разбил двухкратное обращение к SHA256:

    hash = hashlib.sha256(hashlib.sha256(header).digest()).digest()


    на  два  отдельных однократных:

        #print header.encode('hex')

        hash = (hashlib.sha256(header).digest())

        #print nonce, hash[::-1].encode('hex')


        temp = hash

        hash = (hashlib.sha256(temp).digest())

        #print nonce, hash[::-1].encode('hex')

  • Виктор Гриценко
    4 ноября 2020, 9:16 |

    еще добавил вывод на печать значений промежуточных переменных

  • Профиль удален
    4 ноября 2020, 2:17 |

    https://freelancehunt.com/project/ispravit-programmu-splusplus-sdelannuyu-po-algoritmu/777067.html#tab-discuss-980517

    То что вы дали ссылку - она на код, который рисует графики , текст и цифры 

  • Профиль удален
    4 ноября 2020, 9:54 |

    Мельком взглянул, у вас в коде на С - версия выбрана первая :

    header.version = 1;


    Но это всё равно не исправляет ничего.


  • Виктор Гриценко
    4 ноября 2020, 11:14 |

    Посмотрите мои соображения по результатам:

    https://drive.google.com/file/d/1Z3SQm6TtXvCc4eDGzIfPu_rRpXGap3PN/view?usp=sharing


  • Профиль удален
    4 ноября 2020, 13:04 |

    Ваша ошибка в том, что вы вставляете на вход ( на гитхабе) строку и преобразуете хэшируете её

    Посмотрите внимательно, там есть тип входного параметра. Поменяйте его на HEX и всё будет прекрасно)))

  • Виктор Гриценко
    4 ноября 2020, 13:12 |

    Посмотрите что я писал перед этим:

    Попробуем на сайте:

    https://emn178.github.io/online-tools/sha256.html

    проверить результат SHA256 подавая на вход первый header, т.е. такой HEX-код:

    Т.е. конечно вход на сайте был настроен на HEX

    А какой прекраcный результат получился у вас  ?







  • Профиль удален
    4 ноября 2020, 13:14 |

    в том то и дело, что у меня всё получилось.
    Что в программе на С, что через сайт

  • Виктор Гриценко
    4 ноября 2020, 13:27 |

    Да,

    я не обратил внимание на то, что код результата получается с переставленными байтами.

    Задача в том, чтобы сделать программу С++,

    в которой видны все этапы обработки, т.е. алгоритм всех

    действий над кодом header,

    а также как формируется новый аргумент и все этапы его обработки. 



  • Виктор Гриценко
    4 ноября 2020, 13:32 |

    Программа на C++ выдает:

    acd4dddf2e98f9633bc650c3616761fd4540d0bc4051df6f7edf3275a07237d5

    а программа на сайте выдает:

    d53772a07532df7e6fdf5140bcd04045fd616761c350c63b63f9982edfddd4ac

    Почему в C++ результат получается с переставленными байтами ?


  • Профиль удален
    4 ноября 2020, 13:34 |

    Потому что результат по алгоритму ещё переворачивается
    КОД:  [::-1]

  • Виктор Гриценко
    4 ноября 2020, 13:58 |

    да,  в С++ сделали как и в оригинале на питоне.

    Но на питоне результат другой.

  • Профиль удален
    4 ноября 2020, 13:33 |

    Я его гибридно написал, часть работает на чистом С,  вторая часть - на qt (c++)

  • Виктор Гриценко
    4 ноября 2020, 14:00 |

    Вы написали свою программу на С или отредактировали ту, что я дал ?

  • Виктор Гриценко
    4 ноября 2020, 14:01 |

    Но ведь результат на питоне другой.

  • Виктор Гриценко
    4 ноября 2020, 14:02 |

    я считал, что qt -  это оболочка для поддержки графики.  

    Зачем здесь нужен qt ?

  • Профиль удален
    4 ноября 2020, 14:06 |

    Я писал с нуля тот алгоритм, что и на сайте ( с нуля )


    Qt - это не только работа с графикой, там много чего можно делать ( лично для я там использовал преобразование из HEX в BYTE и наоборот )

  • Виктор Гриценко
    4 ноября 2020, 14:06 |

    Получается, что в программе на C++ функция SHA256 не вызывает сомнений.

    Но возможно данные в нее вводятся не так как на питоне?

    Или питоне используется какая-то другая функция, хотя и называется sha256 ?

  • Виктор Гриценко
    4 ноября 2020, 14:09 |

    Егор,

    программа мне нужна для реализации в VHDL,

    поэтому мне нужно видеть развернутое выполнение всех операций.

  • Профиль удален
    4 ноября 2020, 17:20 |

    Свой майнер делаете ? ( на фпга ? )

  • Виктор Гриценко
    4 ноября 2020, 14:10 |

    Вы уже поняли, почему в питоне результат другой ?

  • Профиль удален
    4 ноября 2020, 17:08 |

    Я ваш код ещё не смотрел


    Судя по всему - вы не то загоняете в функцию ША256
    Я с этим тоже немного повозился. Вам надо поиграться с преобразованиями. ( лично у меня руки дойдут до компа не скоро )

  • Профиль удален
    4 ноября 2020, 17:19 |

    image

    У меня выглядит так
    ( не знаю только, в каком качестве загрузится)

  • Виктор Гриценко
    4 ноября 2020, 17:27 |

    После первого вызова ваш результат совпадает с питоном,

    а после второго не совпадает. И второй не меняется.

    Должно быть так:

    0 157dfe155ac404c6eba246cc8840dd8e1489e86d5e8ad7d62fa3059425bfc30f

    0 5c56c2883435b38aeba0e69fb2e0e3db3b22448d3e17b903d774dd5650796f76

    1 048e9496af6b46c94dce750d5f7d55f89b88a029b055a49b16856ac9e802b983

    1 28902a23a194dee94141d1b70102accd85fc2c1ead0901ba0e41ade90d38a08e

    2 348cc95b1770f905b483d41f304c08089b134ca2a00fd208da389a2b44d3deef

    2 729577af82250aaf9e44f70a72814cf56c16d430a878bf52fdaceeb7b4bd37f4

    3 a7fba1f60e40c49e9358fa7aeaee1ab4538be10a8a03af9194fb323599c02806

    3 8491452381016cf80562ff489e492e00331de3553178c73c5169574000f1ed1c

  • Профиль удален
    4 ноября 2020, 17:45 |

    Извиняюсь, немного сбил алгоритм, не ту версию выкинул
    image


  • Виктор Гриценко
    4 ноября 2020, 17:54 |

    не фига

  • Профиль удален
    4 ноября 2020, 20:34 |

    нашёл косяк?

    Если нет - сколько предлагаешь?

  • Виктор Гриценко
    4 ноября 2020, 20:40 |

    Кто нашел косяк ?

    Это вопрос ко мне?

    Если все работает, то сколько вы хотите ?

Актуальные фриланс-проекты в категории C и C++

Сравнительный анализ эффективности кастомного ПО (v2.2-field) и эталонного ПО (Meshtastic v2.x)

1000 UAH

Сравнительный анализ эффективности кастомного ПО (v2.2-field) и эталонного ПО (Meshtastic v2.x) на идентичной аппаратной платформе (ESP32 + SX1268, 2W) по критериям дальности, пропускной способности, стабильности линка и энергопотребления. Провести тесты с замерами с учетом…

C и C++C# ∙ 1 день 20 часов назад ∙ 2 ставки

Консультация и аудит текущего проекта на Odoo 19 Community Edition

Ищем Odoo разработчика — соло-разработчика с опытом разработки на Odoo 19 Community Edition, в том числе с использованием Claude Code. Нам нужен специалист, который успешно реализовал проекты в Odoo и имеет практический опыт разработки с использованием Claude Code. Важно:…

C и C++Javascript и Typescript ∙ 4 дня 22 часа назад ∙ 7 ставок

Разработка ПО для Arduino (RF-модули 3–7.5 ГГц, автоматическое сканирование частот)

Необходимо разработать систему на Arduino для автоматического поиска активного аналогового видеосигнала и автоматической настройки передатчика на обнаруженную частоту.Планируется использование трех отдельных приемно-передающих модулей: 3000–4200 МГц; 4900–6000 МГц; 6100–7500…

C и C++Встраиваемые системы и микроконтроллеры ∙ 5 дней 22 часа назад ∙ 4 ставки

Чёрная Украина (RP-проект на базе MTA)

51 835 UAH

Исправление ошибок различной сложности, как на изображениях. Корректировка навигации карты. Исправление дыр в карте, адаптация транспортных средств к проекту, удаление логотипов или их переписывание.

C и C++Python ∙ 7 дней 10 часов назад ∙ 22 ставки

Инженер по инфраструктуре резидентных прокси

Мы строим сеть резидентных прокси с нуля — полностью собственную, без сторонних поставщиков. Нам нужен один исключительный сетевой инженер для создания всей технической базы. Что вы будете строить: - Android SDK для фонового использования, который направляет прокси-трафик через…

C и C++DevOps ∙ 11 дней 18 часов назад ∙ 15 ставок

Заказчик
Проект опубликован
5 лет назад
207 просмотров