Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.09.2011, 17:25   #1
ips-123321
Новичок
Джуниор
 
Регистрация: 15.05.2010
Сообщений: 2
По умолчанию Булева алгебра

Добрый день всем!
Задача: Посчитать f2. x1,x2,x3 в ходе моих преобразований имеют вид:
001
000
011
010
101
100
111
110
(Исходя из отладки):
В момент когда, x1=1,x2=1,x3=1; f2 по коду должно стать false, но этого не происходит и я не понимаю почему.
Собственно сам код
Код:
#include <iostream>

using namespace std;

int main()
{
	int x1,x2,x3;
	bool f2=0;

	for(int Ini=0;Ini<8;Ini++){
		x1=(Ini&4);
		x1=(x1>>2);
		x2=(Ini&2);
		x2=(x2>>1);
		x3=(Ini&1);
		x3=~x3;
		x3=x3&00000001;

		f2 =(x1&x2&x3);
		f2 = ~f2;
		
		cout << f2 << endl;
		
	}

	system("Pause");
	return 0;
}
Жду помощи и объяснений!
Заранее спасибо!

Последний раз редактировалось Stilet; 11.09.2011 в 17:28.
ips-123321 вне форума Ответить с цитированием
Старый 11.09.2011, 17:30   #2
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

дык а где здесь хоть одна булева операция?
здесь только бинарные операции.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 11.09.2011, 17:33   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
		f2 =(x1&&x2&&x3);
		f2 = !f2;
А ты не булеву прикрутил а бинарную. Смотри на различия и изучай Си
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 11.09.2011, 18:28   #4
ips-123321
Новичок
Джуниор
 
Регистрация: 15.05.2010
Сообщений: 2
По умолчанию

Спасибо!
Что-то я стормозил ))
А вопрос остается, почему на этом моменте true на false не менялся, интересно ))
ips-123321 вне форума Ответить с цитированием
Старый 11.09.2011, 18:40   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
почему на этом моменте true на false не менялся, интересно
Исчо раз посмотри мой код и твой. ВНИМАТЕЛЬНО!!!
А потом перечитай в учебниках что означает ! и ~ в Си.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
булева алгебра iNfjkee Помощь студентам 0 10.02.2011 21:18
Булева Алгебра kikat Помощь студентам 13 10.01.2011 00:05
Булева матрица JustImba Общие вопросы C/C++ 4 26.12.2010 13:47
Алгебра Zmaxer Помощь студентам 4 12.10.2009 19:04
Булева Алгебра SPR//Rabitka Свободное общение 1 27.09.2009 12:01