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

Сложение двух бинарных чисел в bool массивах - C++

Восстановить пароль Регистрация
 
FireProoF
17 / 17 / 1
Регистрация: 28.10.2012
Сообщений: 190
17.02.2014, 17:22     Сложение двух бинарных чисел в bool массивах #1
Здравствуйте! Как видно из сабжа, имеется два bool массива и нужно их сложить и записать в третий bool массив.
Нашел код под int, переделать в bool не удалось. Помогите.
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
53
54
55
56
57
58
int main()
{
    int nA = 8;//входные данные
  int nB = 8;
  int nC = 8;
  bool * binA = new bool[8];
  binA[0] = 1;
  binA[1] = 0;
  binA[2] = 0;
  binA[3] = 0;
  binA[4] = 0;
  binA[5] = 0;
  binA[6] = 0;
  binA[7] = 0;
 
  bool * binB = new bool[8];
  binB[0] = 0;
  binB[1] = 0;
  binB[2] = 0;
  binB[3] = 0;
  binB[4] = 0;
  binB[5] = 0;
  binB[6] = 0;
  binB[7] = 0;
  
  bool * binC = getBinSum(binA, nA, binB, nB, nC);
 
  for(int i=0;i<nC;i++) cout<<binC[i]<<"  ";
 
  cout<<endl;
  system("pause");
    delete [] binA;
    delete [] binB;
    delete [] binC;
}
 
 
bool * getBinSum(bool * a, int na, bool *b, int nb, int &nc)
{
    nc = 1 + ((na < nb) ? nb : na);
    bool *c = new bool[nc + 1];
    bool shift = 0;
    for(int i = 0; i < nc; i++)
    {
        c[nc - 1 - i] = shift;
        if(i < na)
            c[nc - 1 - i] += a[na - 1 - i];
        if(i < nb)
            c[nc - 1 - i] += b[nb - 1 - i];
        shift= 0;
        if(1 < c[nc - 1 - i])
        {
            c[nc - 1 - i] = 0;
            shift= 1;
        }
    }
    return c;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.02.2014, 17:22     Сложение двух бинарных чисел в bool массивах
Посмотрите здесь:

C++ Сложение двух чисел
сложение двух чисел в С C++
C++ Сложение двух больших чисел
Сложение двух длинных чисел. C++
C++ Сложение двух чисел
Сложение 2-х целых двоичных чисел, хранящихся в массивах A и B C++
C++ Сложение двух чисел в С++
Сложение двух чисел на TurboC++ C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 22:31. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru