Записать данное условие Pascal на С++
Решаю задачку из ЕГЭ. Есть проблема, я не могу нормально записать условие, чтобы выводило данную таблицу истинности.
Код прикладываю:
#include <iostream>
using namespace std;
int main()
{
int x,y,z,w;
for (x = 0; x <= 1; x++)
for (y = 0; y <= 1; y++)
for (z = 0; z <= 1; z++)
for (w = 0; w <= 1; w++)
if(((x && (~y)) || (y^z) || (~w)) == 0)
{
cout << x << w << z << y << endl;
}
return 0;
}
В чем проблема? В паскале я спокойно смог написать условие с помощью or,and,xor,not А в C++ "паскальсковский" not отсутствует?
Помогите с данной проблемой и как надо записать данное условие?
Ответы (1 шт):
Автор решения: Mikhailo
→ Ссылка
Вы же в С++ - никаких int, только bool:
bool F(bool X, bool Y, bool Z, bool W)
{
return (X && !Y) || (Y == Z) || !W;
}
