CryptoNet - исследования в области криптографии, сжатия данных и помехоустойчивого кодирования.

Форумы → SDO СryptoNet → Криптография → Использование контейнеров С++
Автор | Сообщение |
Sylk ![]() | #1 26.05.10 00:58 |
Возник вопрос может кто-то сталкивался. Как использовать контейнеры чтоб увеличивать размер массива *v при надобности на единицу. И возможно ли сделать контейнер с функции DecToBin чтоб не обявлять глобальную переменную v. Код преобразования десятичного числа в двоичное. int v[9]={0};
int DecToBin(int N){//-----
int i=0;
while(N!=0){
v[8-i]=N%2;
N=N>>1;
i++;
}
//----- | |
Если-бы люди не придумывали новый велик то тогда бы автомобилей не было! | |
Led ![]() | #2 26.05.10 20:10 |
Точно не подскажу, но попробуй посмотреть в этой книге http://crypto.net.ua/biblioteka/programmirovanie/c-objektno-orientirovannoe-programmirovanie-praktikum | |
Sylk ![]() | #3 27.05.10 15:35 |
Если кому-то интересно. Пока нашел такое решение: string DecToBin(int N)
{
string s;
while (N)
{
s.insert(s.begin(), (N%2 ? '1' : '0'));
N = N >> 1;
}
return s;
}
int main()
{
cout << DecToBin(2549) << endl;
return 0;
} | |
Если-бы люди не придумывали новый велик то тогда бы автомобилей не было! | |
Sylk ![]() | #4 30.05.10 10:37 |
void DecToBin(int N, vector<int> &Out)
{
while (N)
{
Out.insert(Out.begin(), (N%2 ? 1 : 0));
N = N >> 1;
}
}
int main()
{
vector<int> bin;
DecToBin(54681, bin);
int k;
k=bin.size();
for (int i = 0; i < k; i++)
cout << bin[i];
return 0;
} | |
Если-бы люди не придумывали новый велик то тогда бы автомобилей не было! |