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

Заменить 0 на 1 или 1 на 0 - C++

Войти
Регистрация
Восстановить пароль
 
Stowyn
0 / 0 / 0
Регистрация: 13.04.2010
Сообщений: 7
04.10.2010, 18:19     Заменить 0 на 1 или 1 на 0 #1
Битовая инверсия через If на с++

C++
1
2
3
4
5
6
7
8
9
10
11
bool a;
int main(int argc, char* argv[])
{
cout<<rus("Введите а")<<endl;
cout<<"a=";
cin>>a;
if (a=1) {a=0;}
else a=1;
cout<<rus("Инверсное a=")<<a;
getch();
};
ввожу a=1, выводит 0.
Ввожу a=0, выводит также 0.
Где ошибка? Может есть более простой аналог инверсии для булевых чисел?

P.s: пока печатал, понял ошибку)) а равно 1, должно выглядеть как a==1 ))
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.10.2010, 18:19     Заменить 0 на 1 или 1 на 0
Посмотрите здесь:

C++ Если в строке или столбце матрицы только одна единица, то заменить ее нулем
В каждой строке заменить все маленькие буквы после пробела или точки на большие C++
Заменить символами # символы, стоящие в строках или столбцах, где имеются цифры C++
C++ Помощь в работе со строками (Дана строка. Заменить в ней каждую из групп, содержащих 3 или более одинаковых символов многоточием)
C++ Заменить первое число нулем, если оно меньше или равно второму
Даны действительные числа. Заменить их нулём или единицей C++
Что заменить или дополнить, чтобы треугольник стал незаполненным? C++
C++ Если в строках или столбцах есть хотя бы один элемент равный нулю, заменить нулями все их элементы
C++ Убрать (сделать прозрачным) или заменить курсор в SMFL
C++ Вывести все элементы матрицы, сумма индексов которых кратна 3 или 7, остальные символы заменить пробелами
C++ Как удалить нужный элемент из списка или заменить этот элемент на другой?
В заданном двухмерном массиве заменить нулями элементы, стоящие в строках или столбцах, где есть нули C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ForEveR
Модератор
Эксперт С++
 Аватар для ForEveR
7955 / 4717 / 318
Регистрация: 24.06.2010
Сообщений: 10,525
Завершенные тесты: 3
04.10.2010, 18:20     Заменить 0 на 1 или 1 на 0 #2
C++
1
2
3
4
5
6
7
8
9
10
int main(int argc, char* argv[])
{
bool a;
cout<<rus("Введите а")<<endl;
cout<<"a=";
cin>>a;
a=!a;
cout<<rus("Инверсное a=")<<a;
getch();
};
П.С. Это логическая инверсия. Но не битовая никак.
IrishaIrinaChe
 Аватар для IrishaIrinaChe
28 / 28 / 1
Регистрация: 23.09.2010
Сообщений: 200
04.10.2010, 18:21     Заменить 0 на 1 или 1 на 0 #3
попробуй вместо
Цитата Сообщение от Stowyn Посмотреть сообщение
if (a=1)
поставить if(a==1)
KuKu
 Аватар для KuKu
1545 / 1023 / 69
Регистрация: 17.04.2009
Сообщений: 2,957
04.10.2010, 18:21     Заменить 0 на 1 или 1 на 0 #4
C++
1
if (a==1) {a=0;}
так
Stowyn
0 / 0 / 0
Регистрация: 13.04.2010
Сообщений: 7
04.10.2010, 18:24  [ТС]     Заменить 0 на 1 или 1 на 0 #5
Спасибо =)
M128K145
Эксперт C++
 Аватар для M128K145
8276 / 3495 / 142
Регистрация: 03.07.2009
Сообщений: 10,707
05.10.2010, 08:57     Заменить 0 на 1 или 1 на 0 #6
ИМХО, лучше так.
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
 
int main()
{
    char a;
    std::cout<<"Input A = ";
    std::cin>>a;
    if(true)
        std::cout<<"Inverse A = "<<(a^1);
    return 0;
};
Yandex
Объявления
05.10.2010, 08:57     Заменить 0 на 1 или 1 на 0
Ответ Создать тему
Опции темы

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