在我的編程類中,我們不允許使用|| & &和!爲這項任務。如果沒有使用!你怎麼能做一個「不」的陳述?另外,如何做& &將是有用的,但我想我可以弄明白。如何做到「不」沒有「!」 in C
(我們可以使用%/ * POW ABS LN + - )
在我的編程類中,我們不允許使用|| & &和!爲這項任務。如果沒有使用!你怎麼能做一個「不」的陳述?另外,如何做& &將是有用的,但我想我可以弄明白。如何做到「不」沒有「!」 in C
(我們可以使用%/ * POW ABS LN + - )
怎麼
1-(abs(abs(a+1) - abs(a-1))/2)
說明:
int not(int a){
int b = abs(a+1) - abs(a-1);
//b is either -2, 0 or 2 depending on whether a was <0, ==0 or >0.
int c = abs(b)/2;
//c is either 0 or 1 depending on whether b was zero or non-zero
return 1-c;
//return 1 if a is 0 or 0 if a is 1
}
!a
相當於1-a
,提供a
是保證只取的值根據不同的情況爲0或1
,事像:
if(a != b){
//do stuff
}
可以改寫爲:
if(a == b){} else {
//do stuff
}
if (!x) { }
相同
if (x==0) { }
等同於(X 0?1)(X!)或(X == 0)
確切回答問題:使用標準的宏not
,and
等只是不要忘了#include <iso646.h>
超級簡單簡單的方法,
If(x == y) {
//Don't do something
}
Else{
//do something
}
!(variable % 4)
可以寫成"\1\0\0"[abs(variable%4)]
。
變量%4只能爲變量的任何整數值導致整數值{-3,-2,-1,0,1,2,3}。
由於只有7個可能的值,我們可以使用結果查找表。
結果!這些值是:
爲了避免處理負索引,我們將腹肌將R所以我們只看到0-3。
一種簡單的方式來表示該查找表是一個文本字符串:「\ 1 \ 0 \ 0」。我們使用八進制轉義序列作爲值。在0值是1,在1的值是0,等C字符串有一個隱含的0(NUL)作爲最終的焦炭,因爲我們需要的最後一個值是0,我沒有明確包括。
如果不能使用方括號,你也可以把它寫像這樣:*("\1\0\0" + abs(variable%4))
請使用%/ * POW ABS +號法律公告 - 沒有如果,否則,或==對不起任何混亂。另外,值將是0到4 –
不斷變化的問題。它似乎仍然不適合我。 –
重寫!(變量%4)沒有!!只能使用%/ * LN ABS + - –