![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| VampirDX |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 105 Регистрация: 24.5.2007 Где: Россия, Москва Репутация: нет Всего: нет |
Продолжение прошлой темы, дабы не путать.
Допустим есть массив из 3-х байтовых чисел. Как его записать в единое число и вывести его на экран? Использую textBox. Записать, т.е. число допустим 000000000, и как в него записать данные с массива так, чтобы f[0] было в первой тройке, f[1] было во второй тройке, и т.д. А вывод имеется ввиду, что вывод обычного числа, а не байт, int или double или что там еще. Если честно, сам не разобрался до конца. Если есть вопросы у желающих помочь - задавайте, постараюсь ответить. PS: спасибо tol05 и Heinzz за ответы. |
|||
|
||||
| Lunatic2009 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 46 Регистрация: 1.7.2009 Репутация: нет Всего: 3 |
Не совсем понятно, Вам нужно что бы было так:
результат: 100122400 или так: 100012200400 Это сообщение отредактировал(а) Lunatic2009 - 28.11.2009, 05:31 |
|||
|
||||
| Heinzz |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 381 Регистрация: 12.12.2008 Где: .net Репутация: 5 Всего: 9 |
работает |
|||
|
||||
| Heinzz |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 381 Регистрация: 12.12.2008 Где: .net Репутация: 5 Всего: 9 |
Коряво как то.
Лучше проще:
|
|||
|
||||
| VampirDX |
|
||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 105 Регистрация: 24.5.2007 Где: Россия, Москва Репутация: нет Всего: нет |
что-то, heinzz, от твоих примеров у меня там числа шибко большие получаются))
Попробую как-то популярнее объяснить... есть массив байт из 3 чисел:
Как мне эти числа вбить в одно число со смещением, т.е. R = 000000000 и число должно получиться
Так, чтобы оставшиеся нули были слева. смещение "<<". |
||||
|
|||||
| Heinzz |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 381 Регистрация: 12.12.2008 Где: .net Репутация: 5 Всего: 9 |
ну так параметр d3 в ToString как раз и говорит о том что каждый байт должен быть записан тремя цифрами, если же он короче добавляются нули слева.
|
|||
|
||||
| VampirDX |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 105 Регистрация: 24.5.2007 Где: Россия, Москва Репутация: нет Всего: нет |
да, действительно..ты прав...получилось как надо. А как теперь полученную строку в десятичное число преобразовать, так так на данный момент в ней последовательность байт?
|
|||
|
||||
| Heinzz |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 381 Регистрация: 12.12.2008 Где: .net Репутация: 5 Всего: 9 |
Это очень просто
получаем десятичное число, правда нули спереди исчезнут. Помимо double можно получить и int что в данном случае на мой взгляд лучше подходит (число же всегда целое) |
|||
|
||||
| Zakonnic |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 161 Регистрация: 25.4.2006 Репутация: 2 Всего: 6 |
А может просто bArr[0]*1000000+bArr[1]*1000+bArr[2] ?
Или на худой конец так: int output = bArr.Aggregate(0, (total, next) => total * 1000 + next); PS. Вас точно десятичные смещения интересуют, а не двоичные? Это сообщение отредактировал(а) Zakonnic - 29.11.2009, 20:31 --------------------
...и никогда не пишите в комментариях правду |
|||
|
||||
| VampirDX |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 105 Регистрация: 24.5.2007 Где: Россия, Москва Репутация: нет Всего: нет |
Zakonnic как бы грустно это не звучало...но я сам уже не совсем понимаю, что меня интересует...
ну а для byte'ов что надо? мне-то надо, чтобы при входе 3-х байтовых чисел, их совместить в одно и вывести в виде десятичного числа. Кстати, Heinzz, точно десятичного, потому что у меня на выходе будут числа типа -4,3954 и типа 0,10353. |
|||
|
||||
| SmartBye |
|
||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 60 Регистрация: 15.5.2008 Репутация: нет Всего: нет |
Или так:
Но, возможно, я не так понял вашу задачу. Это сообщение отредактировал(а) SmartBye - 30.11.2009, 21:50 |
||||
|
|||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |