|
天文算法类 》 緝古算經 》
緝古算經
王孝通 Wang Xiaotong
唐武德八年(625)五月,王孝通撰《緝古算經》在長安成書,這是中國現存最早解三次方程的著作。
唐代立於學官的十部算經中,王孝通《緝古算經》是唯一的一部由唐代學者撰寫的。王孝通主要活動於六世紀末和七世紀初。他出身於平民,少年時期便開始潛心鑽研數學,隋朝時以歷算入仕,入唐後被留用,唐朝初年做過算學博士(亦稱算歷博士),後升任通直郎、太史丞。畢生從事數學和天文工作。唐武德六年(623),因行用的傅仁均《戊寅元歷》推算日月食與實際天象不合,與吏部郎中祖孝孫受命研究傅仁均歷存在的問題,武德九年(626)又與大理卿崔善為奉詔校勘傅仁均歷,駁正術錯三十餘處,並付太史施行。王孝通所著《緝古算術》,被用作國子監算學館數學教材,奉為數學經典,故後人稱為《緝古算經》。全書一捲(新、舊《唐書》稱四捲,但由於一捲的題數與王孝通自述相符,因此可能在捲次分法上有所不同)共二十題。第一題為推求月球赤緯度數,屬於天文歷法方面的計算問題,第二題至十四題是修造觀象臺、修築堤壩、開挖溝渠,以及建造倉廩和地窖等土木工程和水利工程的施工計算問題,第十五至二十題是勾股問題。這些問題反映了當時開鑿運河、修築長城和大規模城市建設等土木和水利工程施工計算的實際需要。
王孝通在《上緝古算經表》中說:"伏尋《九章》商功篇有平地役功受袤之術。至於上寬下狹,前高後卑,正經之內闕而不論。致使今代之人不達深理,就平正之間同欹邪之用。斯乃圓孔方枘,如何可安。臣晝思夜想,臨書浩嘆,恐一旦瞑目,將來莫睹。遂於平地之餘,續狹邪之法,凡二十術,名曰《緝古》這段話清楚地說明了他寫作本書的目的和研究成果。《緝古算經》涉及到立體體積計算、勾股計算、建立和求解三次方程x3+ax2+bx=A(a、b和A,非負),建立和求解雙二次方程x4+ax2=A(a、A,為正,這是一種特殊形式的四次方程)等數學內容。這類問題與解法大多相當復雜,就當時數學水平而言是相當睏難的,因此,在國子監算學館要學習三年,學習年限僅次於祖氏父子的《綴術》。例如該書第三題,假如從甲、乙、丙、丁四縣徵派民工修築河堤,這段河堤的橫截面是等腰梯形,已知兩端上下底之差,兩端高度差,一端上底與高度差,一端高度與堤長之差,且已知各縣出工人數,每人每日平均取土量、隔山渡水取土距離、負重運輸效率和築堤土方量,以及完工時間等,求每人每日可完成的土方量,整段河堤的土方量(即河堤體積)和這段河堤的長度、兩端高度、兩端上下底寬度,以及各縣完成的堤段長度等。前兩個問題是比較簡單的算術問題,後兩個問題則要經過較復雜的推導和幾何變換歸結為建立和求解形如x3+ax2+bx=A的三次方程。在《緝古算經》第十五題至二十題等屬於勾股算術的問題中,王孝通還創造性地把勾股問題引嚮三次方程,並與代數方法結合起來,擴大了勾股算術的範圍,發展了勾股問題的解題方法。在中國數學史上,《緝古算經》是我國現存最早介紹開帶從立方法的算書,它集中體現了中國數學家早在公元七世紀在建立和求解三次方程等方面所取得的重要成就。在西方,雖然很早就已知道三次方程,但最初解三次方程是利用圓錐麯綫的圖解法,一直到十三世紀意大利數學家菲波那契纔有了三次方程的數值解法,這比王孝通晚了六百多年。王孝通對自己的研究成果十分得意。他在《上緝古算經表》中批評時人稱之精妙的《綴術》曾不覺方邑進行之術全錯不通,芻甍方亭之問於理未盡",由於《綴術》已經失傳,王孝通的說法是否正確,已無從查考,但想來恐有失偏頗。他還宣稱,"請訪能算之人考論得失,如有排其一字,臣欲謝以千金",這又未免有些過於自信。以後,宋元數學家創立了天元術、四元術和高次方程數值解法等,取得了更加輝煌的成就。
緝古算經
提要
《緝古算經》一捲,唐王孝通撰。其結銜稱通直郎太史丞。其始末未詳。惟《舊唐書·律歷志》“戊寅歷”條下有武德九年校歷人算歷博士臣王孝通題,蓋即其人也。是書一名《緝古算術》,《唐書·藝文志》、《崇文總目》俱稱李淳風註。今案此本捲首實題孝通撰並註,則《唐志》及《總目》為誤。又《宋志》作一捲,《唐志》、鄭樵《藝文略》俱作四捲,王應麟《玉海》謂今亡其三。案《孝通原表》稱二十術,檢勘書內條目相同,並無闕佚,不知應麟何所據而云然也。書中大旨,以《九章·商功篇》有平地役功受袤之術,其於上寬下狹窄,前高後卑,闕而不論,世人多不達其理。因於平地之餘,續狹斜之法。凡推朔夜半時月之所離者一術,推仰觀臺及羨道高廣袤者一術,推築堤授工上下廣及高袤不同者一術,推築竜尾堤者一術,推穿河授工斜正袤上廣及深並漘上廣不同者一術,推四郡輸粟窖上下廣袤餘郡別出入及窖深廣者一術,推亭倉上下方高者一術,推芻薨、圓囤者各一術,推方倉圓窖對待者五術,推勾股邊積互求者六術,共合二十術之數。中間每以人戶道裏,大小遠近,及材物之輕重,工作之時日,乘除進退,參伍以得其法。頗不以深淺為次第,故讀者或不能驟通。而卒篇以後,由源竟委,端緒足尋,洵為思極毫芒,麯盡事理。唐代明算立學,習此書者以三年為限,亦知其術之精妙,非旦夕所剋竟其義矣。其書世罕流播,此乃宋元豐七年秘書監趙彥若等校定刊行舊本,常熟毛得之章邱李氏,而影抄傳之者。今詳加勘正,其文間有脫闕,不敢妄補。謹撮取其義,別加圖說,附諸本文之左,以便觀覽雲。
上輯古算經表
臣孝通言:臣聞九疇載敘,紀法著於彝倫;六藝成功,數術參於造化。夫為君上者,司牧黔首,布神道而設教,采能事而經綸,盡性窮源,莫重於算。昔周公製禮,有九數之名。竊尋九數,即《九章》是也。其理幽而微,其形秘而約,重句聊用測海,寸木可以量天,非宇宙之至精,其孰能與於此者?漢代張蒼刪補殘缺,校其條目,頗與古術不同。魏朝劉徽篤好斯言,博綜纖隱,更為之註。徽思極毫芒,觸類增長,乃造重差之法,列於終篇。雖即未為司南,然亦一時獨步。自茲厥後,不斷前蹤。賀循、徐嶽之徒,王彪、甄鸞之輩,會通之數無聞焉耳。但舊經殘駁,尚有闕漏,自劉已下,更不足言。其祖恆之《綴術》,時人稱之精妙,曾不覺方邑進行之術,全錯不通;芻亭方亭之問,於理未盡。臣今更作新術,於此附伸。臣長自閭閻,少小學算。鎸磨愚鈍,迄將皓首。鑽尋秘奧,麯盡無遺。代乏知音,終成寡和。伏蒙聖朝收拾,用臣為太史丞,比年已來,奉敕校勘傅仁均歷,凡駁正術錯三十余道,即付太史施行。伏尋《九章·商功篇》有平地役功受袤之術,至於上寬下狹、前高後卑,正經之內,闕而不論,致使今代之人不達深理,就平正之門,同欹邪之用。斯乃圓孔方柄,如何可安?臣晝思夜想,臨書浩嘆,恐一旦瞑目,將來莫睹,遂於平地之餘,續狹斜之法,凡二十術,名曰《緝古》。請訪能算之人,考論得失,如有排其一字,臣欲謝以千金。輕用陳聞,伏深戰悚。謹言。
緝古算經
假今天正十一月朔夜半,日在鬥十度七百分度之四百八十。以章歲為母,朔月行定分九千,朔日定小餘一萬,日法二萬,章歲七百,亦名行分法。今不取加時日度。問:天正朔夜半之時月在何處?(推朔夜半月度,舊術要須加時日度。自古先儒雖復修撰改製,意見甚衆,並未得算妙,有理不盡,考校尤難。臣每日夜思量,常以此理屈滯,恐後代無人知者。今奉敕造歷,因即改製,為此新術。舊推日度之術,巳得朔夜半日度,仍須更求加時日度,然知月處。臣今作新術,但得朔夜半日度,不須加時日度,即知月處。此新術比於舊術,一年之中十二倍省功,使學者易知)
答曰:在鬥四度七百分度之五百三十。
術曰(推朔夜半月度,新術不復加時日度,有定小餘乃可用之):以章歲減朔月行定分,餘以乘朔日定小餘,滿日法而一,為先行分。不盡者,半法已上收成一,已下者棄之。若先行分滿日行分而一,為度分,以減朔日夜半日所在度分,若度分不足減,加往宿度;其分不足減者,退一度為行分而減之,餘即朔日夜半月行所在度及分也(凡入歷當月行定分,即是月一日之行分。但此定分滿章歲而一,為度。凡日一日行一度。然則章歲者,即是日之一日行分也。今按:《九章·均輸篇》有犬追兔術,與此術相似。彼問:犬走一百走,兔走七十步,令免先走七十五步,犬始追之,問幾何步追及?答曰:二百五十步追及。彼術曰:以兔走減犬走,餘者為法。又以犬走乘兔先走,為實。實如法而一,即得追及步數。此術亦然。何者?假令月行定分九千,章歲七百,即是日行七百分,月行九千分。令日月行數相減,餘八千三百分者,是日先行之數。然月始追之,必用一日而相及也。令定小餘者,亦是日月相及之日分。假令定小餘一萬,即相及定分,此乃無對為數。其日法者,亦是相及之分。此又同數,為有八千三百,是先行分也。斯則異矣。但用日法除之,即四千一百五十,即先行分。故以夜半之時日在月前、月在日後,以日月相去之數四千一百五十減日行所在度分,即月夜半所在度分也)。
假令太史造仰觀臺,上廣袤少,下廣袤多。上下廣差二丈,上下袤差四丈,上廣袤差三丈,高多上廣一十一丈,甲縣差一千四百一十八人,乙縣差三千二百二十二人,夏程人功常積七十五尺,限五日役臺畢。羨道從臺南面起,上廣多下廣一丈二尺,少袤一百四尺,高多袤四丈。甲縣一十三鄉,乙縣四十三鄉,每鄉別均賦常積六千三百尺,限一日役羨道畢。二縣差到人共造仰觀臺,二縣鄉人共造羨道,皆從先給甲縣,以次與乙縣。臺自下基給高,道自初登給袤。問:臺道廣、高、袤及縣別給高、廣、袤各幾何?
答曰:
臺高一十八丈
上廣七丈,
下廣九丈,
上袤一十丈,
下袤一十四丈;
甲縣給高四丈五尺,
上廣八丈五尺,
下廣九丈,
上袤一十三丈,
下袤一十四丈;
乙縣給高一十三丈五尺,
上廣七丈,
下廣八丈五尺,
上袤一十丈,
下袤一十三丈;
羨道高一十八丈,
上廣三丈六尺,
下廣二丈四尺,
袤一十四丈;
甲縣鄉人給高九丈,
上廣三丈,
下廣二丈四尺,
袤七丈;
乙縣鄉人給高九丈,
上廣三丈六尺,
下廣三丈,
袤七丈。
術曰:以程功尺數乘二縣人,又以限日乘之,為臺積。又以上下袤差乘上下廣差,三而一,為隅陽幂。以乘截高,為隅陽截積。又半上下廣差,乘斬上袤,為隅頭幂。以乘截高,為隅頭截積。並二積,以減臺積,餘為實。以上下廣差並上下袤差,半之,為正數,加截上袤,以乘截高,所得增隅陽幂加隅頭幂,為方法。又並截高及截上袤與正數,為廉法,從。開立方除之,即得上廣。各加差,得臺下廣及上下袤、高。
求均給積尺受廣袤,術曰:以程功尺數乘乙縣人,又以限日乘之,為乙積。三因之,又以高幂乘之,以上下廣差乘袤差而一,為實。又以臺高乘上廣,廣差而一,為上廣之高。又以臺高乘上袤,袤差而一,為上袤之高。又以上廣之高乘上袤之高,三之,為方法。又並兩高,三之,二而一,為廉法,從。開立方除之,即乙高。以減本高,餘即甲高。此是從下給臺甲高。又以廣差乘乙高,以本高而一,所得加上廣,即甲上廣。又以袤差乘乙高,如本高而一,所得加上袤,即甲上袤。其上廣、袤即乙下廣、袤,臺上廣、袤即乙上廣、袤。其後求廣、袤,有增損者,皆放此(此應六因乙積,臺高再乘,上下廣差乘袤差而一。又以臺高乘上廣,廣差而一,為上廣之高。又以臺高乘上袤,袤差而一,為上袤之高。以上廣之高乘上袤之高,為小幂二。因下袤之高,為中幂一。凡下袤、下廣之高,即是截高與上袤與上廣之高相連並數。然此有中幂定有小幂一。又有上廣之高乘截高,為幂一。又下廣之高乘下袤之高,為大幂二。乘上袤之高為中幂一。其大幂之中又小幂一,復有上廣、上袤之高各乘截高,為中幂各一。又截高自乘,為幂一。其中幂之內有小幂一。又上袤之高乘截高,為幂一。然則截高自相乘,為幂二,小幂六。又上廣、上袤之高各三,以乘截高,為幂六。令皆半之,故以三乘小幂。又上廣、上袤之高各三,令但半之,各得一又二分之一,故三之,二而一,諸幂乘截高為積尺)。
求羨道廣、袤、高,術曰:以均賦常積乘二縣五十六鄉,又六因,為積。又以道上廣多下廣數加上廣少袤,為下廣少袤。又以高多袤加下廣少袤,為下廣少高。以乘下廣少袤,為隅陽幂。又以下廣少上廣乘之,為鱉隅積。以減積,餘三而一,為實。並下廣少袤與下廣少高,以下廣少上廣乘之,鱉從橫廉幂。三而一,加隅幂,為方法。又以三除上廣多下廣,以下廣少袤、下廣少高加之,為廉法,從。開立方除之,即下廣。加廣差,即上廣。加袤多上廣於上廣,即袤。加高多袤,即道高。
求羨道均給積尺甲縣受廣、袤,術曰:以均賦常積乘甲縣上十三鄉,又六因,為積。以袤再乘之,以道上下廣差乘臺高為法而一,為實。又三因下廣,以袤乘之,如上下廣差而一,為都廉,從。開立方除之,即甲袤。以廣差乘甲袤,本袤而一,以下廣加之,即甲上廣。又以臺高乘甲袤,本袤除之,即甲高。
假令築堤,西頭上、下廣差六丈八尺二寸,東頭上、下廣差六尺二寸。東頭高少於西頭高三丈一尺,上廣多東頭高四尺九寸,正袤多於東頭高四百七十六尺九寸。甲縣六千七百二十四人,乙縣一萬六千六百七十七人,丙縣一萬九千四百四十八人,丁縣一萬二千七百八十一人。四縣每人一日穿土九石九鬥二升。每人一日築常積一十一尺四寸十三分寸之六。穿方一尺得土八鬥。古人負土二鬥四升八合,平道行一百九十二步,一日六十二到。今隔山渡水取土,其平道衹有一十一步,山斜高三十步,水寬一十二步,上山三當四,下山六當五,水行一當二,平道踟躕十加一,載輸一十四步。減計一人作功為均積。四縣共造,一日役華。今從東頭與甲,其次與乙、丙、丁。問:給斜、正袤與高,及下廣,並每人一日自穿、運、築程功,及堤上、下高、廣各幾何?
答曰:
一人一日自穿、運、築程功四尺九寸六分;
西頭高三丈四尺一寸,
上廣八尺,
下廣七丈六尺二寸,
東頭高三尺一寸,
上廣八尺,
下廣一丈四尺二寸,
正袤四十八丈,
斜袤四十八丈一尺;
甲縣正袤一十九丈二尺,
斜袤一十九丈二尺四寸,
下廣三丈九尺,
高一丈五尺五寸;
乙縣正袤一十四丈四尺;
斜袤一十四丈四尺三寸,
下廣五丈七尺六寸,
高二丈四尺八寸;
丙縣正袤九丈六尺,
斜袤九丈六尺二寸,
下廣七尺,
高三丈一尺;
丁縣正袤四丈八尺,
斜袤四丈八尺一寸,
下廣七丈六尺二寸,
高三丈四尺一寸。
求人到程功運築積尺,術曰:置上山四十步,下山二十五步,渡水二十四步,平道一十一步,踟躕之間十加一,載輸一十四步,一返計一百二十四步。以古人負土二鬥四升八合,平道行一百九十二步,以乘一日六十二到,為實。卻以一返步為法。除,得自運土到數也。又以一到負土數乘之,卻以穿方一尺土數除之,得一人一日運動積。又以一人穿土九石九鬥二升,以穿方一尺土數除之,為法。除之,得穿用人數。復置運功積,以每人一日常積除之,得築用人數。並之,得六人。共成二十九尺七寸六分,以六人除之,即一人程功也。
求堤上、下廣及高、袤,術曰:一人一日程功乘總人,為堤積。以高差乘下廣差,六而一,為鱉幂。又以高差乘小頭廣差,二而一,為大臥塹頭幂。又半高差,乘上廣多東頭高之數,為小臥塹頭幂。並三幂,為大小塹鱉率。乘正袤多小高之數,以減堤積,餘為實。又置半高差及半小頭廣差與上廣多小頭高之數,並三差,以乘正袤多小頭高之數。以加率為方法。又並正袤多小頭高、上廣多小高及半高差,兼半小頭廣差加之,為廉法,從。開方立除之,即小高。加差,即各得廣、袤、高。又正袤自乘,高差自乘,並,而開方除之,即斜袤。
求甲縣高、廣、正、斜袤,術曰:以程功乘甲縣人,以六因取積,又乘袤幂。以下廣差乘高差為法除之,為實。又並小頭上下廣,以乘小高,三因之,為垣頭幂。又乘袤幂,如法而一,為垣方。又三因小頭下廣,以乘正袤,以廣差除之,為都廉,從。開立方除之,得小頭袤,即甲袤。又以下廣差乘之,所得以正袤除之,所得加東頭下廣,即甲廣。又以兩頭高差乘甲袤,以正袤除之,以加東頭高,即甲高。又以甲袤自乘;以堤東頭高減甲高,餘自乘,並二位,以開方除之,即得斜袤。若求乙、丙、丁,各以本縣人功積尺,每以前大高、廣為後小高、主廉母自乘,為方母。廉母乘方母,為實母(此平堤在上,羨除在下。兩高之差即除高。其除兩邊各一鱉腝,中一塹堵。今以袤再乘六因積,廣差乘袤差而一,得截鱉腝袤,再自乘,為立方一。又塹堵袤自乘,為幂一。又三因小頭下廣,大袤乘之,廣差而一,與幂為高,故為廉法。又並小頭上下廣,又三之,以乘小頭高為頭幂,意同六除。然此頭幂,本乘截袤。又袤乘之,差相乘而一。今還依數乘除一頭幂,為從。開立方除之,得截袤)。
求堤都積,術曰:置西頭高,倍之,加東頭高,又並西頭上下廣,半而乘之。又置東頭高,倍之,加西頭高,又並東頭上下廣,半而乘之。並二位積,以正袤乘之,六而一,得堤積也。
假令築竜尾堤,其堤從頭高、上闊以次低狹至尾。上廣多,下廣少,堤頭上下廣差六尺,下廣少高一丈二尺,少袤四丈八尺。甲縣二千三百七十五人,乙縣二千三百七十八人,丙縣五千二百四十七人。各人程功常積一尺九寸八分,一日役畢,三縣共築。今從堤尾與甲縣,以次與乙、丙。問:竜尾堤從頭至尾高、袤、廣及各縣別給高、袤、廣各多少。
答曰:
高三丈,
上廣三丈四尺,
下廣一丈八尺,
袤六丈六尺;
甲縣高一丈五尺,
袤三丈三尺,
上廣二丈一尺;
乙縣高二丈一尺,
袤一丈三尺二寸,
上廣二丈二尺二寸;
丙縣高三丈,袤一丈九尺八寸,
上廣二丈四尺。
求竜尾堤廣、袤、高,術曰:以程功乘總人,為堤積。又六因之,為虛積。以少高乘少袤,為隅幂。以少上廣乘之,為鱉隅積。以減虛積,餘,三約之,所得為實。並少高、袤,以少上廣乘之,為鱉從橫廉幂。三而一,加隅幂,為方法。又三除少上廣,以少袤、少高加之,為廉法,從。開立方除之,得下廣。加差,即高、廣、袤。
求逐縣均給積尺受廣、袤,術曰:以程功乘當縣人,當積尺。各六因積尺。又乘袤幂。廣差乘高,為法。除之,為實。又三因末廣,以袤乘之,廣差而一,為都廉,從。開立方除之,即甲袤。以本高乘之,以本袤除之,即甲高。又以廣差乘甲袤,以本袤除之,所得加末廣,即甲上廣。其甲上廣即乙末廣,其甲高即垣高。求實與都廉,如前。又並甲上下廣,三之,乘甲高,又乘袤幂,以法除之,得垣方,從。開立方除之,即乙袤。餘放此(此竜尾猶羨除也。其塹堵一,鱉腝一,並而相連。今以袤再乘積,廣差乘高而一,所得截鱉腝袤再自乘,為立方一。又塹堵袤自乘,為幂一。又三因末廣,以袤乘之,廣差而一,與幂為高,故為廉法)。
假令穿河,袤一裏二百七十六步,下廣六步一尺二寸;北頭深一丈八尺六寸,上廣十二步二尺四寸;南頭深二百四十一尺八寸;上廣八十六步四尺八寸。運土於河西岸造漘,北頭高二百二十三尺二寸,南頭無高,下廣四百六尺七寸五釐,袤與河同。甲郡二萬二千三百二十人,乙郡六萬八千七十六人,丙郡五萬九千九百八十五人,丁郡三萬七千九百四十四人。自穿、負、築,各人程功常積三尺七寸二分。限九十六日役,河漘俱了。四郡分共造漘,其河自北頭先給甲郡,以次與乙,合均賦積尺。問:逐郡各給斜、正袤,上廣及深,並漘上廣各多少?
答曰:
漘上廣五丈八尺二寸一分;
甲郡正袤一百四十四丈,
斜袤一百四十四丈三尺,
上廣二十六丈四寸,
深一十一丈一尺六寸;
乙郡正袤一百一十五丈二尺,
斜袤一百一十五丈四尺四寸,
上廣四十丈九尺二寸,
深一十八丈六尺;
丙郡正袤五十七丈六尺,
斜袤五十七丈七尺二寸,
上廣四十八丈三尺六寸,
深二十二丈三尺二寸,
丁郡正袤二十八丈八尺,
斜袤二十八丈八尺六寸,
上廣五十二丈八寸,
深二十四丈一尺八寸。
術曰:如築堤術入之(覆堤為河,彼註甚明,高深稍殊,程功是同,意可知也)。以程功乘甲郡人,又以限日乘之,四之,三而一,為積。又六因,以乘袤幂。以上廣差乘深差,為法。除之,為實。又並小頭上、下廣,以乘小頭深,三之,為垣頭幂。又乘袤幂,以法除之,為垣方。三因小頭上廣,以乘正袤,以廣差除之,為都廉,從。開立方除之,即得小頭袤,為甲袤。求深、廣,以本袤及深廣差求之。以兩頭上廣差乘甲袤,以本袤除之,所得加小頭上廣,即甲上廣。以小頭深減南頭深,餘以乘甲袤,以本袤除之,所得加小頭深,即甲深。又正袤自乘,深差自乘,並,而開方除之,即斜袤。若求乙、丙、丁,每以前大深、廣為後小深、廣,準甲求之,即得。
求漘上廣,術曰:以程功乘總人,又以限日乘之,為積。六因之,為實。以正袤除之,又以高除之,所得以下廣減之,餘又半之,即漘上廣。
假令四郡輸粟,斛法二尺五寸,一人作功為均。自上給甲,以次與乙。其甲郡輸粟三萬八千七百四十五石六鬥,乙郡輸粟三萬四千九百五石六鬥,丙郡輸粟,二萬六千二百七十石四鬥,丁郡輸粟一萬四千七十八石四鬥。四郡共穿窖,上袤多於上廣一丈,少於下袤三丈,多於深六丈,少於下廣一丈。各計粟多少,均出丁夫。自穿、負、築,鼕程人功常積一十二尺,一日役。問:窖上下廣、袤、深,郡別出人及窖深、廣各多少?
答曰:
窖上廣八丈,
上袤九丈,
下廣一十丈,
下袤一十二丈,
深三丈;
甲郡八千七十二人,
深一十二尺,
下袤一十丈二尺,
廣八丈八尺;
乙郡七千二百七十二人,
深九尺,
下袤一十一丈一尺,
廣九丈四尺;
丙郡五千四百七十三人,
深六尺,下袤一十一丈七尺,
廣九丈八尺;
丁郡二千九百三十三人,
深三尺,
下袤一十二丈,
廣一十丈。
求窖深、廣、袤,術曰:以斛法乘總粟,為積尺。又廣差乘袤差,三而一,為隅陽幂。乃置塹上廣,半廣差加之,以乘塹上袤,為隅頭幂。又半袤差,乘塹上廣,以隅陽幂及隅頭幂加之,為方法。又置塹上袤及塹上廣,並之,為大廣。又並廣差及袤差,半之,以加大廣,為廉法,從。開立方除之,即深。各加差,即合所問。
求均給積尺受廣、袤、深,術曰:如築臺術入之。以斛法乘甲郡輸粟,為積尺。又三因,以深幂乘之,以廣差乘袤差而一,為實。深乘上廣,廣差而一,為上廣之高。深乘上袤,袤差而一,為上袤之高。上廣之高乘上袤之高,三之,為方法。又並兩高,三之,二而一,為廉法,從。開立方除之,即甲深。以袤差乘之,以本深除之,所加上袤,即甲下袤。以廣差乘之,本深除之,所得加上廣,即甲下廣。若求乙、丙、丁,每以前下廣、袤為後上廣、袤,以次皆準此求之,即得。若求人數,各以程功約當郡積尺。
假令亭倉上小下大,上下方差六尺,高多上方九尺,容粟一百八十七石二鬥。今已運出五十石四鬥。問:倉上下方、高及餘粟深、上方各多少?
答曰:
上方三尺,
下方九尺,
高一丈二尺;
餘粟深、上方俱六尺。
求倉方、高,術曰:以斛法乘容粟,為積尺。又方差自乘,三而一,為隅陽幂。以乘截高,以減積,餘為實。又方差乘截高,加隅陽幂,為方法。又置方差,加截高,為廉法,從。開立方除之,即上方。加差,即合所問。
求餘粟高及上方,術曰:以斛法乘出粟,三之,以乘高幂,令方差幂而一,為實(此是大、小高各自乘,各乘取高。是大高者,即是取高與小高並)。高乘上方,方差而一,為小高。令自乘,三之,為方法。三因小高,為廉法,從。開立方除之,得取出高。以減本高,餘即殘粟高。置出粟高,又以方差乘之,以本高除之,所得加上方,即餘粟上方(此本術曰:上下方相乘,又各自乘,並以高乘之,三而一。今還元,三之,又高幂乘之,差幂而一,得大小高相乘,又各自乘之數。何者?若高乘下方,方差而一,得大高也。若高乘上方,方差而一,得小高也。然則斯本下方自乘,故須高自乘乘之,差自乘而一,即得大高自乘之數。小高亦然。凡大高者,即是取高與小高並相連。今大高自乘為大方。大方之內即有取高自乘幂一,隅頭小高自乘幂一。又其兩邊各有以取高乘小高,為幂二。又大小高相乘,為中方。中方之內即有小高乘取高幂一。又小高自乘,即是小方之幂又一。則小高乘大高,又各自乘三等幂,皆以乘取高為立積。故三因小幂為方,及三小高為廉也)。
假令芻甍上袤三丈,下袤九丈,廣六丈,高一十二丈。有甲縣六百三十二人,乙縣二百四十三人。夏程人功當積三十六尺,限八日役。自穿築,二縣共造。今甲縣先到。問:自下給高、廣、袤、各多少?
答曰:
高四丈八尺,
上廣三丈六尺,
袤六丈六尺。
求甲縣均給積尺受廣、袤,術曰:以程功乘乙縣人數,又以限日乘之,為積尺。以六因之,又高幂乘之,又袤差乘廣而一,所得又半之,為實。高乘上袤,袤差而一,為上袤之高。三因上袤之高,半之,為廉法,從。開立方除之,得乙高。以減甍高,餘即甲高。求廣、袤,依率求之(此乙積本倍下袤,上袤從之。以下廣及高乘之,六而一,為一甍積。今還元須六因之,以高幂乘之,為實。袤差乘廣而一,得取高自乘以乘三上袤之高,則三小高為廉法,各以取高為方。仍有取高為立方者二,故半之,為立方一。又須半廉法)。
假令圓囤上小下大,斛法二尺五寸,以率徑一周三。上下周差一丈二尺,高多上周一丈八尺,容粟七百五斛六鬥。今已運出二百六十六石四鬥。問:殘粟去口、上下周、高各多少?
答曰:
一周一丈八尺,
下周三丈,
高三丈六尺,
去口一丈八尺,
粟周二丈四尺。
求圓囤上下周及高,術曰:以斛法乘容粟,又三十六乘之,三而一,為方亭之積。又以周差自乘,三而一,為隅陽幂。以乘截高,以減亭積,餘為實。又周差乘截高,加隅陽幂,為方法。又以周差加截高,為廉法,從。開立方除之,得上周。加差,而合所問。
求粟去口,術曰:以斛法乘出斛,三十六乘之,以乘高幂,如周差幂而一,為實。高乘上周,周差而一,為小高。令自乘,三之,為方法。三因小高,為廉法,從。開立方除之,即去口(三十六乘訖,即是截方亭,與前方窖不別)。置去口,以周差乘之,以本高除之,所得加上周,即粟周。
假令有粟二萬三千一百二十斛七鬥三升,欲作方倉一,圓窖一,盛各滿中而粟適盡。令高、深等,使方面少於圓徑九寸,多於高二丈九尺八寸,率徑七,周二十二。問:方、徑、深多少?
答曰:
倉方四丈五尺三寸(容粟一萬二千七百二十二斛九鬥五升八合),
窖徑四丈六尺二寸(容粟一萬三百九十七石七鬥七升二合),
高與深各一丈五尺五寸。
求方、徑高深,術曰:十四乘斛法,以乘粟數,二十五而一,為實。又倍多加少,以乘少數,又十一乘之,二十五而一,多自乘加之,為方法。又倍少數,十一乘之,二十五而一,又倍多加之,為廉法,從。開立方除之,即高、深。各加差,即方徑(一十四乘斛法,以乘粟為積尺。前一十四餘,今還元,一十四乘。為徑自乘者,是一十一;方自乘者,是一十四。故並之為二十五。凡此方、圓二徑長短不同,二徑各自乘為方,大小各別。然則此塹方二丈九尺八寸,塹徑三丈七寸,皆成方面。此應塹方自乘,一十四乘之;塹徑自乘,一十一乘之,二十五而一,為隅幂,即方法也。但二隅幂皆以塹數為方面。今此術就省,倍小隅方,加差為矩袤,以差乘之為矩幂。一十一乘之,二十五而一。又差自乘之數,即是方圓之隅同有此數,若二十五乘之,還須二十五除。直以差自乘加之,故不復乘除。又須倍二廉之差,一十一乘之,二十五而一,倍差加之,為廉法,不復二十五乘除之也)。
還元,術曰:倉方自乘,以高乘之,為實。圓徑自乘,以深乘之,一十一乘,一十四而一,為實。皆為斛法除之,即得容粟(斛法二尺五寸)。
假令有粟一萬六千三百四十八石八鬥,欲作方倉四、圓窖三,令高、深等,方面少於圓徑一丈,多於高五尺,斛法二尺五寸,率徑七,周二十二。問:方、高、徑多少?
答曰:
方一丈八尺,
高深一丈三尺,
圓徑二丈八尺。
術曰:以一十四乘斛法,以乘粟數,如八十九而一,為實。倍多加少,以乘少數,三十三乘之,八十九而一,多自乘加之,為方法。又倍少數,以三十三乘之,八十九而一,倍多加之,為廉法,從。開立方除之,即高、深。各加差,即方徑(一十四乘斛法,以乘粟,為徑自乘及方自乘數與前同。今方倉四,即四因十四。圓窖三,即三因十一。並之,為八十九,而一。此塹徑一丈五尺,塹方五尺,以高為立方。自外意同前)。
假令有粟三千七十二石,欲作方倉一、圓窖一,令徑與方等,方於窖深二尺,少於倉高三尺,盛各滿中而粟適盡(圓率、斛法並與前同)。問:方、徑、高、深各多少?
答曰:
方、徑各一丈六尺,
高一丈九尺,
深一丈四尺。
術曰:三十五乘粟,二十五而一,為率。多自乘,以並多少乘之,以乘一十四,如二十五而一,所得以減率,餘為實。並多少,以乘多,倍之,乘一十四,如二十五而一,多自乘加之,為方法。又並多少,以乘一十四,如二十五而一,加多加之,為廉法,從。開立方除之,即窖深。各加差,即方、徑、高(截高五尺,塹徑及方二尺,以深為立方。十四乘斛法,故三十五乘粟。多自乘並多少乘之,為截高隅積,即二廉,方各二尺,長五尺。自外意旨皆與前同)。
假令有粟五千一百四十石,欲作方窖、圓窖各一,令口小底大,方面於圓徑等,兩深亦同,其深少於下方七尺,多於上方一丈四尺,盛各滿中而粟適盡(圓率、斛法並與前同)。問:方、徑、深各多少?
答曰:
上方、徑各七尺,
下方、徑各二丈八尺,
深各二丈一尺。
術曰:以四十二乘斛法,以乘粟,七十五而一,為方亭積。令方差自乘,三而一,為隅陽幂,以截多乘之,減積,餘為實。以多乘差,加幂,為方法。多加差,為廉法,從。開立方除之,即上方。加差,即合所問(凡方亭,上下方相乘,又各自乘,並以乘高,為虛。命三而一,為方亭積。若圓亭上下徑相乘,又各自乘,並以乘高,為虛。又十一乘之,四十二而一,為圓亭積。今方、圓二積並在一處,故以四十二復乘之,即得圓虛十一,方虛十四,凡二十五,而一,得一虛之積。又三除虛積,為方亭實。乃依方亭復問法,見上下方差及高差與積求上下方高術入之,故三乘,二十五而一)。
假令有粟二萬六千三百四十二石四鬥,欲作方窖六、圓窖四,令口小底大,方面與圓徑等,其深亦同,令深少於下方七尺,多於上方一丈四尺,盛各滿中而粟適盡(圓率、斛法並與前同)。問上下方、深數各多少?
答曰:
方窖上方七尺,
下方二丈八尺,
深二丈一尺,
圓窖上下徑、深與方窖同。
術曰:以四十二乘斛法,以乘粟,三百八十四而一,為方亭積尺。令方差自乘,三而一,為隅陽幂。以多乘之,以減積,餘為實。以多乘差,加幂,為方法。又以多加差,為廉法,從。開立方除之,即上方。加差,即合所問(今以四十二乘。圓虛十一者四,方虛十四者六,合一百二十八虛,除之,為一虛之積。得者仍三而一,為方亭實積。乃依方亭見差復問求之,故三乘,一百二十八除之)。
假令有句股相乘幂七百六十五分之一,弦多於句三十六十分之九。問:三事各多少?
答曰:
句十四二十分之七,
股四十九五分之一,
弦五十一四分之一。
術曰:幂自乘,倍多數而一,為實。半多數,為廉法,從。開立方除之,即句。以弦多句加之,即弦。以句除幂,即股(句股相乘幂自乘,與句幂乘股幂積等。故以倍句弦差而一,得一句與半差之共乘句幂,為方。故半差為廉法,從,開立方除之。按:此術原本不全,今依句股義擬補十三字)。
假令有句股相乘幂四千三十六五分之□,股少於弦六五分之一。問:弦多少?(按:此問原本缺二字,今依文補一股字,其股字上之□係所設分數,未便懸擬,今姑闕之)。
答曰:弦一百一十四十分之七。
術曰:幂自乘,倍少數而一,為實。半少,為廉法,從。開立方除之,即股。加差,即弦。
假令有句弦相乘幂一千三百三十七二十分之一,弦多股一、十分之一。問:股多少?
答曰:九十二五分之二。
術曰:幂自乘,倍多而一,為立幂。又多再自乘,半之,減立幂,餘為實。又多數自乘,倍之,為方法。又置多數,五之,二而一,為廉法,從。開立方除之,即股(句弦相乘幂自乘,即句幂乘弦幂之積。故以倍股弦差而一,得一股與半差□□□□□為方令多再自乘半之為隅□□□□□橫虛二立廉□□□□□□□□□□□ 倍之為從隅□□□□□□□□□□□多為上廣即二多□□□□□□□□□法故五之二而一)。
案:此術脫簡既多,法亦煩擾,宜雲幂自乘,多數而一,所得四之,為實。多為廉法,從。立方開之,得減差,半之,即股(幂自乘,與勾幂弦幂相乘積等。令勾幂變為股弦並乘股弦差,故差而一,所得乃股弦並乘弦幂)。
假令有股弦相乘幂四千七百三十九五分之三,句少於弦五十四五分之二。問:股多少?
答曰:六十八。
術曰:幂自乘,倍少數而一,為立幂。又少數再自乘,半之,以減立幂,餘為實。又少數自乘,倍之,為方法。又置少數,五之,二而一,為廉法,從。開立方除之,即句。加差,即弦。弦除幂,即股。
假令有股弦相乘幂七百二十六,句七、十分之七。問:股多少?
答曰:股二十六五分之二。
術曰:幂自乘,為實。句自乘,為方法,從。開方除之,所得又開方,即股(□□□□□□□□□□□□□□數亦是股□□□□□□□□□□□□為長以股□□□□□□□□□□□□得股幂又開□□□□□□□□□□□股北分母常……)
假令有股十六二分之一,句弦相乘幂一百六十四二十五分之十四。問:句多少?
答曰:句八、五分之四。
術曰:幂自乘,為實。股自乘,為方法,從。開方除之,所得又開方,即句。
緝古算經跋
按《唐書·選舉志》製科之目,明算居一,其定製雲:凡算學,孫子、五曹共限一歲,九章、海島共三歲,張邱建、夏侯陽各一歲,周髀、五經算共一歲,綴術四歲,緝古三歲,記遺三等數皆兼習之。竊惟數學為六藝之一,唐以取士共十經。周髀傢塾曾刊行之,餘則世有不能舉其名者。扆半生求之,從太倉王氏得孫子、五曹、張邱建、夏侯陽四種,從章邱李氏得周髀、緝古二種,後從黃俞邰又得九章。皆元豐七年秘書省刊板,字書端楷,雕鏤精工,真世之寶也。每捲後有秘書省官銜姓名一幅,又一幅宰輔大臣,自司馬相公而下俱列名於後,用見當時鄭重若此。因求善書者刻畫影摹,不爽毫末,什襲而藏之。但焉得海島、五經、綴術三種,竟成完璧,並得好事者刊刻流佈,俾數學不絶於世,所深願也。
康熙甲子仲秋汲古後人毛扆謹識
请欣赏:
请给我换一个看看! 拜托,快把噪音停掉!我读累了,想听点音乐或者请来支歌曲!
|
|
|
|
|