|
0 / 0 / 0
Регистрация: 20.12.2015
Сообщений: 92
|
|
Функция для выделения диапазона разрядов18.02.2017, 15:37. Показов 2234. Ответов 9
Метки нет (Все метки)
Всем добрых дней. Есть задумка написать функцию, которая будет выделять диапазон разрядов и будет их сдвигать вправо.
То есть такого вид void vydel_raz(int code, int старший разряд, int младший разряд) {} Подскажите какой приблизительно алгоритм можно здесь использовать.
0
|
|
| 18.02.2017, 15:37 | |
|
Ответы с готовыми решениями:
9
Алгоритм выделения разрядов числа и проверки, есть ли среди них нечетная цифра Процедура "Умное выделение" для выделения столбцов в пределах диапазона с данными (Решено)
|
|
41 / 41 / 11
Регистрация: 02.04.2016
Сообщений: 313
|
|
| 18.02.2017, 16:27 | |
|
Основной Ваш друг - оператор взятия остатка от деления. Для начала отделяете все цифры, что стоят перед младшим разрядом, кроме последней слева - на неё мы и "надвинем" то число, которое Вы выделите между старшим разрядом (включительно?) и младшим (включительно?). Далее от числа у Вас остаётся только то, что шло перед старшим разрядом.
В итоге у Вас будет 3 переменных: число до диапазона, диапазон, число после диапазона, не включая старший разряд (тут уж сами границы определяйте). А дальше просто комбинируете в одно число с помощью pow(10, x).
0
|
|
|
0 / 0 / 0
Регистрация: 20.12.2015
Сообщений: 92
|
||||||
| 18.02.2017, 19:32 [ТС] | ||||||
|
Такое вроде подойдёт
0
|
||||||
|
41 / 41 / 11
Регистрация: 02.04.2016
Сообщений: 313
|
|
| 18.02.2017, 20:29 | |
|
Не по теме: Стоит почаще спать ночью. Подумал, что нужно было сделать это для десятичного числа Во-первых, зачем Вам XOR - оператор карет ^? Если Вы хотели возвести аргумент в степень, то для этого есть pow(), но оператора "из коробки" нет. Во-вторых, так как эта задача похожа на одну из тех, что мне давали на лабы, смею предположить, что реализация требуется в один оператор return.
0
|
|
|
0 / 0 / 0
Регистрация: 20.12.2015
Сообщений: 92
|
|
| 18.02.2017, 21:48 [ТС] | |
|
Возожно и в один return. Есть ли другая функция возведения в степень? На pow ругается из-за несовместимости double и integer
0
|
|
|
41 / 41 / 11
Регистрация: 02.04.2016
Сообщений: 313
|
|||||||
| 18.02.2017, 21:57 | |||||||
|
Добавлено через 6 минут Ну тогда алгоритм усложнится: нужно задать маску выделения битов, например, так (если sizeof(int) == 4):
x и y - старший и младший бит выделяемого диапазона, не включая их и ведя индексацию битов с нуля справа, соответственно.Над остальным сами поэкспериментируйте - для этого же работа и нужна самостоятельная.
0
|
|||||||
|
0 / 0 / 0
Регистрация: 20.12.2015
Сообщений: 92
|
||||||
| 18.02.2017, 22:12 [ТС] | ||||||
|
В принципе если присвоить х тип double то всё идёт вроде путём. В таком варианте дробной части получиться всё равно не должно.
0
|
||||||
|
Диссидент
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
|
|||||||
| 18.02.2017, 22:24 | |||||||
Если эта покажется вам слишком медленной, можно сделать побыстрее
0
|
|||||||
|
0 / 0 / 0
Регистрация: 20.12.2015
Сообщений: 92
|
|
| 18.02.2017, 22:34 [ТС] | |
|
Забавно, лишнее писать только тоже не хочется. Странно что нет готового. В делфях есть вроде что то типа intPower, а тута нема.
0
|
|
|
Диссидент
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
|
||
| 18.02.2017, 23:42 | ||
|
Нет, конечно, мне не по силам создать собственное CGI (хотя и пытался ), и тут я обращаюсь к фреймворкам.Но хороший столяр сам строит свой верстак, сам точит рубанок. Конечно, циркулярную пилу он будет выбирать в магазине. Но бегать по магазинам за простым отвесом? Привязал подходящую гайку к веревочке - все дела!
0
|
||
| 18.02.2017, 23:42 | |
|
Помогаю со студенческими работами здесь
10
Приостановка программы до выделения диапазона
Режим выделения диапазона из диалогового окна
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
|
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2.
Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
|
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
|
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
|
|
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2.
Данный документ берёт данные из другого нетипового документа. . .
|
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
|
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: реализовать программный контроль на предмет проведения документа. . .
|
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача:
1. Реализовать контроль заполнения реквизита. . .
|