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

Почему не работает этот кусок программы? - C++

Восстановить пароль Регистрация
 
ilizard
0 / 0 / 0
Регистрация: 03.12.2012
Сообщений: 50
01.04.2013, 05:24     Почему не работает этот кусок программы? #1
Дана цепочка 00000101001010
она записана в массив, каждая цифра отдельный элемент.
нужно инвертировать, не используя специальных средств и без побитовых операций.
Делаю так:
C++ (Qt)
1
2
3
4
5
6
7
for (i=0;i<14;i++){
 
if (c[i]==0) 
   c[i]=1;
     else 
      c[i]=0;
}
Не выходит.
даже так:
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
for (i=0;i<14;i++){
 
if (c[i]==0) 
   c[i]=1;
     else {
      arr[j]=i; 
      j++;
      n++;}
}
 
for (j=0;j<(n-1);j++)
 c[arr[j]]=0;
Все равно не выходит! Объясните, пожалуйста, почему.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.04.2013, 05:24     Почему не работает этот кусок программы?
Посмотрите здесь:

Обьясните кусок программы C++
C++ Нужен кусок программы.
C++ Здравствуйте, Почему не работает этот код?
C++ Почему этот код работает?
Почему не работает этот код? C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
01.04.2013, 05:33     Почему не работает этот кусок программы? #2
Откуда видно, что не выходит?
ninja2
 Аватар для ninja2
230 / 186 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
01.04.2013, 05:38     Почему не работает этот кусок программы? #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
#include <iostream>
using std::cout;
using std::endl;
 
int main()
{
    int c[5]={0,0,1,0,1};
    
    for(int i=0;i<5;i++)
    {
        cout <<c[i]<<endl;
    }
    cout <<endl;
    
    for(int i=0;i<5;i++)
    {
        if(c[i]==0)
            c[i]=1;
        else
            c[i]=0;
    }
    
    for(int i=0;i<5;i++)
    {
        cout <<c[i]<<endl;
    }
}
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
01.04.2013, 05:39     Почему не работает этот кусок программы? #4
И у меня...
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
#include <iostream>
#include <cstdlib>
using namespace std;
 
int main() 
{ 
    int c[14] = { 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0};
    
    for (int i = 0; i < 14; ++i)
        cout << c[i];
    cout << endl;   
    
    for (int i=0;i<14;i++)
    {
        if (c[i] == 0) 
        c[i] = 1;
        else 
        c[i] = 0;
    }
    
    for (int i = 0; i < 14; ++i)
        cout << c[i];
    
    cout << endl;
    system("pause");
    return 0;
}
Миниатюры
Почему не работает этот кусок программы?  
ilizard
0 / 0 / 0
Регистрация: 03.12.2012
Сообщений: 50
01.04.2013, 05:40  [ТС]     Почему не работает этот кусок программы? #5
ninja2, не знаю, у меня почему то все 1 выводит( Может, компилятор "тупит"?
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
01.04.2013, 05:43     Почему не работает этот кусок программы? #6
Цитата Сообщение от ilizard Посмотреть сообщение
Дана цепочка 00000101001010
она записана в массив, каждая цифра отдельный элемент.
Как записана?

Добавлено через 2 минуты
Цитата Сообщение от ilizard Посмотреть сообщение
у меня почему то все 1 выводит
Кода не видно, который выводит...
ilizard
0 / 0 / 0
Регистрация: 03.12.2012
Сообщений: 50
01.04.2013, 05:44  [ТС]     Почему не работает этот кусок программы? #7
alsav22, вот полный текст программы... Но по моему все дело в этом кусочке
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 <cstdlib>
#include <iostream>
#include <conio.h>
 
using namespace std;
 
int c[15],arr[15], i,a,d;
int b = 330;
int main()
{ a=b;
 cout << a << '\n';
 
if (a>0) cout << "0/";
 
for ( i=0;i<14;i++){
    c[i]= a%2;
    a = a / 2;}
for (i=14; i>0; i--)
    cout << c[i-1];
 
//задание 2
for (i=0;i<14;i++){
 
if (c[i]==0) 
   c[i]=1;
     else 
      c[i]=0;
}
for (i=14;i>0;i--)
   if (c[i]==0) c[i]=c[i]+1;
 
cout << '\n'<< "1/";
 
for (i=14; i>0; i--)
    cout << c[i-1];
 
getch();}
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
01.04.2013, 05:48     Почему не работает этот кусок программы? #8
Вывод после этого делается:
C++
1
2
for (i=14;i>0;i--)
   if (c[i]==0) c[i]=c[i]+1;
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.04.2013, 05:50     Почему не работает этот кусок программы?
Еще ссылки по теме:

C++ Сетевая модель( есть кусок программы
C++ Переделать кусок программы в функцию
обьясните пожалуйста что делает этот кусок кода с++ C++

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

Или воспользуйтесь поиском по форуму:
ilizard
0 / 0 / 0
Регистрация: 03.12.2012
Сообщений: 50
01.04.2013, 05:50  [ТС]     Почему не работает этот кусок программы? #9
alsav22, спасибо Вам большое, так бы сидела и не понимала где ошибаюсь))
Yandex
Объявления
01.04.2013, 05:50     Почему не работает этот кусок программы?
Ответ Создать тему
Опции темы

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