Работа с массивами в C++

Здесь принимаются все самые невообразимые вопросы... Главное - не стесняйтесь. Поверьте, у нас поначалу вопросы были еще глупее :)
Аватара пользователя
Yellow Tiger
Сверлит текстолит когтями
Сообщения: 1148
Зарегистрирован: Вт июл 08, 2008 12:24:17

Сообщение Yellow Tiger »

Symbiosis писал(а):вы абсолютно не знаете задачи целиком...
Так ведь - как ты изложил, так и знаем. Как говорится - "неча на зеркало пенять", - ведь сам же знаешь: правильно сформулированный вопрос - половина ответа! ;)
Symbiosis писал(а):считать себя гением
Ты действительно полагаешь, что отвечая на твои вопросы кто-нибудь может почувствовать себя гением? Если да, то сильно заблуждаешься, но я думаю, что это была обыкновенная защитная реакция. :) Знаешь, мой тебе добрый совет (совершенно искренний) - не ищи решения в позиции незаслуженно обиженного; она приносит результат лишь лет до десяти, а позже начинает мешать, после двенадцати - сильно мешать. Поэтому, давай отложим эмоции и разберемся в твоей ситуации (разумеется, в той степени, в которой ты её открыл):

1.У тебя есть некая программа, выдающая файл с командами для исполнительного у-ва, имеющий, судя по твоим постам, такой формат:

Код: Выделить всё

число1,число2,число3
число4,число5,число6
...
2. Тебе нужно:
а) преобразовать данные в файле к формату:

Код: Выделить всё

XVчисло1,YVчисло2,ZVчисло3
XVчисло4,YVчисло5,ZVчисло6
...
б) преобразованные данные выдать (построчно?) на исполнительное устройство по интерфейсу RS232.

Кроме того, характер задаваемых вопросов свидетельствует, что написать программу для м/к ты затрудняешься.
Теперь заметь, что обозначенная тобой цель сформулирована не "научиться программировать м/к", а - "подготовить данные и передать на исполнительное устройство".
Вот я и предлагаю тебе возможно более короткий путь решить ту задачу, которую ты сформулировал.

Теперь в подробностях.
Шаг а) (преобразовать формат) тебе проще всего не средствами м/к а средствами того компа, на котором создается файл с данными для ИУ.
Шаг б) (передать данные) - я предложил два варианта:
в.1 - средствами м/к, причем, благодаря тому, что данные уже подготовлены, функция м/к сводится лишь к чтению файла с флешки и передаче его на ИУ.
в.2 - средствами какого-либо готового компа.

Ну, и наконец, комментарии к тому, как ты понял содержание предложенного тебе решения...
Symbiosis писал(а):А отдельный ПК стоит безусловно дешевле ... А самое главное легынький, маленький.
Во-первых, почему - отдельный? А чем тот, на котором готовятся данные, не годится для придания им требуемого формата?
Во-вторых, кто ограничивает тебя в выборе компа? Почему это обязательно д.б. ПК? А КПК не годится разве для передачи данных?
Symbiosis писал(а):софт, который генерирует текстовый файл с циферами, ... править нет возможности, файлы проекта утеряны
А кто сказал, что подготовить файл "с циферами" можно только располагая исходниками того проекта? Чем тебе стандартные и широко распространенные фильтры не угодили?
Скажем есть такая штука, awk - чем она плоха? Её ещё Керниган со товарищи создали и с тех пор она исправно работает, твоя задача решается вот так:

Код: Выделить всё

C:>awk -F, "{print("XV" $1 ",YV" $2 ",ZV" $3)}" data.txt >result.txt
и всего-то делов...

Таким образом, для решения твоей задачи я бы просто:
- скачал из инета awk.exe,
- написал батничек, преобразующий файл с данными к требуемому формату (там всего одна строка, та самая, сверху ^),
- приспособил бы для передачи файла на ИУ либо ПК, либо КПК (с флешкой).

На все это потребовалось бы от двух часов до двух дней, а ты в этой теме только ответ ищешь уже полтора месяца(!) - именно поэтому я и сделал вывод, что решение задачи тебя не очень сильно интересует. Правильно говорят - одни люди ищут способ, другие - причину. ;)
Реклама
Аватара пользователя
Symbiosis
Вымогатель припоя
Сообщения: 600
Зарегистрирован: Вс апр 27, 2008 13:44:52
Контактная информация:

Сообщение Symbiosis »

Yellow Tiger , ну зачем переворачивать все с ног на голову? )
Вот если вам надо будет узнать каким образом пройти туда то, вы будите объяснять прохожему, что "мне нужно отнести ведро воды , чтобы было то-то, и стало хорошо тому-то, и поэтому, подскажите мне дорогу" Я уверен что нет, это не имеет никакого смысла, здесь аналогично, и это совершенно очевидно.

А про "гения", не то слово подобрал, вобщем считать себя ой-каким остроумным, и поражаться своему же остроумию, я считаю это некрасиво.

Нужен обязательно отдельный компьютер. Стоят 2 машины рядом, и во время работы они заняты очень сложными вычислениями, и не способны адекватно реагировать на задачу, к примеру отправки в порт последовательный циферок, задержка от циферки к циферки прилично скачет. Да и это даже пробывать бессмыслено было , потому как проц постоянно загружен более чем на 80% и более, хотя точно сказать не могу, уж простите если обману, но это и не важно , экспиремент подтвердил, что не получается это. У всех остальных машин нету ком портов и не ставится никакая ось ниже висты, а под вистой неработают переходники юсб - ком, но даже не из-за этого не использую комп...

КПК нету, покупать отдельно - дорого.

Есть фестосекундный лазер 40ТВт импульсная мощность, генератор лазера подготавливает синхросигнал учитывая задержку в резонаторе и усилителе, дает импульс с этого выхода , поступает на ногу МК. по фронту МК отправляет на нанопозиционер первую строку массива, и тд.

По поводу софта. Если так вкратце. то внешне прога похожа на пэинт виндовый. открываешь ей картинку формата бмп, после чего прямо поверх картинки клацаешь в нужных местах оставляя точки, эти точки соединяюся векторами, а координаты точек записываются в текстовый файл в три колонки. таким образом не нужно абстрактно подготавливать массив, а делается все графически по 20нм сетке. Это не сама цель использования нанопозиционера. Провести экспиремент фемтосекундной абляции и обойти дифракционный предел лазера. т.е получить кратер деаметром много меньше длины волны.

далее чтобы получить точность до 3 нм, надо будет от нанопозиционера используя выходы обратной связи обрабатывать поток данных. Теперь понимаете, почему нужно отдельное устройство и без особенностей виндоус вроде задержек временных , из-за того что процессы не в реальном времени а в очереди. Просто если будет сыпаться 3 линии от каждой координаты обратной связи + линия синхросигнала и это все должно строго быть тактировано. кста, те машины мощные еще и сигналы 10ГГц оцифровывают, думаю понятно, что это сложная задача для ПК.

Програма для мк написана, работает, спасибо за помощь! Сейчас другой этап, привинчивание флэшки и переработка программы...


Извиняюсь за сумборность и возможное обилие ошибок, очень неудобно писать с телефона такие тексты большие.
Реклама
Аватара пользователя
Yellow Tiger
Сверлит текстолит когтями
Сообщения: 1148
Зарегистрирован: Вт июл 08, 2008 12:24:17

Сообщение Yellow Tiger »

Как все надуманно...
- на том компе, который осиливает сколку "поверх картинки бмп", такая пушинка, как awk, проскочит без смазки - уж всяко она потребляет меньше ресурсов, чем программа сколки, после которой (а не вместе) она должна была бы отрабатывать.
- сегодня старенький КПК обойдется дешевле, чем вся та "музыка", которую придет собрать, чтобы вышел предполагаемый девайс. В общем, вся эта писанина вверху - шита белыми нитками. Одни лукавые отмазки...

А теперь о том, что красиво, а что нет...
Полтора месяца здешние обитатели пытаются достроить в своей голове плохо изложенную тобой ситуацию, чтобы предложить её решение. Предложений много, самых разных - как в рамках первоначального русла (делать все на м/к), так и лежащих на других направлениях. Другой человек в таком разе принес бы свои извинения за то, что так туманно, так неполно описал задачу, привел бы уточнения и, выбрав решение, наиболее близкое к своему видению, стал бы в диалоге, шаг за шагом, доводить его до окончательного варианта, или, не найдя ни одного подходящего, объяснил бы, продолжающим поиски коллегам, почему не находит среди предложенных решений нужного - чем именно они ему не подходят, ну, чтобы не тратить понапрасну время откликнувшихся собеседников...
Что же из этого сделал ты? Может, дал более точное описание задачи, чтобы упростить коллегам поиски? Нет. Тогда, может, публично порассуждал о том, чем не подходят и почему не приняты те решения, которые нашли и предложили участники темы? Тоже нет. Тогда, быть может, хотя бы принес извинения за столь туманное изложение задачи? Снова - нет. Но тогда - что же? А вот что - ты "перевел стрелки", оказывается, твои проблемы тянутся так долго оттого, что тут тебе своими советами мешают "неправильные пчёлы", и их "неправильный мёд".

Засим, чтобы не быть причастным к этому флуду, я оставлю эту тему. Время слишком ценный ресурс, возможно - самый ценный из числа невосполнимых, тратить его я привык несколько иначе. Желаю тебе успехов, в решении столь сложной задачи.
Аватара пользователя
Пухич
Модератор
Сообщения: 4673
Зарегистрирован: Вс июн 01, 2008 00:17:35
Откуда: Я всего лишь плод вашего воображения...

Сообщение Пухич »

Дадада, господа. Чего-то вы расшумелись. Автор, вы все выяснили, может тему закрыть?
Знание - сила!
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
Symbiosis
Вымогатель припоя
Сообщения: 600
Зарегистрирован: Вс апр 27, 2008 13:44:52
Контактная информация:

Сообщение Symbiosis »

Спасибо , выяснил все ) Ну а у желтого тигра время слишком ценно, поэтому любит поговорить и не умеет слушать /читать )
Можно и закрыть
Реклама
Закрыто

Вернуться в «Теория»