Имя: Пароль:
IT
 
Напомните алгоритм
0 zenik
 
23.10.13
10:56
Доброго времени суток. Напомните плз алгоритм, для хранения ряда чисел 1 или 0. Собирались они в одно число по типу <НомерЗначения1> * <Значение1> + <НомерЗначения2> * <Значение2> ... и тд. т.е. для варианта 011 получаем число 5, для варианта 101 = 4.
Как потом из числа 4 получить значение 1 или 0 для определенной позиции.
1 Asmody
 
23.10.13
10:58
(0) открой для себя двоичную систему счисления
2 Бледно Золотистый
 
23.10.13
11:06
(0) а 3 = 001 или 110?
3 zenik
 
23.10.13
11:12
(2) хороший вопрос :) алгоритм приведен условно. Я его помню достаточно поверхностно.
Двоичная система тут тоже не при делах... Множителями вроде были числа 2,4,8,16,32 ...
Ладно отбой, придумаем что-нибудь другое.
4 Chum
 
23.10.13
11:12
(0) фигня какая-то...

1. Почему не хранить двоичное число в виде двоичного числа?
2. Почему ряд двоичных чисел не хранить в виде строки-последовательности двоичных чисел?
3. Из твоего алгоритма не выколупать значение в определенной позиции, т.к. нет однозначного решения.

Например:
001 = 1*0+2*0+3*1 = 3
110 = 1*1+2*1+3*0 = 3
и вот тут вы, батенька, получаете херню.
6 MSII
 
23.10.13
11:20
(0) Хранение чисел в ПЗУ компьютера реализовано достаточно давно. Способ преобразования числа из одной системы счисления в другую даже в википедии описан. В общем, поддерживаю (5).
7 zenik
 
23.10.13
11:42
(4) Это не совсем двоичные числа... Думал развернуть строки результата запроса в колонки.
8 1dvd
 
23.10.13
11:50
что-то непонятная какая-то система.
напиши до 10:
1 = ???
2 = ???
3 = ???
4 = 101
5 = 011
6 = ???
7 = ???
8 = ???
9 = ???
10 = ???
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн