Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 5.00
vikaplys
0 / 0 / 1
Регистрация: 19.11.2009
Сообщений: 29
#1

перевод в двоичную систему через классы - C++

11.12.2009, 03:05. Просмотров 1067. Ответов 2
Метки нет (Все метки)

Помогите решить задачу используя классы.
Дано натуральное число Р. Переведите его в двоичную систему счисления.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.12.2009, 03:05     перевод в двоичную систему через классы
Посмотрите здесь:
Перевод в двоичную систему C++
Перевод числа в двоичную систему C++
Перевод с десятичной в двоичную систему C++
Перевод числа в двоичную систему C++
Перевод из десятичной в двоичную систему C++
C++ Перевод в двоичную систему счисления
Перевод чисел в двоичную систему счисления C++
Побитовые операции: Перевод в двоичную систему C++
C++ Перевод числа из десятичною в двоичную систему
Перевод из десятичной в двоичную систему счисления C++
C++ Перевод натурального числа в двоичную систему
C++ Перевод из восьмеричной в двоичную систему счисления

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Gravity
562 / 556 / 39
Регистрация: 29.01.2009
Сообщений: 1,274
11.12.2009, 04:02     перевод в двоичную систему через классы #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#include <iostream>
#include <string>
using std::cin;
using std::cout;
using std::endl;
using std::string;
 
class Binary
{
    int dec;
    string bin;
    public:
        Binary() : dec(0)
            { }
        Binary(int n) : dec(n)
            { }
        void dec2bin() {
            for(int n = dec; n != 0; n >>= 1)
                bin += (n & 1) ? "1" : "0";
        }
        void display() {
            string::reverse_iterator rit;
            for(rit = bin.rbegin(); rit < bin.rend(); rit++)
                cout << *rit;
        }
};
 
int main()
{
    int p = 14;
    Binary bcls(p);
 
    bcls.dec2bin();
    bcls.display();
    cout << endl;
    return 0;
}
easybudda
Эксперт С++
9456 / 5469 / 927
Регистрация: 25.07.2009
Сообщений: 10,495
11.12.2009, 10:35     перевод в двоичную систему через классы #3
Для разнообразия
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#include <iostream>
#include <string>
 
// Дано натуральное число Р. Переведите его в двоичную систему счисления.
 
class Binstr {
private:
    std::string str;
public:
    Binstr() : str("") {}
    Binstr(int val) {
        set(val);
    }
    void set(int val){
        if ( !val ){
            str = "0";
            return;
        }
        std::string tmp = "";
        std::string::reverse_iterator ri;
        do {
            tmp += val % 2 + '0';
        } while ( val /= 2 );
        str = "";
        for ( ri = tmp.rbegin(); ri != tmp.rend(); ++ri )
            str += *ri;
    }
    std::string get() const {
        return str;
    }
};
 
std::istream& operator >> (std::istream& ist, Binstr& bs) {
    int tmp;
    ist >> tmp;
    bs.set(tmp);
    return ist;
}
 
std::ostream& operator << (std::ostream& ost, const Binstr& bs) {
    ost << bs.get();
    return ost;
}
 
int main(){
    Binstr bs;
    
    while ( (std::cout << "> ") && (std::cin >> bs) )
        std::cout << bs << std::endl;
    
    return 0;
}
Yandex
Объявления
11.12.2009, 10:35     перевод в двоичную систему через классы
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru