大數相除 (被除數範圍較小)

2021-08-21 20:00:16 字數 1642 閱讀 4736

手工計算除法的思路:湊整數,夠除即除,不夠除商0。

在下手寫**之前,首先想清楚需要用什麼儲存資料,以及儲存什麼型別的資料。

例題跟蹤

given two integers,aandb, you should check whetherais divisible bybor not. we know that an integerais divisible by an integerbif and only if there exists an integercsuch thata = b * c.

input

input starts with an integert (≤ 525), denoting the number of test cases.

each case starts with a line containing two integersa (-10200 ≤ a ≤ 10200)andb (|b| > 0, b fits into a 32 bit signed integer). numbers will not contain leading zeroes.

output

for each case, print the case number first. then print'divisible'ifais divisible byb. otherwise print'not divisible'.

sample input

6101 101

0 67

-101 101

7678123668327637674887634 101

11010000000000000000 256

-202202202202000202202202 -101

sample output

case 1: divisible

case 2: divisible

case 3: divisible

case 4: not divisible

case 5: divisible

case 6: divisible

#include

#include

#include

#include

#include

#include

using namespace std;

#define maxn 100000005

char s1[300];

char s3[300];

int main()

}if( ans == 0 )

else

printf("case %d: not divisible\n", cn++);}}

大數相除「高精度除低精度」和「高精度除高精度」

二 高精度除高精度 採用計算機做高精度除法時,模擬日常除法的步驟。但計算機不可能做 試商 這時,我們可以採用減法來模擬 試商 的過程。演算法的步驟如下 1 將除數移動和被除數對齊,位數不夠時,補0。2 利用被除數減去除數,一直減到被除數小於除數,減的次數,就是 試商 的結果,每移動一次。3 重複上述...

大數相除 保留小數

大數相除,保留小數後18位。例如 6666666666666 555555555555555 0.011999999999998812 輸入 如例子所示的兩個 大數 用空格隔開。數字範圍在 10 20 位之間。輸出 計算結果 小數點後面保留 18 位 include include using na...

db2相除等於零的處理方法 db2 相除等零

今天在db2下寫sql的時候遇到了這樣的乙個問題,分享點1 select field1 field2 from tb 當 field1的數值 field2的數值時,除法得出的結果是 1的,即0.這個時候在db2的環境下select出來的值是0 這個有兩個解決方法 方法1 db cfg的乙個引數min...