【讀書筆記】趣味數(shù)學(xué)及編程拓展(第2版) 第3章
第3章 數(shù)式精彩紛呈
?
數(shù)式是由數(shù)字、運(yùn)算符與等號構(gòu)成的等式。
?
3.1 素因數(shù)分解式
在數(shù)學(xué)中,因數(shù)分解,又稱素因數(shù)分解,是把一個正整數(shù)寫成幾個約數(shù)的乘積。
如:
2016 = 2^5 X 3^2 X 7
201804 = 2^2 X 3 X 67 X 251
在代數(shù)學(xué)、密碼學(xué)、計算復(fù)雜性理論和量子計算機(jī)等領(lǐng)域中有重要意義,因數(shù)分解算法可以去百度了解,下面介紹最簡單的算法。
試除法是整數(shù)分解算法中最簡單和最容易理解的算法。給定分解的整數(shù)n,試除法是用小于等于n的每個素數(shù)去試除待分解的整數(shù)。如果找到一個數(shù)能夠整除除盡,這個數(shù)就是待分解整數(shù)的因子。
?
【編程題】
給定正整數(shù)n,分解素因數(shù),并按照從小到大寫為乘積式(指數(shù)形式)
【備注,當(dāng)n很大時,或者整數(shù)的素因數(shù)很大時,分解是艱難的】
?
3.2 埃及分?jǐn)?shù)式
埃及分?jǐn)?shù)是指分子是1的分?jǐn)?shù),也叫單位分?jǐn)?shù)。古代埃及人在進(jìn)行分?jǐn)?shù)運(yùn)算時,只使用分子是1的分?jǐn)?shù)。因此這種分?jǐn)?shù)也叫做埃及分?jǐn)?shù),或者叫單分子分?jǐn)?shù)。
聽過下面這個傳說故事嗎?
老人彌留之際,將家中11匹馬分給3個兒子,老大分二分之一,老二分四分之一,老三分六分之一。二分之一是5匹半馬,總不能把馬殺了吧,正在無奈之際,鄰居把自己家的馬牽來,老大二分之一,牽走了6匹;老二四分之一,牽走了3匹;老三六分之一,牽走了2匹。一共11匹,分完后,鄰居把自己的馬牽了回去。即12分之11等于二分之一加四分之一加六分之一。
?
把一個給定的整數(shù)或分?jǐn)?shù)轉(zhuǎn)化為若干不相同的埃及分?jǐn)?shù)之和。其中分解式中埃及分?jǐn)?shù)的個數(shù)最少,或在個數(shù)相同是埃及分?jǐn)?shù)中最大分母為最小的分解式稱為最優(yōu)分解式。
?
【編程題】
對給定的發(fā)呢書m/d分解為3個埃及分?jǐn)?shù)的分解式,其分母為a, b, c (a < b < c),最大分母不超過Z,輸出所有埃及分?jǐn)?shù)式。
?
3.3 橋本分?jǐn)?shù)式
把1,2, . . . 9這9個數(shù)填入下列算式的9個方格中(數(shù)字不得重復(fù)),使下列等式成立。
口/口口 + 口/口口 = 口/口口
如:4/56 + 7/98 = 3/21
【編程題】
橋本分?jǐn)?shù)式有多少不同的解(約定式左邊兩個分?jǐn)?shù)中分子小的在前)?
如果要求3個分?jǐn)?shù)為最簡分?jǐn)?shù)(即分子、分母沒有大于1的公因數(shù)),有多少中不同的解?
?
3.4 優(yōu)美和式與平方式
三項優(yōu)美和式:把1,2,……,9這9個數(shù)字分別填入以下和式的9個口中,為體現(xiàn)優(yōu)美,要求1~9這9個數(shù)字在式中出現(xiàn)一次且只出現(xiàn)一次,使得和式成立:
口口口 + 口口口 = 口口口
如: 235 + 746 = 981
【編程題】
三項優(yōu)美和式中右邊和的最小值為多大?有多少種不同的填法?(約定左邊兩個加數(shù)的前一個3位數(shù)的各位數(shù)字分別小于后一個3位數(shù)的相應(yīng)數(shù)字)
?
【擴(kuò)充】
四項優(yōu)美和式
口 + 口口 + 口口口 = 口口口
10數(shù)字優(yōu)美和式(0 ~ 9這10個數(shù)字填入)口口口 + 口口口 = 口口口口
?
優(yōu)美平方式
把1,2,……,9這9個數(shù)字分別填入以下和式的9個口中,數(shù)字在式中出現(xiàn)一次且只出現(xiàn)一次,使得等式成立,該等式稱為優(yōu)美平方式。 口口口口口口 = (口口口口)^2
?
3.5 優(yōu)美綜合運(yùn)算式
隱序四則運(yùn)算式
把0,1,2,……,9這10個數(shù)字不重復(fù)填入以下四則運(yùn)算式中的10個口中,使得等式成立。
口口口 + 口口÷口?- 口口?X 口 = 口
約定1,0不出現(xiàn)在式左邊的1位數(shù)種,且數(shù)字0不能位整數(shù)首位。
同時,要求式中的10個不重復(fù)的數(shù)字須符合指定隱序,指定隱序由輸入的整數(shù)決定。
如指定隱序為4位數(shù)2019,則該運(yùn)算式中數(shù)字的隱含順序:數(shù)字2須在0的左邊,數(shù)字0須在1的左邊,數(shù)字1須在9的左邊。如:267 + 80 ÷?5 - 31 X 9 =4
?
綜合運(yùn)算式
把0,1,2,……,9這10個數(shù)字不重復(fù)填入以下四則運(yùn)算式中的10個口中,使得等式成立。
口^口 + 口口÷口?- 口口口?X 口 = 口
約定1,0不出現(xiàn)在式左邊的1位數(shù)種,且數(shù)字0不能位整數(shù)首位。
?
【編程題】
探求指定隱序的優(yōu)美四則運(yùn)算式
?
3.6 變序數(shù)和式
變序數(shù)式由同一組數(shù)字通過不同排列所得的位數(shù)相同的整數(shù)。
?
變序數(shù)和式是由變序數(shù)組成的等式。
如:2385 + 2853 = 5238
?
【編程題】
探索n位變序數(shù)和式
?
3.7 逆序與變序倍積式
3.7.1 逆序倍積式
abcd X 4 = dcba
abcd X 9 = dcba
?
3.7.2 變序倍積式
定義:若n位整數(shù)u的k(2 ≤?k ≤?9)倍積s = uk是u的變序數(shù),則稱數(shù)式 uk = s為一個n位變序倍積式。
?
【編程題】
探索n位變序倍積式
?
3.8 對稱運(yùn)算式
對稱運(yùn)算式是含有指定運(yùn)算且等號左、右兩邊的數(shù)字與運(yùn)算符完全對稱的數(shù)學(xué)等式。
3.8.1 對稱乘積式
2+2位對稱乘積式:ab X cd = dc X ba
【編程題】
探索m+n位對稱乘積式
?
【拓展】
3.8.2 對稱四則運(yùn)算式
對稱運(yùn)算式中由加減乘除運(yùn)算
3.8.3 對稱綜合運(yùn)算式
對稱運(yùn)算式中由加減乘除和乘方運(yùn)算
?
3.9 分段和冪式
3.9.1 卡普雷卡平方式
卡普雷卡數(shù) 3025 = (30 + 25)^2
【編程題】
搜索n位卡普雷卡平方式
?
3.9.2 拓展分段和冪式
【編程題】
輸入位數(shù)n,段數(shù)r和冪指數(shù)m,搜索并輸出所有n位r段和m次冪式
?
【讀者體會】
這一章介紹了一些精彩的數(shù)式。
如果需要編程找到這些的數(shù)式。
編程設(shè)計要點。枚舉法。
1)枚舉。分析數(shù)式,計算并確定每個數(shù)據(jù)取值范圍,然后循環(huán)依次處理(可以利用數(shù)式的一些特征,減小搜索區(qū)間,減少運(yùn)行時間)
2)判定數(shù)式是否成立。依據(jù)數(shù)式定義,判定數(shù)式是否成立(注意,如果數(shù)式中有除法,一般去除除法,另外可用數(shù)組存儲數(shù)式中數(shù)據(jù)的每一位)
3)判別和輸出。依據(jù)定義數(shù)式和數(shù)式中的數(shù)是否滿足定義。(可以用數(shù)組記錄數(shù)和中間結(jié)果的每一位,便于判定)
?
?