|
1 / 1 / 0
Регистрация: 15.02.2020
Сообщений: 23
|
||||||||||||||||
Переписать программу с Python на C++15.02.2020, 19:21. Показов 13592. Ответов 15
Доброго времени суток, уважаемые форумчане, необходима помощь в переводе программы с языка Python на C++. Исходный код решает следующую задачу:
1. Открыть бинарный файл. 2. Выделить из потока нулевой и первый канал, сформировать и сохранить на диск один файл формата csv. Примечание: каждый байт представляет собой 1 отсчёт восьми каналов данных с параллельной шины, таким образом нулевому каналу соответствует нулевой бит, первому каналу - первый бит и тд.. В csv-файле 3 колонки : нулевой канал, первый канал, нулевой канал логически умноженный на первый канал; одна строчка = один отсчёт. 3. Декодировать информационный поток , т.е. выполнить дискретизацию сигнала относительно середины интервала между синхроимпульсами. Результат работы - csv файл с одной колонкой, с отсчётами декодированного потока (т.е. значение 0 или 1 ), одна строчка = один отсчёт. Примечание: нулевой и первый канал представляют собой информационный поток кода нулей и единиц (активный уровень нулевого канала = 0, активный уровень первого канала = 1), в обоих каналах присутствуют синхроимпульсы, предназначенные для определения точки сэмплирования. 4. Выделить из декодированного информационного потока кадры ТЕЛЕМЕТРИЧЕСКОЙ ИНФОРМАЦИИ, каждый из которых начинается с синхромаркера. В качестве синхромаркера используется 32-х разрядная последовательность: 0001 1010 1100 1111 1111 1100 0001 1101 4.1. Определить размер кадра телеметрической информации 4.2. Сформировать пакеты ТМИ из полученных бит (от старшего к младшему) включая синхромаркер. 4.3. Записать полученные пакеты в бинарный файл out.bin Вот код на Python, который решает эту задачу:
Добавлено через 4 часа 28 минут Переработал код на С++, теперь он выполняется и выводит данные в файл, но выводит только единственный ноль
0
|
||||||||||||||||
| 15.02.2020, 19:21 | |
|
Ответы с готовыми решениями:
15
Переписать программу с python на C++ Переписать программу из Pascal на Python
|
|
388 / 334 / 65
Регистрация: 14.10.2014
Сообщений: 1,463
|
||||
| 15.02.2020, 21:10 | ||||
|
Добавлено через 9 минут если прога: Добавлено через 4 минуты А, стоп - что вообще прога должна делать?
1
|
||||
|
1 / 1 / 0
Регистрация: 15.02.2020
Сообщений: 23
|
|||
| 15.02.2020, 22:10 [ТС] | |||
|
0
|
|||
|
388 / 334 / 65
Регистрация: 14.10.2014
Сообщений: 1,463
|
||
| 15.02.2020, 22:29 | ||
|
Значит - или ошибка в функции samples, или неверно составлен код (неверно в данном случае означает - не соответствует алгоритму)
1
|
||
|
1 / 1 / 0
Регистрация: 15.02.2020
Сообщений: 23
|
|||||||||||||||||||||||
| 15.02.2020, 22:46 [ТС] | |||||||||||||||||||||||
0
|
|||||||||||||||||||||||
|
388 / 334 / 65
Регистрация: 14.10.2014
Сообщений: 1,463
|
|
| 15.02.2020, 22:56 | |
|
Кажись один косяк обнаружил - по крайней мере у меня он точно есть - в функции main() в первой строке, создается файловый поток (объект ifstream f("udk_dump.bin", std::ios::binary)) Но у меня то, точно такого файла нет, а значит и объект нулевой. Далее из него по коду вы пытаетесь из этого файла что-то считать. А раз у меня его нет, значит все функции вернут 0. У вас (если есть этот файл) результат может быть другой - нужно проверять, читаются ли данные из файла или нет.
1
|
|
|
1 / 1 / 0
Регистрация: 15.02.2020
Сообщений: 23
|
||||||
| 15.02.2020, 23:02 [ТС] | ||||||
|
После открытия файла вставил код
0
|
||||||
|
1550 / 877 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
|
||||
| 15.02.2020, 23:02 | ||||
![]()
0
|
||||
|
1 / 1 / 0
Регистрация: 15.02.2020
Сообщений: 23
|
|||||||||||
| 15.02.2020, 23:05 [ТС] | |||||||||||
|
То, что отрицание обозначается как
0
|
|||||||||||
|
388 / 334 / 65
Регистрация: 14.10.2014
Сообщений: 1,463
|
|||||||
| 15.02.2020, 23:14 | |||||||
Сообщение было отмечено DrFaust1729 как решение
Решение , но я не уверен в том, что здесь подразумевается именно отрицание я вообще не совсем понимаю, как работает алгоритм. DrFaust1729, для проверки файла я использую:
Добавлено через 3 минуты DrFaust1729, мой вердикт - если у вас есть файл udk_dump.bin, запускайте прогу в отладке и смотрите, что из него читается и что с этим происходит далее. Других вариантов у меня нет.
0
|
|||||||
|
1550 / 877 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
|
||
| 15.02.2020, 23:16 | ||
|
Фэйспалм-то был на тему сравнения конструкций в питоне и крестах с выводом об ущербности оной в крестах. Я тоже питон не знаю (ну как не знаю, код как в первом сообщении я напишу. Нюансов не знаю), но уж логическое отрицание в обоих языках сравнить могу.
0
|
||
|
388 / 334 / 65
Регистрация: 14.10.2014
Сообщений: 1,463
|
|||
| 15.02.2020, 23:22 | |||
|
А вообще, я спрашивал про данную конструкцию, потому что ТС написал:
1
|
|||
|
1550 / 877 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
|
||
| 15.02.2020, 23:30 | ||
Сообщение было отмечено DrFaust1729 как решение
Решение
1
|
||
|
1 / 1 / 0
Регистрация: 15.02.2020
Сообщений: 23
|
|
| 15.02.2020, 23:34 [ТС] | |
|
0
|
|
|
388 / 334 / 65
Регистрация: 14.10.2014
Сообщений: 1,463
|
|
| 15.02.2020, 23:42 | |
Сообщение было отмечено DrFaust1729 как решение
Решение
Судя по заданию (если я его правильно понял), нужно вытащить данные из одного файла и, предварительно обработав по протоколу, записать в другой. Без понимания работы протокола (ну или алгоритма) и без нужного файла сложно ТСу чем то помочь.
Не по теме:
1
|
|
|
1 / 1 / 0
Регистрация: 15.02.2020
Сообщений: 23
|
|
| 16.02.2020, 00:11 [ТС] | |
|
Спасибо за уделенное внимание
0
|
|
| 16.02.2020, 00:11 | |
|
Помогаю со студенческими работами здесь
16
Можете переписать программу is Basic в Python? Переписать с Python в JavaScript
Переписать код c Python
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
|
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение:
DISM / Online / Add-Capability / CapabilityName:WMIC~~~~
Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
|
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: при создании документов установить период списания автоматически. . .
|
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2.
Задача: вывести данные из ТЧ нетипового документа. . .
|
|
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению.
На форме документа создается. . .
|
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
|
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
|
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
|