96 / 96 / 21
Регистрация: 25.04.2012
Сообщений: 449
|
|
1 | |
Разложить число на сумму степеней двойки27.09.2012, 08:48. Показов 9383. Ответов 16
Метки нет (Все метки)
помогите написать функцию, раскладывающую число на сумму степеней двойки.
т.е. у меня есть 6 прав у пользователей, которые пронумерованы степенями двойки создание объекта 2 создание субъекта 4 удаление объекта 8 удаление субъекта 16 внесение прав 32 удаление прав 64 т.е. суперпользователь имеет доступ 126(сумма всех степеней), другой пользователь имеет доступ 10 (создание и удаление только объектов) третий 36 (создание субъекта и внесение прав) помогите написать функцию, возвращающую список доступных действий пользователю. сам что-то пробовал, но даже стыдно выкладывать бред, который я писал
0
|
27.09.2012, 08:48 | |
Ответы с готовыми решениями:
16
Является ли число суммой степеней двойки? Разложить число на сумму степеней двойки Вычисление степеней двойки Вывести таблицу степеней двойки |
Почетный модератор
5850 / 2861 / 392
Регистрация: 01.11.2011
Сообщений: 6,907
|
||||||
27.09.2012, 09:40 | 2 | |||||
1
|
4226 / 1795 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
||||||
27.09.2012, 09:59 | 4 | |||||
1
|
Почетный модератор
5850 / 2861 / 392
Регистрация: 01.11.2011
Сообщений: 6,907
|
|
27.09.2012, 10:06 | 5 |
0
|
4226 / 1795 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|
27.09.2012, 10:06 | 6 |
0
|
Почетный модератор
5850 / 2861 / 392
Регистрация: 01.11.2011
Сообщений: 6,907
|
|
27.09.2012, 10:16 | 7 |
0
|
4226 / 1795 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|
27.09.2012, 10:36 | 8 |
Чему здесь завидовать? Ни о чём не говорящему пову? Бред, кобыла отдыхает. А у меня маска бита и перебор битов.
0
|
96 / 748 / 279
Регистрация: 11.04.2012
Сообщений: 971
|
||||||
27.09.2012, 10:36 | 9 | |||||
1
|
4226 / 1795 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
||||||
27.09.2012, 10:43 | 10 | |||||
Ну, если охота текстом, то можно так:
1
|
Почетный модератор
5850 / 2861 / 392
Регистрация: 01.11.2011
Сообщений: 6,907
|
|
27.09.2012, 10:49 | 11 |
taras atavin, ой ну да ладно вам заводиться-то. Я имею ввиду, что мне дозволено постить говно, а вам нет, в виду вашего высокого уровня.
Бесспорно это гораздо лучше.
0
|
4226 / 1795 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|
27.09.2012, 11:02 | 12 |
0
|
Модератор
8908 / 6677 / 918
Регистрация: 14.02.2011
Сообщений: 23,521
|
||||||
27.09.2012, 11:09 | 13 | |||||
слушайте а нахрена здесь цикл и switch ???
один пользователь может иметь несколько прав просто набор if
1
|
Почетный модератор
5850 / 2861 / 392
Регистрация: 01.11.2011
Сообщений: 6,907
|
|
27.09.2012, 11:57 | 14 |
ValeryS,
0
|
96 / 96 / 21
Регистрация: 25.04.2012
Сообщений: 449
|
||||||||||||||||
12.11.2012, 13:51 [ТС] | 15 | |||||||||||||||
ADD_OBJ ADD_SUB и тд объявлены как
Добавлено через 14 минут на выходе выдает не правильно: Код
12 12=+2^3+2^2+2^1+2^0 к сожалению я совсем не понимаю значения битовых сдвигов и т.д. и не могу даже понять в чем ошибка Вашего алгоритма
0
|
4226 / 1795 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|
12.11.2012, 14:10 | 16 |
Набор ифов очень плохо расширяется на другую разрядность, а растёт быстро. Большая же программа при прочих равных работает медленнее, так как чаще подгружается из основной оперативной памяти в кеш и с диска в оперативную память. Этого надо избегать, если только у тебя не упакованные флаги. Хотя, в данном случае вроде они.
0
|
96 / 96 / 21
Регистрация: 25.04.2012
Сообщений: 449
|
|
12.11.2012, 14:21 [ТС] | 17 |
ааа люди я дико извиняюсь, все работает!! я случайно передавал не то значение в функцию, передавал уровень доступа из файла, а для отладки менял значение из матрицы!! т.е. в функцию всегда передавалось одно и тоже при всех моих изменениях! все работает!!
0
|
12.11.2012, 14:21 | |
12.11.2012, 14:21 | |
Помогаю со студенческими работами здесь
17
Вывести таблицу степеней двойки Вывести таблицу степеней двойки Вывести на экран таблицу степеней двойки Заполнить массив значениями степеней двойки Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |