第一篇:錯位相減法畢業論文素材
導語:錯位相減法是一種常用的數列求和方法。應用于等比數列與等差數列相乘的形式。下面是小編收集整理的錯位相減法畢業論文素材,歡迎參考!
【錯位相減法畢業論文素材一】
一、問題的提出
a1(1-qn)我們都知道,高一課本第一冊(上)在推導等比數列前n項和公式Sn= 1-q,隨即在書中的第137頁復習參考題三B(q≠1)的過程中運用了著名的“錯位相減法”。
組中出現了運用該方法來解決的求和問題:
6、S=1+2x+3x2+??+nxn-1。這類數列的主要特征是:已知數列{Cn}滿足Cn=an?bn其中{an}等差,{bn}等比且公比不等于1,老師們形象地稱這類數列{Cn}為“等差乘等比型”數列。求這類數列前n項的和時通常在和式的兩邊都乘以組成這個數列的等比數列的公比,然后再將得到的新和式和原和式相減,轉化為同倍數的等比數列求和,這種方法即所謂的“錯位相減法”。而且近年來的各地乃至全國高考的試卷中頻頻出現此類型的數列的求和問題,解法當然是不變的“錯位相減法”,而且老師在平時的講題中也一再強調該類型的前n項和只能用錯位相減法來解決,似乎成了“自古華山一條道”的絕法。難道真的沒有其他的解決方法了嗎?這的確沒有讓我墨守成規,反而激起了我無限的探索欲。
二、特例解決帶來的啟發
當q≠1時等比數列{an}通項an=a1qn-1可變形為an=a1qn-1?a1-q=1(qn-1-qn)1-q1-q
于是前n項和Sn=a1a[(1-q1)+(q1-q2)+?+(qn-1-qn)]=1(1-qn)1-q1-q
受到上面變形的啟發,我想既然等比數列的通項可以裂成兩項的差的形式,那么公比不為1的“等差乘等比型”數列的通項如果也能裂成類似的形式,那么讓我苦思冥想的那個求和方法不就神奇的找到了嗎?在此之前,我們老師還一再強調此類數列的求和不能用裂項相消,如果這一設想成功的話,算不算是觀念和方法上的一次突破。
三、一個方法的發現
裂項求和也是數列求和中最常用的一種方法,它的本質是將數列中的每一項都化為兩項之差,并且前一項的減數恰好與后一項被減數相同,求和時中間項相抵消。
【錯位相減法畢業論文素材二】
數列求和是數列的重要內容之一,在現行高中教材中,只對等差數列和等比數列的求和公式進行了計算推導,而數列種類繁多,形式復雜,絕大多數既非等差數列又非等比數列,也就不能直接用公式來求解。很多同學遇到數列求和問題總是感到力不從心,甚至有的同學把它看作是自己的死穴,覺得即使思考也做不出來,何必耽誤時間,因此遇到這類問題就直接跳過。在這中間,錯位相減是一個比較重要的內容,也是一個及其有效的解決數列求和的簡便方法,但是由于它的計算量比較大,同時要反復列出幾個式子并且不斷求解,有的題目一眼看上去不容易找出公比,更加導致一些同學放棄或者只計算其中的一部分。實際上,通過分層次練習,總結經驗,并找到規律,這類問題的求解會變得相當的簡單。
一、錯位相減理論分析
錯位相減是高中數學教材中推導等比數列前n項和的一種思想方法,它在解決由一個等差數列和一個等比數列對應項之積所構成的數列求和,具有非常重要的意義。由于它的獨特性與實用性,并且與課本知識緊密結合,所以,在高考中占有十分重要的地位。它所遵從的思想是一種轉化的思想,經過轉化可以把它轉化成為等比問題求解。乘以相同的公比得到新式子,再同舊式子錯位相減,就得到了一個含有等比數列的等式,細心計算,便不難求解。
二、錯位相減題目舉例
首先,我們先看一道最簡單的例題,從簡單題中得到啟發。
例1.已知數列an=nλnλ,求數列的和。
解:∵Tn=λ+2λ2+…+n-1)λn-1+nλn,JY①
兩邊同時乘以λ,得
λTn=λ2+2λ3+…+n-1)λn+nλn+1,JY②
①-②,得
JZ1-λ)Tn=λ+λ2+…+λn-1+λn-nλn+1,JZ∴1-λ)Tn=SXλ1-λn)1-λSX)-nλn+1,JZ∴Tn=SXλ1-λn)1-λ)2SX)-SXnλn+11-λSX).這是一個最簡單的錯位相減,同時也是解決錯位相減問題的一個基礎題目。
下面,我們來看一道有些麻煩的題目。
例二.an=1-2n)2n,求Sn.解:由題意知,JZan=(1-2n)2n,JZ∴Sn=a1+a2+a3+…+an,即
DKSn=(1-2)2+(1-4)22+(1-6)23+…+(1-2n)2nDK)JY①
①×2得
DK2Sn=(1-2)22+(1-4)23+…+(3-2n)2n+(1-2n)2n+1DK)JY②
②-①得
JZSn=2+222+23+…+22n-(2n-1)2n+
1JZ=2+2SX4(1-2n-1)1-2SX)-(2n-1)2n+1
JZ=(1-n)2n+2+2n+1-6
例二是一個具體化的錯位相減問題,對于這些直接列出的題目,大多數的學生都可以做出來,出錯率也比較的低,但是,在如今這樣一個考驗學生綜合素質=的社會中,我們遇到的大多都是多個知識點結合的題目。下面我們通過一道高考題來進一步認識一下錯位相減。
例三.已知等差數列{an}的前3項和為6,前8項和為-4.(1)求數列的通項公式.(2)設bn=(4-an)qn-1q≠0,n∈求數列的前n項和.解:(1)設{an}的公差為d,則由已知得
JZJB{a1+a2+a3=6a1+a2+…+a8=-4,JB)即JB{3a1+3d=68a1+28d=-4,JB)
解得a1=3,d=-1,故an=3-n-1)=4-n.(2)由(1)知,bn=nqn-1,于是JZSn=1q0+2q1+3q2+…+nqn-1,若q≠1,上式兩邊同時乘以q.JZqSn=1q1+2q2+3q3+…+nqn-1,兩式相減得:
JZ(1-q)Sn=1+q1+q2+…+qn-1-nqn=SX1-qn1-qSX)-nqn.JZ∴Sn=SX1-qn(1-q)2SX)-SXnqn1-qSX)=SXnqn+1-(n+1)qn+1(1-q)2SX).若q=1,則Sn=1+2+3+…+n=SXnn+1)2SX),JZ∴Sn=JB{HL2SXn(n+1)2SX)(q=1)
SXnqn+1-(n+1)qn+1(1-q)2SX)q≠1)HL)JB)
針對這個問題,許多同學容易忽視對于q的討論致使題目出錯。這個問題的關鍵是對于等比數列的定義的認識,若是忽視了等比數列定義中對于公比的界定,則很容易導致問題出錯。我們回顧例一可以發現,在例一中我們對公比進行了限定,因此,在下面的解題中就不需要進行討論。
三、方法總結
A.分析題型,確定類型。錯位相減問題具有很強的規律性,當然也適應特定的題目,所以,在做題之前首先需要明確題目的類型,錯位相減法是否使用。首先,確定是否為數列類型的題目;其次再確定是否為求和問題;最后,通過觀察通項的類型,確定是否可以使用錯位相減法解決問題。錯位相減法是等差數列和等比數列的有效結合,即
JZTn=a1b1+a2b2+…+an-1bn-1+anbn
其中an為等差數列,bn為等比數列。
B.錯位相減的做題方法
以例1為例,即
Tn=λ+2λ2+…+(n-1)λn-1+nλnJY①
λTn=λ2+2λ3+…+(n-1)λn+nλn+1JY②
(1-λ)Tn=λ+λ2+…+λn-1+λn-nλn+1JY③
1.①×公比λ得②式(或乘以公比的倒數,解題方法類似);
2.①-②得③(③式為:留①頭,減②尾,中間對應次數相減的同系數);
3.③里面含有n+1項;
4.按照等比數列求和方法求③式的前n項的和,減去第n-1項;
5.③式兩邊同時除以SX1λ-1SX)得最后的結果。
在使用錯位相減求和時,一定要善于識別這類題目,準確的識別是正確解題的關鍵。同時要十分注意等比數列的公比為負數的情形,此外,一定要注意在書寫的時候注意將①②兩式的“錯項對齊”,即將相同冪指數的項對齊,這樣有一個式子(即式①)前面空出一項,另外一個式子(即式②)后面就會多出一項,①②兩式相減得到③式,在式③中除了第一項和最后一項,剩下的n-1項是一個等比數列。當然認真細致,悉心體會,記住規律,耐住性子也是相當重要的。
“知行統一”的重要性大家應該都知道,當我們記住了理論的知識,勤加練習,反復運用才會使我們事倍功半,恰巧,錯位相減正需要我們的大量練習,在不斷的練習,反復的刺激我們的記憶細胞下才有可能使我們在做題的時理論練習實際,減少出錯率。
第二篇:《數列求和之錯位相減法》教學設計
《數列求和之錯位相減法》教學設計
教學目標:
讓學生能夠理解錯位相減法,并能夠應用錯位相減法求數列的前n項和。教學重點: 錯位相減法的應用 教學難點:
錯位相減法的計算過程 教學內容:
一、課前復習
回顧等比數列前n項和的求和公式:
設計意圖:由于應用錯位相減法解題時必定會使用等比數列前n項和的通項公式求和,因此有必要做好復習鋪墊工作。
二、問題探究
數列{an}的通項公式an?n,數列{bn}的通項公式bn?2n,求數列{an?bn}的前n項和。設計意圖:由具體問題引入課題,引導學生觀察題目中所求數列通項的特點,即“等差×等比”型。
解決方法:展示并敘述“錯位相減法”的具體操作步驟,具體如下:
由此歸納“錯位相減法”核心要領:乘公比,錯位,相減。設計意圖:整個過程的完整展示,幫助學生建立一個清晰的計算步驟,以此學會解決此類型的數列求和問題,主要體現設計的實用性。
三、當堂練習
設計意圖:為了鞏固復習錯位相減法,讓學生對不同“長相”,但都屬于“等差×等比”型題目能熟悉,從而確信并有意識強化學習。
四、歸納小結
1、首先進行使用“錯位相減法”時易出錯的4點進行歸納強調。
2、再整體上對此段的學習進行小結,再次提升
設計意圖:有學習必有總結。任何一種解題方法都有其使用條件、適用范圍,以及易錯點等等。學生通過學習,也能自覺感知并總結,由此深化數學解題方法的學習。
五、作業布置
設計意圖:課下練習,進一步鞏固掌握“錯位相減法”
第三篇:常規數列求和之錯位相減法教案
常規數列求和之錯位相減法
例
1、已知數列{an}前n項和為Sn,且a1=1,an+1=2Sn.
(1)證明數列{Sn}是等比數列;
(2)求數列{an}的通項公式;
(3)求數列{n·an}的前n項和Tn.
例
2、已知數列{an}滿足Sn=2an+3n-12.
(1)證明數列{an-3}是等比數列;
(2)求數列{an}的通項公式;
(3)求數列{n·an}的前n項和Tn.
第四篇:高中數學常用方法總結——如何將錯位相減法所得結論的公式化
錯位相減法的簡潔結論----公式化
錯位相減法是推導等比數列前n項和公式的最簡潔的方法之一,錯位相減法還可以推廣到求數列{an?bn}的前項和,其中{an}是等差數列,公差為不為0,{bn}是等比數列,公比不為1.例:數列{an}的前n項和為Sn,a1?1,an?1?2Sn,求數列{nan}的前n項和Tn.分析:當n?1時,由an?1?2Sn得an?2Sn?1,兩式相減得an?1?3an,所以數列{an}從第二項開始成等比,又a2?2S1?2a1?2,所以an?2?3n?2,因為a1?1不滿足此式,所以nan???1,n?1?2n?3n?2,n?1.Tn?1?4?30?6?31?8?32????2(n?2)?3n?4?2(n?1)?3n?3?2n?3n?23Tn?3?4?31?6?32?8?33???????2(n?2)?3n?3?2(n?1)?3n?2?2n?3n?1兩式相減: ?2Tn?2?2(31?32?33???3n?3?3n?2)?2n?3n?1
3?3n?1?2?2??2n?3n?1?(?2n?1)?3n?1?1
1?3所以: Tn?(n?)?3n?1?.又因為T1?a1?1也滿足上式,所以: Tn?(n?)?3n?1?,n?N?
錯位相減法程序化的步驟讓學生容易掌握和理解,但因計算量較大,學生常會因為計算的原因導致出錯.如果錯位相減法可以簡化為一種形式簡單的結論,我們又何樂而不為呢? 筆者在教學過程中發現,通項形如an?(xn?y)?qn,(q?1,q?0,x?0)的數列,其前n項和必定形如Sn?(An?B)?qn?1?C,這個結論可以由錯位相減法證明,就留給讀者去證了,我簡單從另外一個方法求得A,B, 因為: Sn?Sn?1?[(An?B)?qn?1?C]?[(An?A?B)?qn?C]
12121212?[A(q?1)n?B(q?1)?A]?qn?(xn?y)?qn
對比系數得: A?xy?A,B?,此時C可以由S1?a1求得.q?1q?1上例中,設bn?nan,則當n?1時,b1?1,當n?1時,bn?2n?3n?2.根據公式有: A?20?111?1,B???,所以Tn?(n?)?3n?1?C, 3?13?1221212又因為: T1??C?b1?1?C? 所以:Tn?(n?)?3n?1?,n?N?
解題思路和過程固然是重要的,但簡潔的結論也很重要,它可以使我們少走彎路,少做重復的工作.單方面去強調過程或結論都是不可取的,在教學中,應讓學生掌握好錯位相減法的思想精髓上,再引出這個結論,才不會顧此失彼.從例題中可以看出,即使所求數列的首項不滿足(xn?y)?qn,也不會影響使用公式求和,但若所求數列前k項不滿足(xn?y)?qn,則求和結果必須加上條件n?k,此時公式中的C值該由前k項和求出,當n?k時,前n
1212項和須看具體情形而定.
第五篇:畢業論文素材
九江職業技術學院
Jiujiang Vocational & Technical College
學生姓名:專業班級:論文名稱:指導教師:
羅
林 計算機1201班 教材管理系統
于
芬
摘要
教材管理系統是專為中小學校便于管理建立的管理應用系統。是面向一種異地分布的學校教材管理系統,支持供需鏈管理的計劃和控制系統,系統還包括訂單查詢和管理以及各種綜合查詢等管理功能。
【關鍵詞】 進庫 教材領取 出庫 Delphi 7.0 教材管理系統
引言
隨著當今教育制度的改革,辦事的快捷與高效成了急需解決的問題,而高校教材管理是高校教學管理工作中的一項重要任務,教材管理水平和工作效率的高低是反映高校教學和科研管理水平的重要標志。
隨著辦學規模的不斷擴大,教材種類和數量也急劇上升,教材管理工作量之大,任務繁重,給教材購買和管理部門人員帶來很多困難,差錯率高,到書率低,對學校教學和科研工作產生較大的影響。
為了實現教材管理工作現代化、系統化、和規范化,管理水平上一個臺階,因此等待著一套使其更加便利的系統出現。
本系統對高校教材購銷業務的具體情況和需求進行設計開發。本系統清晰明了地將各個管理細節綜合起來,將分散的操作流程合并,其實用、簡潔、方便的操作方法與界面能讓非計算機專業的人員輕松上手。同時又便于數據庫管理人員對數據庫進行修改,節省不少人力、物力。系統分析 需求分析 開發背景分析
每學期工作人員根據各系所填課目信息和教材信息,以及教務處的選課信息,以班級為單位發放每班的下學期的教材使用信息,由各系將學生所需書目統計后上交圖教材科,教材科工作人員按書目,出版社等信息,做好統計依次向出版社發放訂購書目信息。當收到教材和課本單價后,做好入庫的統計,開學后,發放班級收費信息,有各系向學生收費,并上交教材科工作人員,教材科同時做好與出版社的款目的核對與結帳。
? 這是工作的大致內容,但是也出現許多的例外。
? 當訂購教材出版社不在印制的時候,由出版社將此信息發還教材科,教材科依次向各系教師征求教材修改信息,再尋找其他出版社。? 班委統計數目與領書時的書目不合,原因部分學生在中途取消書目的訂購,教材科處理辦法:同意修改書的數目,但是余下的書作為零售,或轉入下一年的定書中。
? 班級領書結束后,有部分學生需要退書,買書,原因:各系工作失誤多定或少定,以及個人要求的改變,教材科處理方法:同意買書或退書,買書以零售價,退書以進價,同時開具發票。
功能分析
通過調查,要求系統需要有以下功能:
? 要有良好的人機界面,給人一種美觀上的享受。? 支持多人操作,要求有較好的權限分配功能。? 在教材進庫和領數(出庫),要求詳細明確。? 為了方便用戶查詢,要求支持多條件查詢。
? 明確的了解班級信息以及班級領書,同時也可以查詢教師領書的情況。? 支持多種報表打印。數據分析
一.數據主要有以下: 1.靜態數據 1)班級具體信息 2)班級繳費情況 3)教材信息 4)退回書費信息 5)單位(院系)信息 6)教師領書信息 7)學生領書 8)書費信息 2.動態數據 1)管理員密碼 2)書本單價 3)書本庫存 4)操作員密碼 二.數據庫描述如下:
1.本系統主要用的數據庫是SQL Server 2000。
2.本系統主要用到的數據表有:ym(用戶信息表)、banji(班級信息表)、caozuoyuan(操作員信息表)、jiaocai(教材信息表)、danwei(單位信息表)、shufei(書費信息表)、tuihuishufei(退回書費信息表)、xueshenglingshu(學生領書信息表)、xueshengshufei(學生書費信息表)、jiaoshils(教師領書信息表)、jiaocairuku(教材入庫信息表)。
3.數據關系表框架如下:
關系表1
關系表2 可行性分析 經濟可行性分析 首先開發一個教材管理系統它是都具有市場,市場的經濟潛力有多大,開發過程中所需要的人力、物力、財力。同時在開發任何一個基于計算機的系統,都會受到時間和資源上的限制。因此,在接受任何一個項目開發任務之前,必須根據客戶可能提供的時間和資源條件進行可行性分析,以減少項目開發風險,避免人力、物力和財力的浪費。
技術和具體實現中采集的關鍵技術分析
本系統數據庫采用目前比較流行的Microsoft SQL Server,該數據庫系統在安全性、準確性、運行速度方面有絕對的優勢,并且處理數據庫量大,效率高;開發工具采用Delphi7,Delphi7是目前應用最廣泛的數據庫系統開發工具,可以快速開發Windows應用程序??傮w設計 項目規劃
教材管理系統是一個典型的數據庫應用程序,由登錄模塊、主界面、系統管理模塊、書費管理模塊、出入庫模塊、綜合查詢、幫助。特規劃功能模塊如下:
? 系統管理模塊
系統管理模塊的主要實現操作員管理、密碼修改、班級管理、單位信息和用戶管理等管理。
? 書費管理模塊
書費管理模塊主要管理學校繳納書費和退回書費管理。? 出入庫管理模塊
出入庫管理模塊主要管理教材入庫、學生領書、教師領書等功能。? 綜合查詢管理模塊
總和管理模塊主要實現庫存貨品瀏覽、書費的查詢。功能框架
圖1 功能框圖
系統設計 設計目標
根據企業的需求和進銷存管理的特點,該系統實施后,應達到以下目標: ? 界面美觀友好、信息查詢靈活、方便、快捷、準確。? 強大的庫存預警功能,在意外中將損失降到最低。? 提高工作效率,降低成本。? 往來賬目詳細瀏覽。
? 對用戶輸入的數據進行過濾,當輸入有誤時提示用戶。? 數據保密性強,用戶對應不同的操作級別。
? 系統最大限度地實現了易安裝性、易維護性和易操作性。? 系統運行穩定、安全可靠。開發及運行環境
系統開發平臺:Delphi7.0。
數據庫管理系統軟件:SQL Server 2000。運行平臺:Windowsxp/ Windows2000。分辨率:最佳效果1024*768。邏輯結構設計
本系統數據庫采用SQL Server 2000數據庫,數據庫名稱為“教材管理系統”。數據庫教材管理系統中包含11個表。數據庫中的數據表如下:
1.操作員信息表(cuozuoyuan)
2.班級信息表(banji)
3.單位信息表(danwei)
4.教材信息表(jiaocai)
5.教師領書信息表(jiaoshils)
6.書費信息表(shufei)
7.退回書費信息(tuihuishufei)
8.學生領書信息表(xueshenlingshu)
9.學生書費信息表(xueshengshufei)
10.用戶信息表(ym)
11.教材入庫信息表(jiaocairuku)
主要功能模塊設計
主窗口目標
主窗體是程序的控制中心,其他模塊都是通過主窗體來調用,所以主窗體的界面要設計的美觀易操作。教材管理管理系統主窗體運行結果如圖2所示:
圖2 主窗體運行的結果
基礎窗體創建
創建基礎窗體主要為了提高開發速度和代碼的利用率,從基礎窗體繼承的子窗體具有基礎窗體的全部功能。基礎窗體如圖3所示:
圖3 基礎窗體
基礎窗體設計步驟
添加一個新窗體,命名為“F_base”,設置其BorderStyle屬性為“bsDialog”;KeyPreview屬性為“True”。
相關程序代碼如下: 在窗體的OnKeyPress事件處理過程中設置〈Enter〉鍵代替〈Tab〉鍵。代碼如下:
procedure TF_base.FormKeyPress(Sender: TObject;var Key: Char);begin
if Key=#13 then
perform(WM_NEXTDLGCTL,0,0);end;系統管理模塊設計
系統管理模塊的主要實現操作員管理、密碼修改、班級管理、單位信息和用戶管理等管理。操作員管理
當你單擊“系統管理”菜單中的“操作員管理”時,就會出現“操作員管理”窗體。通過本窗體可以進行的新增、刪除、修改等操作,操作管理窗體如圖4所示:
圖4操作員管理窗體
相關程序代碼如下:
procedure Tf_czy.Button2Click(Sender: TObject);begin if application.MessageBox('您確認要退出嗎?','刪除退出',mb_okcancel)=idok then begin
f_xitong.show;//顯示窗體
f_czy.hide;//隱蔽窗體
end;end;procedure Tf_czy.Button1Click(Sender: TObject);begin
case radiogroup1.ItemIndex of
2:
if application.MessageBox('您確認要刪除該信息嗎?','刪除確認',mb_okcancel)=idok then
//提示是否要刪除該信息
begin
t6.Delete;
edit1.Text :='';
edit2.Text :='';
edit3.Text :='';
edit4.Text :='';
edit5.Text :='';
end;//如果刪除了該信息,文本框內的內容清空
1:
begin
t6.Edit;
t6['操作員']:=edit1.Text;
t6['密碼']:=edit2.Text;
t6['所屬部門']:=edit3.Text;
t6['操作員信息']:=edit4.Text;
t6['日期']:=edit5.Text;
t6.Post;
end;//添加信息,之后更新
0:
begin
t6.Append;
t6['操作員']:=edit1.Text;
t6['密碼']:=edit2.Text;
t6['所屬部門']:=edit3.Text;
t6['操作員信息']:=edit4.Text;
t6['日期']:=edit5.Text;
t6.Post;
edit1.Text :='';
edit2.Text :='';
edit3.Text :='';
edit4.Text :='';
edit5.Text :='';
end;end;end;procedure Tf_czy.FormCreate(Sender: TObject);begin
t6.Open;//打開表6 end;procedure Tf_czy.DBGrid1CellClick(Column: TColumn);begin
edit1.Text:=DBGrid1.Fields[0].Value;
edit2.Text:=DBGrid1.Fields[1].Value;
edit3.Text:=DBGrid1.Fields[2].Value;
edit4.Text:=DBGrid1.Fields[3].Value;
edit5.Text:=DBGrid1.Fields[4].Value;end;end.班級管理
當你單擊“系統管理”菜單中的“班級管理”時,就會出現“班級管理”窗體。通過本窗體用戶可以進行班級的新增、刪除、修改等操作,,班級管理如圖5所示:
圖5班級管理系統窗體
相關程序代碼如下:
procedure Tf_bj.Button4Click(Sender: TObject);begin if application.MessageBox('您確認要退出嗎?','刪除退出',mb_okcancel)=idok then
begin
f_xitong.show;//顯示窗體
f_bj.Hide;//隱蔽窗體
end;end;procedure Tf_bj.FormCreate(Sender: TObject);begin
t2.Open;//打開表2
edit1.Text :=t2['班級名'];
edit2.Text :=t2['入學時間'];
edit3.Text :=t2['班長'];
edit4.Text :=t2['班主任'];
edit5.Text :=t2['班級人數'];
edit6.Text :=t2['所學專業'];
edit7.Text :=t2['所在院系'];
edit8.text:=t2['班長聯系電話'];
edit9.text:=t2['班主任聯系電話'];end;//在文本框中顯示數據表中的內容
procedure Tf_bj.DBGrid1CellClick(Column: TColumn);begin
edit1.Text:=DBGrid1.Fields[0].Value;
edit2.Text:=DBGrid1.Fields[1].Value;
edit3.Text:=DBGrid1.Fields[3].Value;
edit4.Text:=DBGrid1.Fields[5].Value;
edit5.Text:=DBGrid1.Fields[11].Value;
edit6.Text:=DBGrid1.Fields[10].Value;
edit7.Text:=DBGrid1.Fields[2].Value;
edit8.Text:=DBGrid1.Fields[4].Value;
edit9.Text:=DBGrid1.Fields[6].Value;end;procedure Tf_bj.Button1Click(Sender: TObject);begin
t2.Append;
t2['班級名']:=edit1.Text;
t2['入學時間']:=edit2.Text;
t2['班長']:=edit3.Text;
t2['班主任']:=edit4.Text;
t2['班級人數']:=edit5.Text;
t2['所學專業']:=edit6.Text;
t2['所在院系']:=edit7.Text;
t2['班長聯系電話']:=edit8.Text;
t2['班主任聯系電話']:=edit9.Text;
t2.Post;//添加信息
edit1.Text :='';
edit2.Text :='';
edit3.Text :='';
edit4.Text :='';
edit5.Text :='';
edit6.Text :='';
edit7.Text :='';
edit8.Text :='';
edit9.Text :='';end;procedure Tf_bj.Button2Click(Sender: TObject);begin
if application.MessageBox('您確認好刪除該信息嗎?','確認刪除',mb_okcancel)=IDOK then
begin
t2.Delete;
edit1.Text :='';
edit2.Text :='';
edit3.Text :='';
edit4.Text :='';
edit5.Text :='';
edit6.Text :='';
edit7.Text :='';
edit8.Text :='';
edit9.Text :='';
t2.First;
end;//刪除信息 end;procedure Tf_bj.Button3Click(Sender: TObject);begin
t2.Edit;
t2['班級名']:=edit1.Text;
t2['入學時間']:=edit2.Text;
t2['班長']:=edit3.Text;
t2['班主任']:=edit4.Text;
t2['人數']:=edit5.Text;
t2['所學專業']:=edit6.Text;
t2['所在院系']:=edit7.Text;
t2['班長聯系電話']:=edit8.Text;
t2['班主任聯系電話']:=edit9.Text;
t2.Post;//修改信息
self.DBGrid1.Refresh;end;end.密碼修改和單位信息
當單擊“系統管理”菜單中的“密碼修改”或者“單位信息”時,就會出現“密碼修改”或者是“單位信息”窗體。通過本窗體用戶可以進行對密碼的修改,單位信息查看、修改、刪除等。密碼修改和單位信息如圖6和7所示:
圖6 密碼修改窗體
圖7 單位信息窗體
密碼修改窗體相關程序代碼如下: procedure Tf_xiugai.Button1Click(Sender: TObject);begin
try
t.Filter :='用戶名='''+edit1.Text +'''';
t.Filtered:=true;
t.Open;
except
application.MessageBox('用戶名不對','請重新輸入',mb_ok);
application.Terminate;
end;
if t.RecordCount =1 then
begin
if t['密碼']=edit2.Text then
begin
if edit3.Text =edit4.Text then
begin
t.Edit;
t['密碼']:=edit3.Text;
t.Post;
end
else
application.MessageBox('兩次密碼輸入不一致,請檢查','提示信息',mb_ok);
end
else
application.MessageBox('密碼錯誤','請重新輸入',mb_ok);
end;
application.MessageBox('密碼修改成功','恭喜你呀!',mb_ok);
edit1.Text :='';
edit2.Text :='';
edit3.Text :='';
edit4.Text :='';end;procedure Tf_xiugai.Button3Click(Sender: TObject);begin if application.MessageBox('您確認要退出嗎?','刪除退出',mb_okcancel)=idok then begin
f_xitong.show;
f_xiugai.Hide;
end;end;procedure Tf_xiugai.Button2Click(Sender: TObject);begin edit1.Text :='';
edit2.Text :='';
edit3.Text :='';
edit4.Text :='';
edit1.SetFocus;end;end.單位信息窗體相關程序代碼如下:
procedure Tf_dx.Button2Click(Sender: TObject);begin if application.MessageBox('您確認要退出嗎?','刪除退出',mb_okcancel)=idok then
begin
f_xitong.show;
f_dx.Hide;
end;end;procedure Tf_dx.FormCreate(Sender: TObject);begin
t3.Open;
edit1.Text :=t3['單位名'];
edit2.Text :=t3['負責人'];
edit3.text:=t3['聯系電話'];end;procedure Tf_dx.DBGrid1CellClick(Column: TColumn);begin
edit1.Text:=DBGrid1.Fields[0].Value;
edit2.Text:=DBGrid1.Fields[1].Value;
edit3.Text:=DBGrid1.Fields[2].Value;end;procedure Tf_dx.Button1Click(Sender: TObject);begin
case radiogroup1.ItemIndex of
2:
if application.MessageBox('您確認要刪除該信息嗎?','刪除確認',mb_okcancel)=idok then
begin
t3.Delete;
edit1.Text :='';
edit2.Text :='';
edit3.Text :='';
end;
1:
begin
t3.Edit;
t3['單位名']:=edit1.Text;
t3['負責人']:=edit2.Text;
t3['聯系電話']:=edit3.Text;
t3.Post;
end;
0:
begin
t3.Append;
t3['單位名']:=edit1.Text;
t3['負責人']:=edit2.Text;
t3['聯系電話']:=edit3.Text;
t3.Post;
edit1.Text :='';
edit2.Text :='';
edit3.Text :='';
end;end;end;end.書費管理模塊設計
書費管理模塊主要管理學校繳納書費和退回書費管理。繳納書費
可以查詢、打印各班級繳納書費情況和操作。繳納書費如圖8所示:
圖8繳納書費窗體 繳納書費相關程序代碼如下:
procedure Tf_jf.Button2Click(Sender: TObject);begin if application.MessageBox('您確認要退出嗎?','刪除退出',mb_okcancel)=idok then begin
f_xitong.show;
f_jf.Hide;
end;end;procedure Tf_jf.FormCreate(Sender: TObject);begin
t4.Open;
while not t4.Eof do
begin
combobox1.AddItem(t4['班級名'],nil);
t4.Next;
end;end;procedure Tf_jf.Button1Click(Sender: TObject);begin
t4.Filter :='班級名='''+combobox1.Text+'''';
t4.Filtered :=true;
edit1.Text := t4['班級人數'];
edit2.Text := t4['本期費用'];
edit3.Text := t4['說明'];
edit4.Text := t4['上期費用'];
edit5.Text := t4['操作員'];
edit6.Text := t4['經辦人'];end;end.退回書費
可以查詢、打印各班級退回書情況和操作。退回書費如圖9所示:
圖9 退回書費窗體 退回書費相關代碼如下:
procedure Tf_tf.Button3Click(Sender: TObject);begin if application.MessageBox('您確認要退出嗎?','刪除退出',mb_okcancel)=idok then begin
f_xitong.show;//顯示窗體
f_tf.hide;// 隱蔽窗體
end;end;procedure Tf_tf.FormCreate(Sender: TObject);begin
t5.Open;
while not t5.Eof do
begin
combobox1.AddItem(t5['班級名'],nil);
t5.Next;
end;end;procedure Tf_tf.Button1Click(Sender: TObject);begin
t5.Filter :='班級名='''+combobox1.Text+'''';
t5.Filtered :=true;
edit1.Text := t5['班級人數'];
edit2.Text := t5['總書記費'];
edit3.Text := t5['退回書費'];
edit4.Text := t5['經辦人'];
edit5.Text := t5['說明'];end;procedure Tf_tf.Button2Click(Sender: TObject);begin f_tf.RvProject1.ProjectFile:=ExtractFilePath(Application.ExeName)+'printproject1.rav';
self.RvProject1.Execute;
end;end.出入庫管理模塊設計
出入庫管理模塊主要管理教材入庫、學生領書、教師領書等功能。教材入庫
當你單擊“系統管理”菜單中的“教材入庫”時,就會出現“教材入庫”窗體。通過本窗體可以進行的查詢、打印等操作,教材入庫如圖10所示:
圖10教材入庫窗體
相關程序代碼如下:
procedure Tf_rk.Button2Click(Sender: TObject);begin if application.MessageBox('您確認要退出嗎?','刪除退出',mb_okcancel)=idok then begin
f_xitong.show;
f_rk.Hide;
end;end;procedure Tf_rk.FormCreate(Sender: TObject);begin
t7.Open;while not t7.Eof do
begin
combobox1.AddItem(t7['訂書單位'],nil);
t7.Next;
end;end;procedure Tf_rk.Button1Click(Sender: TObject);begin
t7.Filter :='訂書單位='''+combobox1.Text +'''';
t7.Filtered :=true;
t7.Open;
edit1.Text :=t7['教材名'];
edit2.Text :=t7['獲獎情況'];
edit3.Text :=t7['出版年月'];
edit4.Text :=t7['經辦人'];
edit5.Text :=t7['上期數量'];
edit6.Text :=t7['獲獎情況'];
edit7.Text :=t7['入庫時間'];
edit8.Text :=t7['出版社'];
edit9.Text :=t7['教材單價'];
edit10.Text :=t7['操作員'];
edit11.Text :=t7['本期數量'];
edit12.Text :=t7['使用說明'];
edit13.Text :=t7['說明'];end;procedure Tf_rk.Button3Click(Sender: TObject);begin f_rk.RvProject1.ProjectFile :=ExtractFilePath(Application.ExeName)+'printproject2.rav';
self.RvProject1.Execute;end;end.學生領書和教師領書
查詢各班學生和教師的領書情況。學生領書和教師領書如圖11和12所示:
圖11學生領書窗體
圖12教師領書窗體
學生領書相關程序代碼如下:
procedure Tf_lshu.Button2Click(Sender: TObject);begin if application.MessageBox('您確認要退出嗎?','刪除退出',mb_okcancel)=idok then begin
f_xitong.show;
f_lshu.hide;
end;end;procedure Tf_lshu.FormCreate(Sender: TObject);begin
t8.Open;
while not t8.Eof do
begin
combobox1.AddItem(t8['班級名'],nil);
t8.Next;
end;end;procedure Tf_lshu.Button1Click(Sender: TObject);begin
t8.Filter :='班級名='''+combobox1.text+'''';
t8.Filtered :=true;
t8.open;
edit1.Text :=t8['總書記費'];
edit2.Text :=t8['教材名'];
edit3.Text :=t8['班級人數'];
edit4.Text :=t8['所在院系'];
edit5.Text :=t8['出版社'];
edit6.Text :=t8['作者'];
edit7.Text :=t8['領書數量'];
edit8.Text :=t8['書費'];
edit9.Text :=t8['庫存數'];
edit10.Text :=t8['單價'];
edit11.Text :=t8['經辦人'];end;procedure Tf_lshu.DBGrid1CellClick(Column: TColumn);begin
combobox1.Text :=DBGrid1.Fields[0].Value;
edit1.Text:=DBGrid1.Fields[4].Value;
edit2.Text:=DBGrid1.Fields[1].Value;
edit3.Text:=DBGrid1.Fields[10].Value;
edit4.Text:=DBGrid1.Fields[9].Value;
edit5.Text:=DBGrid1.Fields[3].Value;
edit6.Text:=DBGrid1.Fields[2].Value;
edit7.Text:=DBGrid1.Fields[8].Value;
edit8.Text:=DBGrid1.Fields[5].Value;
edit9.Text:=DBGrid1.Fields[7].Value;
edit10.Text:=DBGrid1.Fields[6].Value;
edit11.Text:=DBGrid1.Fields[11].Value;end;end.教師領書相關程序代碼如下:
procedure Tf_jshu.Button2Click(Sender: TObject);begin if application.MessageBox('您確認要退出嗎?','刪除退出',mb_okcancel)=idok then begin
f_xitong.show;
f_jshu.Hide;
end;end;procedure Tf_jshu.FormCreate(Sender: TObject);var i:integer;f:boolean;begin
t0.Open;
t9.Open;
while not t9.Eof do
begin
f:=true;
for i:=1 to combobox1.Items.Count-1 do
if combobox1.Items[i]=t9['教師名'] then
f:=false;
if f then
combobox1.AddItem(t9['教師名'],nil);
t9.Next;
end;end;procedure Tf_jshu.ComboBox1Change(Sender: TObject);begin
t9.Filter :='教師名='''+combobox1.text+'''';
t9.Filtered :=true;
t9.Open;
combobox1.Text :=DBGrid2.Fields[0].Value;end;end.綜合查詢模塊設計
綜合查詢管理模塊主要實現庫存貨品瀏覽、書費的查詢。書費查詢
可以查詢各班級書費等操作。書費查詢如圖13所示:
圖13 書費查詢窗體 書費查詢相關程序代碼如下:
procedure Tf_cxsf.Button1Click(Sender: TObject);begin if application.MessageBox('您確認要退出嗎?','刪除退出',mb_okcancel)=idok then begin
f_xitong.show;
f_cxsf.Hide;
end;end;procedure Tf_cxsf.FormCreate(Sender: TObject);begin
t10.Open;
while not t10.Eof do
begin
combobox1.AddItem(t10['班級名'],nil);
t10.Next;
end;end;procedure Tf_cxsf.ComboBox1Change(Sender: TObject);begin
t10.Filter :='班級名='''+combobox1.text+'''';
t10.Filtered :=true;
t10.Open;
combobox1.Text :=DBGrid1.Fields[0].Value;end;end.庫存查詢
可以查詢書本庫存的存貨和打印等操作。庫存查詢如圖14所示:
圖14庫存查詢窗體
庫存查詢相關程序代碼如下:
procedure Tf_cxk.Button1Click(Sender: TObject);begin if application.MessageBox('您確認要退出嗎?','刪除退出',mb_okcancel)=idok then
begin
f_xitong.show;
f_cxk.Hide;
end;end;
procedure Tf_cxk.ComboBox1Change(Sender: TObject);begin
case radiogroup1.ItemIndex of
0:
begin
t11.Filter :='教材名='''+combobox1.text+'''';
t11.Filtered :=true;
t11.Open;
end;
1:
begin
t11.Filter :='出版社='''+combobox1.text+'''';
t11.Filtered :=true;
t11.Open;
end;
2:
begin
t11.Filter :='入庫時間='''+combobox1.text+'''';
t11.Filtered :=true;
t11.Open;
end;
3:
begin
t11.Filter :='訂書單位='''+combobox1.text+'''';
t11.Filtered :=true;
t11.Open;
end;end;end;procedure Tf_cxk.RadioGroup1Click(Sender: TObject);var
i:integer;
f:boolean;begin
case radiogroup1.ItemIndex of
0:
begin
combobox1.Items.Clear;
t11.First;
while not t11.Eof do
begin
f:=true;
for i:=0 to combobox1.Items.Count-1 do
if combobox1.Items[i]=trim(t11['教材名'])then //按教材名查詢
f:=false;
if f then
combobox1.AddItem(t11['教材名'],nil);
t11.Next;
end;
end;
1:
begin
combobox1.Items.Clear;
t11.First;
while not t11.Eof do
begin
f:=true;
for i:=0 to combobox1.Items.Count-1 do
if combobox1.Items[i]=trim(t11['出版社'])then //按出版社查詢
f:=false;
if f then
combobox1.AddItem(t11['出版社'],nil);
t11.Next;
end;
end;
2:
begin
combobox1.Items.Clear;
t11.First;
while not t11.Eof do
begin
f:=true;
for i:=0 to combobox1.Items.Count-1 do
if combobox1.Items[i]=trim(t11['入庫時間'])then //按入庫時間查詢
f:=false;
if f then
combobox1.AddItem(t11['入庫時間'],nil);
t11.Next;
end;
end;
3:
begin
combobox1.Items.Clear;
t11.First;
while not t11.Eof do
begin
f:=true;
for i:=0 to combobox1.Items.Count-1 do
if combobox1.Items[i]=trim(t11['訂書單位'])then //按訂書單位查詢
f:=false;
if f then
combobox1.AddItem(t11['訂書單位'],nil);
t11.Next;
end;
end;end;end;procedure Tf_cxk.FormCreate(Sender: TObject);begin
t11.Open;end;end.幫助模塊設計
幫助模塊如圖15所示:
圖15幫助窗體
系統使用說明 系統運行環境
運行環境要求:以上,本系統是本系統是采用Delphi開發工具以及后臺數據庫SQL server2000。同時本系統的運行環境要求在windows 2000以上的操作系統。
系統操作說明
本系統在使用之前先還原數據庫(教材管理系統)數據庫的命名為“教材管理系統”。
在打開之后會顯示登錄窗體,其中用戶名和密碼默認的都是“1”,或者是用戶名“小羅”,密碼是“1”。登錄后會顯示一個主窗體,之后就可以在主窗體上進行用戶所想操作的功能。致謝
經過幾個月的構思與設計,在指導老師的精心指導和安排下,本系統已經設計完畢。其使用功能基本符合在實際工作的需要,具有一定的實用性。但是由于時間比較倉促,加上本人軟件設計經驗的不足。因此,在分析問題、解決問題時顯得不夠嚴密、完善,還需要在以后的工作中不斷地改進和完善。本次畢業設計歷時兩個多月,從選題、開題答辯,完成說明書。其間每一過程都得到指導教師的悉心指導,指導老師每周安排見面會,身體力行、兢兢業業地為我們排憂解難,不僅治學嚴謹而且為人師表,堪稱良師益友,教給我們的不僅是知識還有待人處世的積極態度,在此表示衷心的感謝。
還要感謝九江職業技術學院圖書館及圖書館熱情的管理員為我提供豐富的參考資料。感謝某些同學,給我提供了一些方便,同時他們給了我很多寶貴的意見和參考,使我獲益很多,最后感謝所有關心、幫助過我的朋友和同學。
在這次的畢業設計中,讓我深深地體現到進行軟件開發不是一件簡單的事情,它需要設計者具有全面的專業知識、縝密的思維、嚴謹的工作態度以及較高的分析問題、解決問題的能力,而我在很多方面還有欠缺。最后,我要衷心感謝老師在我的設計過程中給予我的極大幫助,使我能夠及時、順利地完成此次的畢業設計。同時,也要感謝我的老師和同學們及實習企業在本系統的設計過程中給予我的支持和幫助。