從十進位制數的定義來看,任意一十進位制數都可以按全展開成n*10^n的形式,而對任意正整數i有:
10^i≡1(mod3), 10^i≡1(mod9)
所以在判斷某個等式(乘法,加法,減法計算)是否成立時,可以將等號兩邊的十進位制數按權展開,再判斷等式兩邊是否模9(或者模3)同餘,進而判斷等式是否成立。利用這一性質也可以判斷某一整數是否能被3或者9整除。
對於二進位制、十六進製制表示的正整數也可以用到同餘的性質。
下面是判斷能否被3整除的c++實現:
int j(long a)
if (t % 3 == 0)return 1;//能被3整除
else return 0;//不能被3整除
}
判斷等式是否成立(此處的例子是判斷形如:a*b?=c的式子,對於其他形式的等式於此類似):
#include using namespace std;
int main()
; for (int i = 0; i < 3; i++)
system("cls");
cout << "判斷等式:" << num[0] << "x" << num[1] << "?=" << num[2]<< endl;
for(int j = 0; j < 3; j++)
}if ((t[0]*t[1]) % 9 == (t[2] % 9) )cout << "原等式成立!";//if的條件也可以是(t1*t2)%9== (t3 % 3)
else cout<
}
等式 清華OJ 訓練營 c 實現
描述 有n個變數和m個 相等 或 不相等 的約束條件,請你判定是否存在一種賦值方案滿足所有m個約束條件。輸入第一行乙個整數t,表示資料組數。接下來會有t組資料,對於每組資料 第一行是兩個整數n,m,表示變數個數和約束條件的個數。接下來m行,每行三個整數a,b,e,表示第a個變數和第b個變數的關係 若...
回文數的判斷與實現(C )
1.回文數 正讀與反讀都一樣的字串或數字 非小數 2.平方回數 1 回文數,2 某個數的平方 3.實現方法 1 利用數的數學特性 2 使用字串的方法 3 使用棧 4.c 數的對稱性的特點 bool huiwen1 int x if n newed return true else return fa...
C實現CPU大小端判斷
所謂大端就是指高位值在記憶體中放低位位址,所謂小端是指低位值在記憶體中放低位位址。比如 0x12345678 在大端機上是 12345678,在小端機上是 78564312,而乙個主機是大端還是小端要看cpu型別以及執行在上面的作業系統。同一款cpu在不同的作業系統使用的大小端情況是不同的。當然我們...