Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> бинари в дисцыфрацыю и на оборот, 1101 = 10 
:(
    Опции темы
toader
Дата 29.6.2009, 16:01 (ссылка)    | (голосов:5) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 137
Регистрация: 12.6.2009

Репутация: нет
Всего: нет



вот есть код он определяет бинари и показывает базу.. как сделать наоборот? из базы в бинари..



Код

int main ()
{

    int n = 0;
        int result[9] = {0, 0, 0, 0, 0, 0, 0, 0, 0};

        cin >> n;

        int tmp = 0;
        int i = 0;

        while(n > 10)
        {
            tmp = n % 10;
            result[i] = tmp;
            n /= 10;
            i++;
        }

        result[i] = n;

        if(result[0] > 0) result[0] = 1; else result[0] = 0;
        if(result[1] > 0) result[1] = 2; else result[1] = 0;
        if(result[2] > 0) result[2] = 4; else result[2] = 0;
        if(result[3] > 0) result[3] = 8; else result[3] = 0;
        if(result[4] > 0) result[4] = 16; else result[4] = 0;
        if(result[5] > 0) result[5] = 32; else result[5] = 0;
        if(result[6] > 0) result[6] = 64; else result[6] = 0;
        if(result[7] > 0) result[7] = 128; else result[7] = 0;
        if(result[8] > 0) result[8] = 256; else result[8] = 0;
        double p = 1.0;
        while(i >= 0)
        {
            cout << result[i] << " ";
            p = result[0]+result[1]+result[2]+result[3]+result[4]+result[5]+result[6]+result[7]+result[8];
            i--;
        }

        cout << "= " << p << endl;

    cout << endl;
    }



Это сообщение отредактировал(а) toader - 29.6.2009, 16:01
PM MAIL   Вверх
GoldFinch
Дата 29.6.2009, 18:41 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата



****


Профиль
Группа: Завсегдатай
Сообщений: 2141
Регистрация: 30.11.2008

Репутация: 15
Всего: 26



спс за код, поржал
алсо учи русский язык, кроме С++
PM MAIL ICQ   Вверх
andrew_121
Дата 29.6.2009, 19:13 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодофей
****


Профиль
Группа: Завсегдатай
Сообщений: 3448
Регистрация: 3.1.2008

Репутация: 6
Всего: 33



Говнокод отдыхает smile  http://www.govnokod.ru/cpp
Ты случаем не оттуда коды берешь? smile 


--------------------
Удалил аккаунт. Прощайте!
PM MAIL   Вверх
triclosan
Дата 29.6.2009, 19:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 515
Регистрация: 18.8.2006

Репутация: 1
Всего: 12



Ногами не бить

Код

#include <iostream>
#include <string>
using namespace std;

int getRng(string s, int v=0, int depth = 0)
{
    int size = s.size();
    if(size>0)
    {
        size--;
        int c = s.at( size )=='1'?1:0;
        s = s.substr(0, size);
        return getRng(s, v+(1<<depth)*c, depth+1) ;
    }
    else
        return v;
    
}

int main(int argc, char* *argv)
{
    string inp;
    char c;
    cout <<"Input binary representation: ";
    do
    {    
        c = cin.get();
        if( c=='0' || c=='1' )
            inp.push_back(c);
    }
    while (c != 0x0A);
    
    cout <<"Decimal representation of "<<inp <<" is: "<< getRng(inp)<<endl;
    
    return 0;
}


Добавлено через 11 минут и 45 секунд
и по сабжу

Код

#include <iostream>
#include <string>
#include <algorithm>
using namespace std;

int main(int argc, char* *argv)
{
    int x=0;
    string out;
    cout <<"Input decimal representation: ";
    cin >> x;

    while(x>0)
    {
        out.push_back( x%2?'1':'0'); 
        x>>=1;
    }
    reverse( out.begin(), out.end() );
        cout << "binary representation of "<< x << " is: "<< out<<endl;
    return 0;
}

PM MAIL   Вверх
andrew_121
Дата 29.6.2009, 20:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодофей
****


Профиль
Группа: Завсегдатай
Сообщений: 3448
Регистрация: 3.1.2008

Репутация: 6
Всего: 33



Да вы чё!
Эта тема не раз обсуждалась!
В поиск, бегом!


--------------------
Удалил аккаунт. Прощайте!
PM MAIL   Вверх
zim22
Дата 29.6.2009, 20:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


depict1
****


Профиль
Группа: Завсегдатай
Сообщений: 2682
Регистрация: 15.1.2009
Где: Украина

Репутация: 24
Всего: 69



Цитата(triclosan @  29.6.2009,  19:48 Найти цитируемый пост)
и по сабжу

Код

#include <bitset>
...
cout <<"Input decimal representation: ";

unsigned long x = 0;
cin >> x;
bitset<16> bs(x);
cout << bs << endl;



--------------------
PM MAIL   Вверх
triclosan
Дата 29.6.2009, 21:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 515
Регистрация: 18.8.2006

Репутация: 1
Всего: 12



Цитата(andrew_121 @  29.6.2009,  20:12 Найти цитируемый пост)
Эта тема не раз обсуждалась!

не интересно так

Цитата(zim22 @  29.6.2009,  20:30 Найти цитируемый пост)
Цитата(triclosan @  29.6.2009,  19:48 Найти цитируемый пост)
и по сабжу

Я так понял, что условия задачи запрещают bitset, что нет  smile ?
PM MAIL   Вверх
zim22
Дата 29.6.2009, 21:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


depict1
****


Профиль
Группа: Завсегдатай
Сообщений: 2682
Регистрация: 15.1.2009
Где: Украина

Репутация: 24
Всего: 69



Цитата(triclosan @  29.6.2009,  21:32 Найти цитируемый пост)
Я так понял, что условия задачи запрещают bitset, что нет

это здесь написано было?
Цитата

 бинари в дисцыфрацыю

smile


--------------------
PM MAIL   Вверх
triclosan
Дата 29.6.2009, 22:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 515
Регистрация: 18.8.2006

Репутация: 1
Всего: 12



Цитата(zim22 @  29.6.2009,  21:38 Найти цитируемый пост)
это здесь написано было?

я с иронией smile 
PM MAIL   Вверх
andrew_121
Дата 29.6.2009, 22:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодофей
****


Профиль
Группа: Завсегдатай
Сообщений: 3448
Регистрация: 3.1.2008

Репутация: 6
Всего: 33



Цитата(triclosan @  29.6.2009,  21:32 Найти цитируемый пост)
не интересно так

Хочешь интереса - в Центр помощи! Там тебя будут рады видеть smile 


--------------------
Удалил аккаунт. Прощайте!
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0505 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.