編程軟件范文

時(shí)間:2023-04-04 15:05:05

導(dǎo)語:如何才能寫好一篇編程軟件,這就需要搜集整理更多的資料和文獻(xiàn),歡迎閱讀由公務(wù)員之家整理的十篇范文,供你借鑒。

編程軟件

篇1

scratch教學(xué)體驗(yàn)解讀

激發(fā)學(xué)生學(xué)習(xí)興趣與主動(dòng)性 為什么越是小學(xué)高段學(xué)生在信息課上越?jīng)]有興趣?為什么我們花大量的時(shí)間控制學(xué)生玩網(wǎng)絡(luò)游戲,卻沒有很好的效果?為什么信息課堂紀(jì)律讓人苦惱?筆者帶著嘗試的心態(tài)將scratch引進(jìn)六年級課堂教學(xué),學(xué)生所表現(xiàn)出對課堂的興趣遠(yuǎn)遠(yuǎn)超過了我的想象。它不僅幫助學(xué)生簡單直觀地完成信息化表達(dá)和數(shù)字化創(chuàng)作,還提升了學(xué)生的思維能力和創(chuàng)造能力,更使他們從以往的個(gè)人解決問題發(fā)展到如今的團(tuán)隊(duì)合作共同創(chuàng)作。開發(fā)Scratch項(xiàng)目的凱倫?布雷迪強(qiáng)調(diào)說:“我們的目的不是要?jiǎng)?chuàng)建電腦程序編寫大軍,而是幫助電腦使用者表達(dá)自己?!?/p>

提高學(xué)生的創(chuàng)造力與合作力 Scratch的可視化設(shè)計(jì),將學(xué)生從算法中解救出來,學(xué)生不用再記憶枯燥的語法,而是專注于想象與設(shè)計(jì),并能夠輕松將所想加以實(shí)現(xiàn)。教學(xué)實(shí)踐表明:當(dāng)scratch走進(jìn)課堂后,每個(gè)孩子都在參與課堂,甚至是以前屢屢不交課堂作業(yè)的后進(jìn)生。在Scratch教學(xué)中,一直被教師所推崇的“做中學(xué)”升級為“邊設(shè)計(jì)、邊學(xué)習(xí)”,即學(xué)生在設(shè)計(jì)中一邊想、一邊實(shí)施指令、一邊創(chuàng)造學(xué)習(xí)。在課堂創(chuàng)作中大家可以感受到,一個(gè)游戲要設(shè)計(jì)的吸引別人,一定要不斷地思考、修改,多聽別人的意見,多合作。在這個(gè)互動(dòng)中,教師經(jīng)常可以看到學(xué)生的進(jìn)步,他們的創(chuàng)造力越來越強(qiáng)了,并得到了充分展現(xiàn)。讓學(xué)生在設(shè)計(jì)中學(xué)習(xí),是開拓學(xué)生思維和創(chuàng)造力的絕佳學(xué)習(xí)方式。

scratch教學(xué)初體驗(yàn)之應(yīng)用

數(shù)字動(dòng)畫讓孩子產(chǎn)生想象和述說 當(dāng)孩子對單一的指令講解感覺比較枯燥時(shí),如果在講解腳本時(shí)加上這樣的故事教學(xué),孩子的想象力和語言表達(dá)能力是出乎意料的。一個(gè)簡單的場景,孩子可以想象出許多角色,描述出他們之間的故事情節(jié)。有了想象,結(jié)合自然語言表達(dá),就回避了小學(xué)生繪制流程圖的難點(diǎn);同時(shí),還讓學(xué)生們感受到“凡事預(yù)則立,不預(yù)則廢”,并樹立思維優(yōu)先,先設(shè)計(jì)后制作的意識。游戲設(shè)計(jì)讓孩子學(xué)會創(chuàng)新和合作。實(shí)例1:走迷宮。迷宮游戲的要素是一個(gè)完整的迷宮要有迷宮圖(復(fù)雜的路線、起點(diǎn)、終點(diǎn))、角色,外加一些障礙物。腳本設(shè)計(jì)如下:①開始執(zhí)行。動(dòng)作――開始執(zhí)行指令。②角色起點(diǎn)。動(dòng)作――移動(dòng)到X( )Y( )。③跟隨鼠標(biāo)移動(dòng)。移動(dòng)( )步,面向鼠標(biāo)指向,外加重復(fù)執(zhí)行。④判斷條件。碰到障礙物回到起點(diǎn),碰到終點(diǎn)游戲結(jié)束。這些過程都是學(xué)生通過探討得到的,環(huán)節(jié)設(shè)計(jì)中給學(xué)生充分的時(shí)間與同桌交流,通過不斷地交流,學(xué)生可以說出整個(gè)游戲設(shè)計(jì)。在作業(yè)批改中,教師會發(fā)現(xiàn)原來孩子的創(chuàng)新能力是無窮的。圖1、圖2為學(xué)生的作業(yè)。

實(shí)例2:捉小貓。課堂導(dǎo)入:小游戲,捉小貓,比得分。游戲非常吸引孩子,游戲里有許多黃貓和綠貓?jiān)谂軇?dòng),一只手可以抓貓,抓到黃貓加10分,抓到綠貓扣5分,游戲倒計(jì)時(shí)2分鐘。當(dāng)問及他們玩過的小游戲中是否有類似的時(shí),孩子們爭先恐后地說著網(wǎng)上各種各樣的小游戲名字??吹贸?,他們喜歡游戲。由此入手,布置任務(wù):為你的小游戲選擇相應(yīng)的角色以及繪制好擊打角色的工具。沒有演示,放手讓孩子自己去思考、探索。10分鐘后的作業(yè)展示非常豐富,有人畫了一把槍,有人畫了泡泡龍里的發(fā)射導(dǎo)彈……隨后讓學(xué)生思考幾分鐘后描述游戲設(shè)計(jì)過程,在說的過程中其實(shí)就是一種設(shè)計(jì)。學(xué)生A:如果導(dǎo)彈擊中小貓,小貓會消失一會兒再出現(xiàn),分?jǐn)?shù)會增加。學(xué)生B:小貓會在舞臺上隨意走動(dòng),碰到邊緣反彈。慢慢地,大家達(dá)成了共識,按著我們的語言描述設(shè)計(jì)了完整的腳本。圖3為捕捉器指令腳本,圖4為小貓指令腳本,圖5為效果圖。

結(jié)束語

篇2

關(guān)鍵詞:數(shù)據(jù)庫;計(jì)算機(jī)軟件工程;編程技術(shù)

編程技術(shù)其實(shí)是辦公實(shí)現(xiàn)自動(dòng)化的重要基礎(chǔ)和關(guān)鍵組成部分,因?yàn)榫幊碳夹g(shù)不僅能夠支持辦公類各種計(jì)算機(jī)軟件的正常和運(yùn)行,還能夠保證辦公電腦硬件設(shè)備的安全。也就是說將計(jì)算機(jī)軟件應(yīng)用在計(jì)算機(jī)數(shù)據(jù)庫之中,不僅能夠最大程度上辦公的工作效率和辦公整體水平,還能夠提升企業(yè)的綜合能力和競爭力,從而使企業(yè)在金融危機(jī)這個(gè)大環(huán)境下,一直長遠(yuǎn)的發(fā)展下去。

1計(jì)算機(jī)軟件工程中數(shù)據(jù)庫文件的建立

1.1類型比較

數(shù)據(jù)庫文件的建立一般情況下都要在能夠讀取相關(guān)信息的前提下進(jìn)行,所以在初期準(zhǔn)備建立數(shù)據(jù)庫時(shí),一定要針對數(shù)據(jù)庫的相關(guān)信息來進(jìn)行有效的對比,而在觀察文件時(shí)還要根據(jù)信息讀取過程中容易出現(xiàn)的問題來進(jìn)行選擇建立數(shù)據(jù)庫文件方式。

1.2建立數(shù)據(jù)庫

數(shù)據(jù)庫的創(chuàng)建一般情況下都是在文件類型確定之后才展開的一項(xiàng)工作,而在建立數(shù)據(jù)庫之后對于數(shù)據(jù)庫相關(guān)信息的訪問權(quán)限也會有較大的改變,所以在一般情況下設(shè)計(jì)都是針對相關(guān)功能不夠完善的項(xiàng)目來進(jìn)行整改,通過更加合理的改善來解決計(jì)算機(jī)運(yùn)行過程中出現(xiàn)的各種問題。

2計(jì)算機(jī)數(shù)據(jù)庫的概念

計(jì)算機(jī)數(shù)據(jù)庫其實(shí)就是通過編程技術(shù)來進(jìn)行一系列工作的信息處理系統(tǒng),其實(shí)計(jì)算機(jī)數(shù)據(jù)庫出現(xiàn)的根本原因就是因?yàn)楝F(xiàn)如今信息技術(shù)發(fā)展十分迅速,所以計(jì)算機(jī)數(shù)據(jù)庫應(yīng)運(yùn)而出,其最大的作用就是能夠?yàn)槠髽I(yè)構(gòu)建一個(gè)自動(dòng)化屬性的企業(yè)內(nèi)部信息處理系統(tǒng),從而最大限度上為企業(yè)提供一個(gè)計(jì)算機(jī)數(shù)據(jù)庫平臺,使辦公人員能夠借助編程技術(shù)進(jìn)行工作,其中包括信息的儲備、更新、維護(hù)和傳輸?shù)鹊取F鋵?shí)從本質(zhì)上看來,計(jì)算機(jī)數(shù)據(jù)庫就是一個(gè)對相關(guān)信息收集和整理的過程,這種技術(shù)十分適用于企業(yè)的辦公。

3編程技術(shù)在計(jì)算機(jī)數(shù)據(jù)庫中的作用

3.1可用性

可用性的提出是為了針對快速恢復(fù)故障和平衡負(fù)載。當(dāng)計(jì)算機(jī)的主接口出現(xiàn)問題時(shí),備份的接口將會自動(dòng)的代替其進(jìn)行工作,從而保證網(wǎng)絡(luò)能夠有條不紊的運(yùn)行。而當(dāng)網(wǎng)絡(luò)的數(shù)據(jù)接受量過大時(shí),備份接口還可以幫助主接口進(jìn)行數(shù)據(jù)的接收和發(fā)送,從而起到均衡的作用。

3.2信息隱藏性

主體在進(jìn)行通訊連接時(shí),可以利用計(jì)算機(jī)的NAT技術(shù)系統(tǒng),來隱藏內(nèi)網(wǎng)的網(wǎng)址,并且在數(shù)據(jù)上是以公網(wǎng)的網(wǎng)址訪問的網(wǎng)絡(luò),也就是說企業(yè)的用戶可以直接訪問外網(wǎng)的因特網(wǎng),但是外網(wǎng)的所有網(wǎng)絡(luò)都無法進(jìn)行企業(yè)內(nèi)部網(wǎng)絡(luò)查看企業(yè)中的任何信息和資源。

3.3身份鑒別

身份鑒別是面向所有用戶進(jìn)行的驗(yàn)證程序,計(jì)算機(jī)的身份鑒別主要是指訪問計(jì)算機(jī)的身份鑒別和端口計(jì)算機(jī)的身份鑒別。訪問該計(jì)算機(jī)的用戶必須通過SSH或者HTTP(HTTPS)的連接,通過輸入用戶和密碼的方式來進(jìn)行連接和鑒別,并且要保證密碼以私密文件的方式保存在TACACS認(rèn)證的服務(wù)器上,也就是說在計(jì)算機(jī)數(shù)據(jù)庫中應(yīng)用編程技術(shù)將能夠最大限度上保證企業(yè)辦公信息和數(shù)據(jù)的安全性。

4計(jì)算機(jī)數(shù)據(jù)庫中存在的問題

編程技術(shù)和傳統(tǒng)的計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)其實(shí)都是一樣的,都是對于計(jì)算機(jī)的使用人員相關(guān)網(wǎng)絡(luò)信息的總結(jié)和整理,只是編程技術(shù)要相較于傳統(tǒng)計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)來說更加的便捷和方便。但是計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)存在著一個(gè)至關(guān)重要的問題,那就是相關(guān)信息的安全性,因?yàn)橛?jì)算機(jī)網(wǎng)絡(luò)技術(shù)依賴于編程技術(shù)和網(wǎng)絡(luò),所以編程技術(shù)具有容易修改、容易刪除、容易查閱的特點(diǎn),所以計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)中的信息很容易就被人他人進(jìn)行查閱和修改,缺乏一定程度上的安全性。也正是因?yàn)檫@一問題,所以導(dǎo)致了計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)安全信息上的安全隱患。

5數(shù)據(jù)庫文件的訪問技術(shù)改革

5.1給予計(jì)算機(jī)數(shù)據(jù)庫硬件支持

企業(yè)的工作流程內(nèi),計(jì)算機(jī)占據(jù)著其中百分之八十工作量,也就是說要想實(shí)現(xiàn)計(jì)算機(jī)數(shù)據(jù)庫就必須要將編程技術(shù)應(yīng)用在辦公中。由于計(jì)算機(jī)數(shù)據(jù)庫涉及的業(yè)務(wù)內(nèi)容較多且相關(guān)信息比較繁雜,所以不論是計(jì)算機(jī)辦公的軟件還是硬件設(shè)備都需要編程技術(shù)的支持才能夠保證辦公中所有工作的順利進(jìn)行。計(jì)算機(jī)數(shù)據(jù)庫中的特定軟件有很多,其中以設(shè)備管理的軟件為主,而支持自動(dòng)化辦公軟件的系統(tǒng)主要是計(jì)算機(jī)數(shù)據(jù)庫、SQLserver2008和Access。

5.2實(shí)現(xiàn)辦公軟件自動(dòng)化

在辦公的文檔管理中應(yīng)用編程技術(shù),不僅能夠保證使用者在計(jì)算機(jī)辦公過程中能夠在計(jì)算機(jī)的網(wǎng)絡(luò)平臺進(jìn)行信息文件的審閱和查看批復(fù),還能夠在網(wǎng)絡(luò)信息平臺對文件信息進(jìn)行審批和修改,這對于辦公來說不僅提升了工作效率,還最大程度上減少了工作量。企業(yè)的工作人員在接收到文件之后,可以先將文件錄入在網(wǎng)絡(luò)信息平臺內(nèi),然后再信息平臺內(nèi)進(jìn)行修改和存檔,存檔完畢之后,可以對其進(jìn)行準(zhǔn)確的命名,以便他日查閱文件,并且存檔的工作人員還可以將文件進(jìn)行加密,針對不同用戶設(shè)置訪問權(quán)限,從而保證文件的安全性和共享性。

5.3創(chuàng)建全新信息平臺

現(xiàn)如今很多企業(yè)都將編程技術(shù)應(yīng)用在企業(yè)管理和信息中,其中信息使用的最為廣泛和頻繁,企業(yè)信息主要就是利用編程技術(shù)創(chuàng)建一個(gè)網(wǎng)絡(luò)信息平臺,其中最常見的就是電子網(wǎng)絡(luò)論壇或者電子公告,在這個(gè)網(wǎng)絡(luò)信息平臺內(nèi),企業(yè)可以隨時(shí)隨地的公布企業(yè)公告和企業(yè)交流等等。

6結(jié)束語

綜上所述,只有了解了編程技術(shù)的全部應(yīng)用內(nèi)容,才能夠更好的將編程技術(shù)應(yīng)用在計(jì)算機(jī)數(shù)據(jù)庫內(nèi),這不僅能夠提升企業(yè)的辦公質(zhì)量,還能夠最大限度上的提升企業(yè)的辦公效率,多方位的保障企業(yè)辦公所有工作的順利進(jìn)行,從而最大限度上企業(yè)在整個(gè)市場環(huán)境下的競爭能力。

參考文獻(xiàn)

[1]范麗萍.基于計(jì)算機(jī)軟件工程的數(shù)據(jù)庫編程技術(shù)[J].電子技術(shù)與軟件工程,2017,01(22):164-165.

[2]侯艷輝.礦區(qū)生態(tài)環(huán)境評估及預(yù)警實(shí)現(xiàn)技術(shù)研究[D].山東:山東科技大學(xué),2014.

[3]尤晶晶.工程軟件中VB數(shù)據(jù)庫編程技術(shù)的應(yīng)用及選擇思路解析[J].電腦編程技巧與維護(hù),2016,04(134):71-72+94.

篇3

【關(guān)鍵詞】C語言 計(jì)算機(jī) 軟件編程

C語言應(yīng)用建立在簡單編程語言的基礎(chǔ)上,是一項(xiàng)新型的編程語言確保了編程任務(wù)的順利完成。使用者在實(shí)際的應(yīng)用過程中,不受各項(xiàng)限制條件影響,可以結(jié)合自身的實(shí)際使用需求,嚴(yán)格按照C語言的編程要求進(jìn)行編程。通過編程運(yùn)行應(yīng)用軟件的實(shí)施結(jié)果上可以看出,C語言是計(jì)算機(jī)中的高級編程Z言,對提升計(jì)算機(jī)技術(shù)應(yīng)用效果具有重要作用。

1 C語言下的計(jì)算機(jī)軟件編程實(shí)驗(yàn)技巧

1.1 熟練掌握指針運(yùn)用方法

指針是C語言編程中一種特殊的類型變量,能夠快速處理編程設(shè)計(jì)過程中存在的復(fù)雜問題。指針的三要素主要包括指針名、值和類型。在對指針編程過程中,主要確保一般變量和指針的相同性。將指針應(yīng)用于數(shù)組表示和函數(shù)的參數(shù)返回值中。

1.2 明確C語言特有函數(shù)功能

特有函數(shù)在C語言編程中被廣泛應(yīng)用,需要充分展現(xiàn)出函數(shù)的功能,編程設(shè)計(jì)人員需要將返回值、函數(shù)名字和參數(shù)名等項(xiàng)目進(jìn)行定義。編程庫中的函數(shù)主要是由C編譯系統(tǒng)提供,需要確保函數(shù)系統(tǒng)的合理定義,確保程序調(diào)用的合理性,將“#include指令”包含到所用文件中。例如,在程序運(yùn)行過程中,通常會運(yùn)用sqrt函數(shù),為了確保程序的合理運(yùn)行,需要將#include“string.h”應(yīng)用到頭文件中。

1.3 掌握算法程序設(shè)計(jì)技巧

算法是程序設(shè)計(jì)的靈魂,需要明確算法技巧的應(yīng)用方法,運(yùn)用自然語言和流程圖合理表達(dá)算法。要求程序設(shè)計(jì)員需要熟練掌握流程圖符號,將其作為計(jì)算機(jī)之母,通過對數(shù)學(xué)知識的牢固應(yīng)用,有助于提升計(jì)算機(jī)編程效率。

1.4 掌握位運(yùn)算及文件知識

位運(yùn)算是C語言之間的重要特色,也是計(jì)算機(jī)中的高級語言運(yùn)算方法,自身具有唯一性和獨(dú)特性特點(diǎn)。需要將位運(yùn)算作為二進(jìn)制位對象,嚴(yán)格按照程序要求進(jìn)行運(yùn)算。程序設(shè)計(jì)員在編程時(shí),需要將所寫的程序存儲到文件中,提升數(shù)據(jù)查找效率。

2 計(jì)算機(jī)軟件C語言編程案例

2.1 混合軟件編程方法

隨著科學(xué)技術(shù)的快速發(fā)展,需要加大對語言混合編程技巧的應(yīng)用,對提升系統(tǒng)編程開發(fā)效率具有重要作用。在對混合軟件編程方法進(jìn)行研究時(shí),主要包括以下兩方面研究內(nèi)容:

(1)需要將匯編語句嵌入到C語言源程序中,例如,在將asm匯編語句嵌入到C語言源程序中,需要將asm mov as,5/*將5發(fā)送到ax寄存器*/,將匯編語句嵌入到C語言源程序中時(shí),需要利用大括號將嵌入程序括起來,例如:

Main( )

{asm{

mov ah,2

mov bh,5

int 10h

}

}

本次實(shí)驗(yàn)在實(shí)施過程中,在對程序進(jìn)行嵌入式設(shè)計(jì)時(shí),需要嚴(yán)格按照固定的格式進(jìn)行嵌入式輸入,并且需要在嵌入的各行代碼前加“asm”。程序設(shè)計(jì)人員在進(jìn)行嵌入式程序設(shè)計(jì)時(shí),需要滿足以下條件要求:“asm”關(guān)鍵字不可少,并且需要將其放置在指令代碼前,需要確保嵌入?yún)R編語言指令代碼能夠與正常的C語言程序混合使用,用“;”作為C語言的分隔符;將“/%”和“*/”作為C語言的注釋分界符。

(2)做好C語言程序和匯編程序的編寫工作,確保編譯目標(biāo)代碼模塊的獨(dú)立性,確保鏈接的合理性。首先,明確C語言程序匯編語言中各種子程序和定義變量的合理性,確保匯編語言的合理調(diào)用。由于混合編程語言由若干個(gè)功能模塊共同組成,各功能模塊語言能夠獨(dú)立完成編程工作,并且通常會以函數(shù)的形式展現(xiàn)出來。設(shè)計(jì)人員需要結(jié)合每一模塊的特點(diǎn),來合理選擇獨(dú)立的語言編程系統(tǒng),并形成目標(biāo)性的文件,確保能夠形成可視性的文件。其次,需要加大對參數(shù)傳遞問題的合理解決,從參數(shù)傳遞原則方面對C語言的程序調(diào)用匯編程序進(jìn)行分析,運(yùn)用推棧將參數(shù)傳遞給匯編程序。例如,在對voidaa(char*p,inti)函數(shù)進(jìn)行編寫時(shí),主要是利用匯編語言進(jìn)行編寫,確保編譯工作能夠在小內(nèi)存模式下開始,系統(tǒng)在調(diào)用時(shí),將其編寫成aa(&q,n)。

2.2 混合軟件編程實(shí)例分析

在開展混合軟件編程工作時(shí),需要純5個(gè)數(shù)中尋找最小值,將主程序設(shè)為“min.c”,匯編子程序設(shè)為“qiumin.asm”。主程序的編寫形式主要是利用C語言進(jìn)行編寫,匯編子程序的編寫形式主要是利用匯編語言編寫,在實(shí)際的應(yīng)用過程中,通常會被主程序所調(diào)用,以便完善對最小數(shù)的尋找,程序代碼如下所示:

/*文件名為:min.c*/

#include

Int extern qiumin(int count,int vl,int v2,int v3,int v4,int v5);/*聲明qiumin為外部函數(shù)*/

Main()

{

int min;

Min=qiumuin(12 ,54,8,4,23,9);

Printf(“The min is%d\n”,min);

}

主要是利用C語言和匯編語言混合的編程反復(fù)發(fā),確保應(yīng)用程序能夠滿足運(yùn)行速度的要求,編程人員需要做好寄存器的合理分配,明確影響程序的因素。為了確保程序的合理運(yùn)用,需要確保程序預(yù)報(bào)語言設(shè)計(jì)之間外部接口的相互協(xié)調(diào)性,提升外部調(diào)用效果。

3 結(jié)論

近年來,信息技術(shù)發(fā)展迅速,計(jì)算機(jī)軟件是信息化社會的必需品,需要加大對C語言的應(yīng)用力度,將其應(yīng)用到各個(gè)領(lǐng)域中,確保行業(yè)的高效運(yùn)營,為計(jì)算機(jī)軟件的發(fā)展奠定良好的基礎(chǔ)。同時(shí),確保C語言軟件能夠廣泛的應(yīng)用到計(jì)算機(jī)編程實(shí)驗(yàn)中,強(qiáng)化C語言的實(shí)踐效果,利用簡單的C語言編程,提高軟件的功能性,拓寬計(jì)算機(jī)軟件的應(yīng)用領(lǐng)域,確保計(jì)算機(jī)軟件的多樣化發(fā)展,向網(wǎng)絡(luò)化和信息化方向不斷邁進(jìn)。

參考文獻(xiàn)

[1]龔晨.基于C語言的計(jì)算機(jī)軟件編程實(shí)驗(yàn)研究[J].電腦編程技巧與維護(hù),2016(02):36-37.

[2]芮素文.基于C語言的計(jì)算機(jī)軟件編程分析[J].信息系統(tǒng)工程,2015(01):40.

[3]王志超,趙越.基于C語言的計(jì)算機(jī)軟件編程實(shí)驗(yàn)研究[J].科技創(chuàng)新導(dǎo)報(bào),2015(11):45.

篇4

關(guān)鍵詞:軟件人才 量化考核 獨(dú)立學(xué)院 軟件編程

獨(dú)立學(xué)院的人才培養(yǎng)目標(biāo)是定位在高級應(yīng)用型人才。因此,應(yīng)科學(xué)合理地確定培養(yǎng)目標(biāo),建立與應(yīng)用型人才培養(yǎng)相適應(yīng)、具有獨(dú)立學(xué)院特點(diǎn)的人才培養(yǎng)模式;提高教學(xué)質(zhì)量必須確定不同于其他院校的質(zhì)量標(biāo)準(zhǔn)和要求,還要根據(jù)學(xué)校和學(xué)生的特點(diǎn)去實(shí)施教育行為達(dá)到教育實(shí)效。計(jì)算機(jī)專業(yè)應(yīng)用型人才培養(yǎng)很重要的,也是最基本的一個(gè)方面是程序設(shè)計(jì)能力的培養(yǎng)。要積極探索一種方法,如何在校提高學(xué)生編程能力,這是培養(yǎng)計(jì)算機(jī)高級應(yīng)用型人才很重要的一個(gè)環(huán)節(jié)。

獨(dú)立學(xué)院學(xué)生的特點(diǎn)是思想活躍、自我意識強(qiáng);缺點(diǎn)是基礎(chǔ)不夠扎實(shí)、自制能力、學(xué)習(xí)的動(dòng)力和自覺性不夠。為了提高獨(dú)立學(xué)院計(jì)算機(jī)專業(yè)學(xué)生教學(xué)質(zhì)量,需要針對學(xué)生的特點(diǎn),在實(shí)踐教學(xué)上進(jìn)行改革,以取得較好的效果。

1.目前計(jì)算機(jī)實(shí)踐教學(xué)概況

目前計(jì)算機(jī)專業(yè)教學(xué)普遍的現(xiàn)象是:學(xué)生學(xué)了高級程序設(shè)計(jì)語言、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)庫、操作系統(tǒng)、軟件工程等課程,雖然考試通過了,但絕大多數(shù)學(xué)生反映不會設(shè)計(jì)和編寫一個(gè)程序。去應(yīng)聘時(shí),感覺大學(xué)三年什么也沒有學(xué)。原因是:

1.1在大學(xué)四年里,雖然不少課程都涉及到算法和編程,但由于各門課程教學(xué)都是孤島,無法對學(xué)生編程進(jìn)行系統(tǒng)考核。在實(shí)驗(yàn)教學(xué)指導(dǎo)上,老師包的過多,限制學(xué)生的積極性和創(chuàng)造性的發(fā)揮。在實(shí)驗(yàn)教學(xué)中,通常是由按教師編制好的步驟進(jìn)行,使得學(xué)生容易出現(xiàn)依賴性,缺乏主動(dòng)思維,因而影響學(xué)生創(chuàng)造力的發(fā)揮,對培養(yǎng)學(xué)生分析問題和解決問題能力培養(yǎng)不利。

1.2多數(shù)任課老師不太清楚,學(xué)生更不清楚大學(xué)四年學(xué)習(xí)后,各門課程的銜接,更不清楚四年學(xué)習(xí),我們將培養(yǎng)怎樣的“職業(yè)標(biāo)準(zhǔn)人才”,因此,出現(xiàn)學(xué)生學(xué)完所有計(jì)算機(jī)課程后,編程能力很差,甚至無編程能力。

1.3在教學(xué)計(jì)劃制定后,較多的注重課堂授課質(zhì)量的提高,對實(shí)踐教學(xué)部分重視不夠,措施不力,注重對理論知識的驗(yàn)證,忽略解決實(shí)際工程能力的培養(yǎng)。創(chuàng)造性、設(shè)計(jì)性、綜合性實(shí)踐少。尤其是對學(xué)生創(chuàng)新意識的培養(yǎng)不夠。

1.4學(xué)生實(shí)驗(yàn)報(bào)告抄襲現(xiàn)象較嚴(yán)重,程序不是自己編寫,而是將他人的程序拷貝過來,甚至連名字都不改的拷貝過來。

2.軟件人才編程量化考核的幾點(diǎn)建議

編碼行數(shù)是判斷軟件開發(fā)熟練度及從業(yè)經(jīng)驗(yàn)的重要指標(biāo)。根據(jù)行業(yè)現(xiàn)狀,達(dá)到20000行編碼并具有相關(guān)職業(yè)素質(zhì)的人員可被認(rèn)為是一名合格的軟件從業(yè)者。分析了我們的教學(xué)計(jì)劃,對我系計(jì)算機(jī)軟件工程人才的培養(yǎng)提出編程量化考核的思路,并進(jìn)行探討與實(shí)實(shí)踐。具體做法是:

2.1確定編碼條數(shù)。分析計(jì)算機(jī)專業(yè)學(xué)生有關(guān)編程課程特點(diǎn)及IT崗位對學(xué)生的基本需求,確定四年來學(xué)生在高級語言的編程能力上要達(dá)到初級程序員的水平。定位四年來學(xué)生閱讀和編程的程序條數(shù)達(dá)到12000條的指標(biāo)。并探討把要求學(xué)生完成上萬行編程語句作為量化考核,量化深透到各門課程訓(xùn)練(課程設(shè)計(jì)或課程實(shí)驗(yàn))中,從而使實(shí)踐教學(xué)從簡單到復(fù)雜,從單一到綜合,從虛擬到真實(shí),把專業(yè)能力培養(yǎng)落到實(shí)處。

2.2確定編碼量化指標(biāo)。參照按一個(gè)合格的程序員的“職業(yè)技能標(biāo)尺”,將編程量化總指標(biāo)分解到涉及的各門課程中,給出四年有關(guān)課程的編程量化指標(biāo)如表1所示。

有了這個(gè)指標(biāo),各門課程的任課老師和實(shí)驗(yàn)指導(dǎo)老師都明確實(shí)驗(yàn)的要求,學(xué)生也明確通過這門課的學(xué)習(xí),編程能力要有哪些提高。防止上課和實(shí)踐脫節(jié)。

2.3加強(qiáng)實(shí)驗(yàn)指導(dǎo)書的編寫。根據(jù)編程量化指標(biāo)的要求編寫實(shí)驗(yàn)指導(dǎo)書,一般指導(dǎo)書的內(nèi)容要求先讀后編,不斷提高學(xué)生的編程興趣和技能。

2.4加強(qiáng)實(shí)踐教學(xué)師資隊(duì)伍的建設(shè)。每一門有關(guān)課程都要有一位專任老師參加編程量化實(shí)踐教學(xué)。承擔(dān)實(shí)踐教學(xué)的老師要不斷提高自己的編程能力,經(jīng)常討論編程量化實(shí)踐中出現(xiàn)的問題,并提出解決方法。

2.5嚴(yán)格教學(xué)環(huán)節(jié),優(yōu)化考核辦法。實(shí)驗(yàn)結(jié)果的驗(yàn)收方式是考核很關(guān)鍵的問題,最初幾門量化考核課程最好使用逐個(gè)學(xué)生驗(yàn)收的辦法,防止學(xué)生抄襲現(xiàn)象,督促學(xué)生很好完成課程實(shí)驗(yàn)內(nèi)容,即使程序是拷貝其他同學(xué),為了驗(yàn)收,他也要很好的讀懂,真正了解程序的編寫

2.6以學(xué)生為中心,充分發(fā)揮學(xué)生的主動(dòng)性。和其他教學(xué)一樣,計(jì)算機(jī)軟件教學(xué)過程同樣是由教師的教和學(xué)生的學(xué)所組成雙邊活動(dòng)過程。要將量化考核的標(biāo)準(zhǔn)提前告訴學(xué)生,讓學(xué)生知道四年來,自己在編程能力應(yīng)達(dá)到什么程度,提高他們學(xué)習(xí)的積極性。

3.初步實(shí)施

上學(xué)期操作系統(tǒng)課程設(shè)計(jì)根據(jù)編程量化的要求,針對算法的實(shí)現(xiàn),讓學(xué)生閱讀了進(jìn)程調(diào)度、作業(yè)調(diào)度、存儲管理、文件系統(tǒng)等近1000條的程序,編寫了近500條的程序,取得了較好的效果,不但對操作系統(tǒng)的算法有了進(jìn)一步的理解,同時(shí)對C語言編程能力的提高有所幫助。學(xué)生反映這次課程設(shè)計(jì)收獲較大,由于有編程量化的要求落實(shí)到每個(gè)學(xué)生,加上最后實(shí)驗(yàn)的驗(yàn)收是一個(gè)一個(gè)的進(jìn)行,學(xué)生很認(rèn)真、努力完成任務(wù),取得較好的效果,也增強(qiáng)了我們開展編程量化教學(xué)探討的信心。如果有關(guān)課程都能執(zhí)行編程量化考核標(biāo)準(zhǔn),四年下來,相信一定會為學(xué)生編程能力的提高打下很好的基礎(chǔ)。

4.存在問題

4.1如何對學(xué)生編程進(jìn)行系統(tǒng)考核。

4.2對老師提出了更高的要求,要求任課老師一定要參加實(shí)踐教學(xué),使得課堂教學(xué)與實(shí)踐教學(xué)緊密結(jié)合。

4.3逐個(gè)驗(yàn)收實(shí)驗(yàn)結(jié)果,教師工作量加大了。應(yīng)加大實(shí)踐教學(xué)學(xué)分比重。

篇5

打開維控PLC編程軟件新創(chuàng)建的工程,在菜單欄中選擇【視圖】

在展開的【視圖】子目錄中勾選【指令集】

在彈出的【指令集】目錄中選擇【基本順控指令】目錄。

使用鼠標(biāo)左鍵,選中指定的順控指令,比如【LD】

按住鼠標(biāo)不放,選取【LD】拖動(dòng)至右側(cè)【梯形圖(寫入)】輸入框內(nèi),放置于指定位置,松開鼠標(biāo)右鍵

在彈出的梯形圖輸入窗口中輸入【指令地址】,并點(diǎn)擊確定。

篇6

教材利用了“二分法”進(jìn)行解析,可看到,作出對應(yīng)值表以及每一次“取中點(diǎn)”進(jìn)行運(yùn)算縮短零點(diǎn)所在的區(qū)間范圍時(shí),即使使用計(jì)算器,運(yùn)算量也很大.其實(shí)借助信息技術(shù)可以很方便地求出一個(gè)方程的近似解.

下面將介紹如何應(yīng)用Mathematica6.0求方程的近似解.

方法1:利用Mathematica6.0的代數(shù)自動(dòng)求解功能求方程的近似解.

打開Mathematica6.0,執(zhí)行命令進(jìn)行輸入按下“Shift+Enter”組合鍵即可,具體如下:

ln[1]:=Solve[2Λx+3*x-7==0,x]

Out[1]={{x13(7-3Productlog[4321/3log[2] ]log[2] )

}}

經(jīng)過化簡便得到方程2x+3x=7的解的表達(dá)式為:73-productln[(432/3)?ln2]ln2.

為了得到此方程的近似解,我們可以輸入命令“N[expr]” (注:表達(dá)式的機(jī)器精度近似值)和命令“Solve[eqn, var]”(注:解方程)的組合命令即直接輸入命令NSolve[lhs==rhs, var](注:求方程數(shù)值解 ),具體如下:

ln[2]:=NSolve[2Λx+3*x-7==0,x]

Out[2]={{x1.43319}}

方法2:利用Mathematica6.0的畫圖功能輔助二分法快速求解.

首先借助Mathematica繪制準(zhǔn)確的圖像,使二分法的“無限逼近”更快,同樣,執(zhí)行命令進(jìn)行輸入 按下“Shift+Enter”組合鍵即可,具體如圖1:

ln[3]:=Plot[2Λx+3*x-7==0,{x,-2,5},PlotStyle{Black}]

圖1

由圖1極易看出方程2x+3x=7的解在1~2之間.同時(shí)我們還可以改變x的取值范圍,以實(shí)現(xiàn)圖像局部放大的目的,例如將橫坐標(biāo)的取值范圍改為{x,1,2},就可

得到如圖2所示的局部放大圖像.

ln[4]:=Plot[2Λx+3*x-7==0,{x,1,2},PlotStyle{Black}]

圖2

由圖2直接就可看出方程2x+3x=7的解在1.4~1.45之間,于是我們就可以從這兒開始“二分法”的“無限逼近”……

當(dāng)然也可以直接改變x的取值范圍,實(shí)現(xiàn)圖像局部放大來進(jìn)行求解.

將橫坐標(biāo)的取值范圍改為{x,1.4,1.45},則有如圖3所示的圖像:

ln[5]:=Plot[2Λx+3*x-7==0,{x,1.4,1.45},PlotStyle{Black}]

圖3由圖3中的圖像可以看出方程2x+3x=7的解在1.432~1.4434之間.

繼續(xù)將橫坐標(biāo)的取值范圍改為{x,1.432,1.434},則有如圖4:

ln[6]:=Plot[2Λx+3*x-7==0,{x,1.432,1.434},PlotStyle{Black}]

圖4

篇7

關(guān)鍵詞:計(jì)算機(jī);軟件開發(fā);編程語言

一、引言

對于計(jì)算機(jī)應(yīng)用軟件的研究與開發(fā)來說,選擇一項(xiàng)合適的編程語言對其影響十分深遠(yuǎn),編程語言的適配度將決定計(jì)算機(jī)應(yīng)用軟件的優(yōu)質(zhì)度。其中編程語言是一項(xiàng)十分復(fù)雜的工作程序,它既影響著計(jì)算機(jī)應(yīng)用軟件的開發(fā)難度與開發(fā)效率,也影響著計(jì)算機(jī)應(yīng)用軟件后期的維護(hù)難度與維護(hù)效率?,F(xiàn)階段隨著計(jì)算機(jī)技術(shù)的不斷發(fā)展,編程語言也得到了大力研發(fā),編程語言的種類也越來越多,每一種不同的編程語言都具有著其獨(dú)特的性質(zhì)與作用。

二、結(jié)合相關(guān)計(jì)算機(jī)應(yīng)用軟件的具體開發(fā)結(jié)構(gòu)進(jìn)行選擇

一般情況下,在進(jìn)行計(jì)算機(jī)應(yīng)用軟件的相關(guān)開發(fā)編程語言的選擇過程中,往往都是一個(gè)具體的計(jì)算機(jī)應(yīng)用軟件對應(yīng)一個(gè)固定的編程語言,但是在特殊情況之下,也會存在研究開發(fā)一個(gè)計(jì)算機(jī)應(yīng)用軟件時(shí)同時(shí)選擇多個(gè)不同的編程語言的情況。出現(xiàn)這種現(xiàn)象的主要原因還是在于在一個(gè)具體的計(jì)算機(jī)應(yīng)用軟件的開發(fā)過程中,該應(yīng)用軟件的結(jié)構(gòu)以及功能都會隨著區(qū)域和時(shí)間的變化而不斷發(fā)生變化,換言之,在一個(gè)應(yīng)用軟件中的不同區(qū)域所需要的編譯效果也是不同的。因此,在進(jìn)行計(jì)算機(jī)應(yīng)用軟件開發(fā)中的編程語言的選擇過程中,一定要結(jié)合相關(guān)應(yīng)用軟件的具體需求與實(shí)際結(jié)構(gòu)變化選擇最合適的編程語言。除此之外,當(dāng)一款計(jì)算機(jī)應(yīng)用軟件在開發(fā)過程中選擇了一項(xiàng)或幾項(xiàng)最合適的編程語言之后,并不意味之該應(yīng)用軟件在后期更新與維護(hù)過程中不會再選擇或者替換其他的編程語言,也許在該應(yīng)用軟件開發(fā)的時(shí)候這幾項(xiàng)編程語言十分適合該軟件,但在兩年或者更久的時(shí)間之后這項(xiàng)編程語言就不一定會適合該應(yīng)用軟件的更新與二次開發(fā)。因此,一個(gè)計(jì)算機(jī)應(yīng)用軟件的編程語言并不是一成不變的,在為計(jì)算機(jī)應(yīng)用軟件的開發(fā)選擇編程語言的時(shí)候一定要結(jié)合應(yīng)用軟件的具體性質(zhì)與結(jié)構(gòu)變化進(jìn)行實(shí)時(shí)選擇與實(shí)時(shí)更新。比如,為了最大限度地提高所選的編程語言對相關(guān)計(jì)算機(jī)應(yīng)用軟件開發(fā)的適配度,相關(guān)軟件開發(fā)人員可以遵循以下方式進(jìn)行具體的編程語言的選擇。首先技術(shù)人員需要對將要開發(fā)的應(yīng)用軟件的整體結(jié)構(gòu)進(jìn)行總體的把握與設(shè)計(jì),其中不僅包括該應(yīng)用軟件所開發(fā)的主要功能以及屬性,還包括該應(yīng)用軟件的延伸功能與后期維護(hù)等問題。其次軟件開發(fā)人員還要在進(jìn)行應(yīng)用軟件首次語言編寫的過程中就將應(yīng)用軟件的所有功能以及延伸功能都充分挖掘出來,并結(jié)合應(yīng)用軟件的功能需求選擇最佳的編程語言。比如相對于C語言與C++語言來說,JAVA語言更適合具有簡單功能需求的應(yīng)用軟件開發(fā),而C語言和C++語言則相對適合用于開發(fā)具有相對繁瑣功能的計(jì)算機(jī)應(yīng)用軟件的開發(fā)。最后還要考慮所開發(fā)應(yīng)用軟件的數(shù)據(jù)規(guī)模,并根據(jù)不同的數(shù)據(jù)規(guī)模來選擇合適的編程語言,比如如果是開發(fā)相對功能比較簡易的計(jì)算機(jī)應(yīng)用軟件的話,則更加適合選擇ACCESS語言。通過整體結(jié)構(gòu)把握與具體功能把握相結(jié)合的方式來選擇計(jì)算機(jī)應(yīng)用軟件開發(fā)的編程語言,一方面既有利于提高相關(guān)計(jì)算機(jī)應(yīng)用軟件的開發(fā)效率,另一方面也可以在一定程度上降低該應(yīng)用軟件的后期維護(hù)難度。

三、根據(jù)對相關(guān)計(jì)算機(jī)軟件開發(fā)編程語言的熟悉程度進(jìn)行選擇

對于很多計(jì)算機(jī)軟件開發(fā)人員來說,都希望能夠在每一次的計(jì)算機(jī)應(yīng)用軟件的開發(fā)過程中進(jìn)行勇敢的嘗試與創(chuàng)新,從而實(shí)現(xiàn)自己的職業(yè)理想與自我完善。但是在實(shí)際的計(jì)算機(jī)應(yīng)用軟件開發(fā)項(xiàng)目中,尤其是對于非專業(yè)研究類的應(yīng)用軟件開發(fā)項(xiàng)目來說,開發(fā)人員在選擇對應(yīng)的編程語言的時(shí)候還是要盡量從自己知識范圍內(nèi)的熟悉掌握的編程語言入手。這主要是因?yàn)樵谟?jì)算機(jī)應(yīng)用軟件的開發(fā)過程總選擇熟悉的編程語言能夠在軟件開發(fā)初期就幫助開發(fā)人員計(jì)算與估量出大概的項(xiàng)目進(jìn)度表。一方面可以有效避免在計(jì)算機(jī)應(yīng)用軟件開發(fā)過程中出現(xiàn)其他的不必要的變數(shù),使得整個(gè)項(xiàng)目完成得更加具有計(jì)劃性與體系性;另一方面也可以有效提高計(jì)算機(jī)應(yīng)用軟件開發(fā)的效率與質(zhì)量,最大限度地避免各種意外的發(fā)生概率。因此,軟件開發(fā)人員的技術(shù)儲備將決定一個(gè)計(jì)算機(jī)軟件開發(fā)中所選用的編程語言的適配范圍與選擇廣度,對于計(jì)算機(jī)應(yīng)用軟件的開發(fā)與后期維護(hù)來說,當(dāng)然是所選擇的編程語言范圍越廣,開發(fā)與后期維護(hù)的難度也就越低,效率也就越高。因此相應(yīng)地軟件開發(fā)人員的自身知識與技能儲備在計(jì)算機(jī)應(yīng)用軟件開發(fā)的編程語言選擇上就發(fā)揮出了至關(guān)重要的作用。只有不斷提高軟件開發(fā)人員的技能儲備,才可以確保在相關(guān)應(yīng)用軟件開發(fā)編程語言的選擇過程中擁有更多的選擇,從而最大限度地避免在開發(fā)過程中可能會遇到的各種問題。比如,為了提高軟件開發(fā)人員對相關(guān)編程語言的熟悉程度與掌握程度,從而在計(jì)算機(jī)應(yīng)用軟件開發(fā)時(shí)能夠擁有更多的編程語言可以選擇,相關(guān)計(jì)算機(jī)軟件開發(fā)公司要提高對相關(guān)軟件開發(fā)人員的技術(shù)儲備與知識儲備的考察強(qiáng)度與審核力度。首先針對于具有不同特長的軟件開發(fā)人員,即可以十分熟練地掌握幾項(xiàng)編程語言,但對于其他的編程語言都不太了解,這類技術(shù)人員其實(shí)已經(jīng)十分優(yōu)秀,但為了進(jìn)一步提高與完善其綜合水平,公司相關(guān)部門可以就這部分技術(shù)人員開展互助小組活動(dòng)。換言之,掌握不同編程語言的兩個(gè)或者三個(gè)技術(shù)人員可以結(jié)成學(xué)習(xí)對子或者學(xué)習(xí)小組,互相學(xué)習(xí)對方所熟練掌握的編程語言,從而切實(shí)達(dá)到互相進(jìn)步的目的。其次還可以通過科普講座的方式,讓不同的軟件開發(fā)人員對于不同的編程語言都能夠有一個(gè)更加深入的了解,不斷豐富軟件開發(fā)人員的專業(yè)技能與綜合水平。通過這種方式,軟件開發(fā)人員所熟悉的編程語言將會得到一個(gè)質(zhì)的提升,那么在進(jìn)行計(jì)算機(jī)應(yīng)用軟件開發(fā)編程語言的選擇時(shí),也將會大大提高選擇的廣度與深度,有利于提升應(yīng)用軟件的開發(fā)效率與開發(fā)質(zhì)量。

四、綜合考慮不同編程語言的特性進(jìn)行選擇

每一種不同的編程語言都有其存在的理由與價(jià)值,這而在相關(guān)計(jì)算機(jī)應(yīng)用軟件開發(fā)中編程語言選擇的過程中,具體應(yīng)用軟件編程語言的選擇則要充分考慮到不同的編程語言的特點(diǎn)與性質(zhì)。當(dāng)前階段比較常見的計(jì)算機(jī)應(yīng)用軟件開發(fā)所用的編程語言主要有以下幾種,其中分別是C語言、C++語言、JAVA語言、ACCESS語言以及PESCAL語言等幾種。以上這幾種不同的編程語言都有著其獨(dú)特的使用優(yōu)勢與適用范圍。其中應(yīng)用最廣泛的是C語言,該編程語言是所有的計(jì)算機(jī)語言里最常用的一種,從開始出現(xiàn)截止到目前為止已經(jīng)擁有四十幾年的應(yīng)用歷史。而C語言最大的優(yōu)勢就是擁有十分豐富的運(yùn)算符、數(shù)據(jù)結(jié)構(gòu),但是語法卻十分簡潔且語法要求也相對較低,功能十分強(qiáng)大。除此之外,C語言還是一種兼容能力很強(qiáng)的編程語言,通過C語言編程開發(fā)的計(jì)算機(jī)應(yīng)用軟件可以十分方便地移植到其他類型的計(jì)算機(jī)上。因此相關(guān)計(jì)算機(jī)軟件開發(fā)人員在進(jìn)行應(yīng)用軟件的編程過程中應(yīng)該以提升工作完成質(zhì)量為前提,以提升工作完成效率為目標(biāo),在結(jié)合實(shí)際應(yīng)用軟件開發(fā)需求的基礎(chǔ)上,充分考慮不同編程語言的優(yōu)勢與特色,從中選擇最合適的編程語言,選擇最規(guī)范的軟件開發(fā)程序,從而達(dá)到順利完成工作任務(wù),提高工作效率的目的。比如,以C++語言為例,作為C語言的拓展與延伸,C++語言在匯聚了C語言的眾多優(yōu)勢與特點(diǎn)的基礎(chǔ)上,又在應(yīng)用軟件的編程過程中注入了新的編程思想與編程模式,可以更加貼近與滿足計(jì)算機(jī)應(yīng)用軟件的開發(fā)需求。作為一種全新的編程語言與編程形式,C++編程語言也在計(jì)算機(jī)編程領(lǐng)域得到了廣泛的應(yīng)用。結(jié)合C++語言的特色與優(yōu)勢,軟件開發(fā)人員在計(jì)算機(jī)應(yīng)用軟件開發(fā)的過程中就可以做出更加合適與科學(xué)的選擇。尤其是在大部分的計(jì)算機(jī)應(yīng)用軟件的開發(fā)過程中,針對于具體的硬件資源的使用是十分有限的,而且在很多時(shí)候收到運(yùn)行環(huán)境與開發(fā)平臺的限制,很多編程語言都無法實(shí)現(xiàn)很好的兼容,這時(shí)就完全可以選擇C++語言作為應(yīng)用軟件的主要編程語言。C++語言可以在有限的外部環(huán)境與硬件資源條件下實(shí)現(xiàn)對環(huán)境與資源的最大化利用。

五、總結(jié)

綜上所述,計(jì)算機(jī)應(yīng)用軟件的研究與開發(fā)是一項(xiàng)極其艱巨與復(fù)雜的工程,很多因素都會對其最終的研發(fā)效果與研發(fā)質(zhì)量產(chǎn)生直接或間接的影響,其中編程語言的選擇對于這項(xiàng)工程的完成則發(fā)揮著至關(guān)重要的作用。因此,計(jì)算機(jī)軟件開發(fā)人員要不斷提高自身素養(yǎng)與技能水平,充分掌握各種編程語言的應(yīng)有優(yōu)勢與適用范圍,在結(jié)合具體的計(jì)算機(jī)應(yīng)用軟件開發(fā)需求的基礎(chǔ)上,選擇最合適的編程語言,從而實(shí)現(xiàn)計(jì)算機(jī)應(yīng)用軟件的高效率與高質(zhì)量開發(fā)。

參考文獻(xiàn)

[1]王樹琴.計(jì)算機(jī)應(yīng)用軟件開發(fā)中編程語言的選擇研究[J].軟件設(shè)計(jì)開發(fā),2017(19):219.

篇8

1計(jì)算機(jī)軟件工程中的數(shù)據(jù)庫建立

在進(jìn)行計(jì)算機(jī)數(shù)據(jù)庫建立的整個(gè)過程中最開始就需要對計(jì)算機(jī)基礎(chǔ)框架進(jìn)行設(shè)計(jì),并且同時(shí)需要對計(jì)算機(jī)中的數(shù)據(jù)庫進(jìn)行改進(jìn),而計(jì)算機(jī)軟件的運(yùn)行是需要通過網(wǎng)絡(luò)這個(gè)媒介來作為支撐,要不然計(jì)算機(jī)系統(tǒng)中的軟件就不能發(fā)揮作用,因此在系統(tǒng)數(shù)據(jù)庫的搭建過程中要考慮到這些相關(guān)的影響因素,整個(gè)系統(tǒng)的各子系統(tǒng)之間相互之間需要形成良好的交互關(guān)系,最終才能使系統(tǒng)的軟件運(yùn)行,同時(shí)也可以保證計(jì)算機(jī)系統(tǒng)中的信息的安全性。在軟件工程數(shù)據(jù)庫一開始建立初期就必須要有明確的應(yīng)用范圍,這樣就能夠高效地做好計(jì)算機(jī)數(shù)據(jù)庫的管理工作,在初步形成了數(shù)據(jù)庫的總體構(gòu)架之后,需要在此基礎(chǔ)上進(jìn)行其他功能的完善,提升整個(gè)軟件的使用性能和安全性能并解決在使用過程中出現(xiàn)的漏洞,當(dāng)這個(gè)軟件在不斷更新升級改進(jìn)后它的功能將會越來越人性化以滿足用戶的需求,同時(shí)在抵抗外界的干擾方面也是會做得更好,此外數(shù)據(jù)庫也要及時(shí)進(jìn)行更新以免出現(xiàn)使用故障問題。編程技術(shù)是形成計(jì)算機(jī)數(shù)據(jù)庫的基礎(chǔ),各功能的協(xié)調(diào)是解決軟件技術(shù)問題的主要途徑,軟件在開發(fā)出后投入市場讓用戶進(jìn)行使用中要有效利用好計(jì)算機(jī)數(shù)據(jù)庫中的資源,使得軟件能夠在使用過程中可以進(jìn)行自動(dòng)更新,來解決軟件在使用過程中出現(xiàn)的問題同時(shí)增加一些必要的功能。在做軟件過程中工程師要合理的選擇匯編語言,然后進(jìn)行軟件框架的編程,這樣就能更好的做出所需的軟件和提升用戶的使用體驗(yàn)。

2數(shù)據(jù)庫文件建立

2.1類型比較

數(shù)據(jù)庫需要處于讀取的條件下才能對數(shù)據(jù)庫的文件進(jìn)行建立,為此在數(shù)據(jù)庫進(jìn)行數(shù)據(jù)建立的最初階段需要做好對比工作,防止出現(xiàn)在讀取的過程中出現(xiàn)數(shù)據(jù)的丟失卻不能及時(shí)發(fā)現(xiàn)的問題。通常采用對比的數(shù)據(jù)讀取方式更能夠保證數(shù)據(jù)讀取的穩(wěn)定性,同時(shí)在文件讀取出現(xiàn)問題時(shí)也更能夠直觀的發(fā)現(xiàn)問題,也更能夠找到合適的類型。在文件讀取時(shí)要做到節(jié)省計(jì)算機(jī)的存儲空間,并且短時(shí)間地對數(shù)據(jù)進(jìn)行讀取,這樣做的目的就是可以保證軟件運(yùn)行的流暢度和穩(wěn)定性,更不容易出現(xiàn)運(yùn)行故障問題。

2.2創(chuàng)建數(shù)據(jù)庫

一般情況下是在文件建立之后進(jìn)行數(shù)據(jù)庫的建立,并且在創(chuàng)建之后系統(tǒng)將會對訪問的權(quán)限進(jìn)行限制,會限制用戶之后的相關(guān)操作,特別是在當(dāng)系統(tǒng)出現(xiàn)一些問題需要進(jìn)行相應(yīng)的改進(jìn)時(shí),由于權(quán)限限制的原因?qū)⑿枰獙Ω鞣矫孢M(jìn)行調(diào)整,需要更加有效的關(guān)聯(lián)才能使得整個(gè)系統(tǒng)的穩(wěn)定性有較高的保障。為了保證系統(tǒng)的穩(wěn)定可靠性可以采用分模塊的形式來對系統(tǒng)的多個(gè)功能進(jìn)行逐一控制,如此一來就可以有效的提升數(shù)據(jù)庫各功能的穩(wěn)定性,保證系統(tǒng)的流暢運(yùn)行。而一些在外部安裝的軟件就相對來說在對數(shù)據(jù)庫創(chuàng)建時(shí)簡便很多,在對外部軟件進(jìn)行安裝時(shí)可以采取私人模式的安裝方法可以保證用戶的數(shù)據(jù)安全。同時(shí)需要根據(jù)軟件的具體特征來建立合適的數(shù)據(jù)庫,保證數(shù)據(jù)庫中的資源能夠充分利用,此外還需要不斷對編程技術(shù)進(jìn)行改進(jìn)。為了能夠保證系統(tǒng)在系統(tǒng)出現(xiàn)問題數(shù)據(jù)丟失的情況下保證系統(tǒng)快速的快速恢復(fù)運(yùn)行,需要對數(shù)據(jù)庫中的信息做好備份工作。

3對數(shù)據(jù)庫文件的訪問

3.1面向?qū)ο蟮臄?shù)據(jù)庫存儲模式選擇

分區(qū)之后就可以進(jìn)行數(shù)據(jù)庫存儲模式狀態(tài),但是這項(xiàng)功能又存在多方面的安全問題。數(shù)據(jù)庫的存儲的作用就是對用戶的各項(xiàng)權(quán)限進(jìn)行一定的限制,以保證系統(tǒng)能夠穩(wěn)定運(yùn)行,這種訪問權(quán)限是被分為多個(gè)訪問級別,不同類型的訪問用戶,進(jìn)入系統(tǒng)的頁面信息也會有所區(qū)別,主要目的還是在于保證系統(tǒng)的安全和穩(wěn)定。建立了文件類型數(shù)據(jù)庫后,更加有利于文件的訪問,在進(jìn)行系統(tǒng)的功能設(shè)計(jì)時(shí)需要重點(diǎn)針對這一方面,要做好合理優(yōu)化系統(tǒng)資源,保證系統(tǒng)高效穩(wěn)定運(yùn)行。

3.2數(shù)據(jù)庫文件的加密保護(hù)

文件加密主要是防止用戶的個(gè)人重要信息被他人盜取而采取的保護(hù)措施,需要采取相應(yīng)的措施來保證用戶的信息安全,主要的措施就是通過對用戶的信息根據(jù)信息的重要程度來設(shè)置,在用戶進(jìn)行使用時(shí)需要設(shè)置登錄密碼來保證信息安全,同時(shí)在登錄數(shù)據(jù)庫時(shí)也需要密碼,這類分等級分類型的密碼設(shè)置可以保證技術(shù)人員高效找到解決問題的策略,保證數(shù)據(jù)庫和用戶的信息不會被木馬等其他病毒攻擊竊取信息,損壞計(jì)算機(jī)系統(tǒng),造成重大財(cái)產(chǎn)損失。對于在這個(gè)過程中信息選擇問題可以通過加密選擇來解決,通過結(jié)構(gòu)優(yōu)化來解決功能沖突問題,最終保證系統(tǒng)處于一個(gè)安全穩(wěn)定的狀態(tài)下運(yùn)行。

3.3數(shù)據(jù)存儲模式使用方法比較

使用方法的對比過程影響著系統(tǒng)運(yùn)行的穩(wěn)定性,同時(shí)在軟件處于工作狀態(tài)下進(jìn)行判斷系統(tǒng)是否處于不穩(wěn)定運(yùn)行的狀態(tài),最終技術(shù)人員根據(jù)出現(xiàn)的具體問題進(jìn)而采取相應(yīng)的改進(jìn)措施。同在網(wǎng)絡(luò)如何進(jìn)行選取完全看之前設(shè)計(jì)時(shí)的功能選擇,以及在實(shí)際使用過程中所遇到的具體問題決定的,最終可以達(dá)到提高系統(tǒng)穩(wěn)定性的作用,而這種解決策略在防止計(jì)算機(jī)病毒的入侵系統(tǒng)這一方面起到了很好的作用,也在保障數(shù)據(jù)庫的信息安全方面起到了很關(guān)鍵的作用,一般性的軟件技術(shù)問題,在這種模式下軟件都能穩(wěn)定運(yùn)行,此時(shí)在系統(tǒng)獲得到信息后能夠自動(dòng)進(jìn)行選擇分類,這樣就能保證數(shù)據(jù)庫調(diào)動(dòng)數(shù)據(jù)的效率和速度,同時(shí)軟件也會根據(jù)具體要求進(jìn)行自動(dòng)更新,而這都需要各系統(tǒng)間高效配合才能實(shí)現(xiàn)。同時(shí)系統(tǒng)會對各模式進(jìn)行篩選,找出其中的問題,優(yōu)化整個(gè)運(yùn)行系統(tǒng)。

3.4開發(fā)設(shè)計(jì)中的編程技術(shù)選擇

保證軟件系統(tǒng)的穩(wěn)定性是選擇哪種編程技術(shù)的重要參考標(biāo)準(zhǔn),得到編程技術(shù)能否保證資源的高效利用,還有保證系統(tǒng)穩(wěn)定性的能力。通過采用對比的方法進(jìn)行編程來解決系統(tǒng)的一些相關(guān)問題,當(dāng)系統(tǒng)出現(xiàn)不穩(wěn)定時(shí)要及時(shí)發(fā)現(xiàn)問題所在采取相應(yīng)的解決措施,保證軟件不會出現(xiàn)較大的功能問題影響到軟件的正常運(yùn)行。相關(guān)的技術(shù)人員在進(jìn)行問題診斷時(shí)也要針對性的進(jìn)行檢查,保證系統(tǒng)能夠處于一種穩(wěn)定的狀態(tài)下持續(xù)安全運(yùn)行。所以軟件運(yùn)行的穩(wěn)定性和編程技術(shù)的選擇有著密不可分的聯(lián)系,編程技術(shù)選取的是否合適直接影響到軟件運(yùn)行的穩(wěn)定性,因此要選擇最為適合特定軟件開發(fā)的編程技術(shù)。在一開始的軟件開發(fā)階段遇到問題可以對軟件開發(fā)的基礎(chǔ)框架進(jìn)行優(yōu)化,以保證之后的開發(fā)能夠有效進(jìn)行,這就對編程技術(shù)提出了更高的要求,需要編程技術(shù)能夠?qū)崿F(xiàn)軟件特定功能的同時(shí)也要保證軟件的安全性。

4結(jié)語

在互聯(lián)網(wǎng)時(shí)代背景下,各行各業(yè)都需要利用計(jì)算機(jī)技術(shù)來獲得發(fā)展,因此在很多非計(jì)算機(jī)類的工程領(lǐng)域內(nèi)也越來越需要懂得計(jì)算機(jī)編程技術(shù)的人才,而對于非計(jì)算機(jī)專業(yè)人員面對這門較為復(fù)雜的學(xué)科一開始學(xué)習(xí)都會有所困惑甚至退卻。本文就關(guān)于數(shù)據(jù)庫系統(tǒng)做了詳細(xì)的說明,希望對相關(guān)的使用人員有所幫助,也為非計(jì)算機(jī)專業(yè)人員提供學(xué)習(xí)方法。

軟件工程碩士論文參考文獻(xiàn)

[1]范麗萍.基于計(jì)算機(jī)軟件工程的數(shù)據(jù)庫編程技術(shù)[J].電子技術(shù)與軟件工程,2017(1):164-165.

[2]張程譽(yù).基于計(jì)算機(jī)軟件工程的數(shù)據(jù)庫編程技術(shù)[J].自動(dòng)化與儀器儀表,2018(6).

篇9

關(guān)鍵詞 極限編程技術(shù);軟件開發(fā);重要作用

中圖分類號:TP313

文獻(xiàn)標(biāo)識碼:A

文章編號:1007-7316-(2014)02-

一、極限編程技術(shù)在軟件開發(fā)中能夠控制風(fēng)險(xiǎn)

在軟件開發(fā)的過程中,風(fēng)險(xiǎn)是不可避免的,這就會導(dǎo)致軟件開發(fā)進(jìn)度受到影響,并且不利于保證軟件開發(fā)的正常進(jìn)展。而借助于極限編程技術(shù)在軟件開發(fā)過程中的應(yīng)用,可以控制風(fēng)險(xiǎn),盡可能地確保軟件開發(fā)過程的正常進(jìn)行。

(一)極限編程技術(shù)在軟件開發(fā)中能夠控制進(jìn)度延遲的風(fēng)險(xiǎn)

極限編程技術(shù)的時(shí)間非常短暫,所以,這種技術(shù)對于進(jìn)度延遲的現(xiàn)象是非常不容許的。在運(yùn)用極限編程技術(shù)的過程中,最為首要的就是要開發(fā)出那些具備最高的應(yīng)用性能的功能模塊,只有這樣,客戶才會發(fā)現(xiàn)軟件是能夠利用的,從而方便客戶的使用,不應(yīng)該像傳統(tǒng)的軟件開發(fā)方法那樣僅僅提供文檔信息。與此同時(shí),對于開發(fā)完成的軟件產(chǎn)品,一定要定期對客戶進(jìn)行回訪,并且根據(jù)客戶的需求進(jìn)行不斷地改進(jìn),從而能夠最大限度地迎合客戶的需求。

(二)極限編程技術(shù)在軟件開發(fā)中能夠控制項(xiàng)目被取消的風(fēng)險(xiǎn)

在利用極限編程技術(shù)來進(jìn)行軟件開發(fā)的項(xiàng)目中,先開發(fā)出具備較高的應(yīng)用性能的功能模塊以滿足客戶的需求,在這種情況下,如果項(xiàng)目被取消,那么,就不會像傳統(tǒng)的軟件開發(fā)方法那樣面臨巨大的損失,仍然有許多功能模塊是能夠利用的,從而能夠節(jié)約大量的軟件開發(fā)成本。

(三)極限編程技術(shù)在軟件開發(fā)中能夠控制不被客戶認(rèn)可的風(fēng)險(xiǎn)

在利用極限編程技術(shù)來進(jìn)行軟件開發(fā)的項(xiàng)目中,客戶也參與到軟件開發(fā)過程中來。在開發(fā)遇到問題的情況下,軟件開發(fā)人員會和客戶進(jìn)行相互溝通,以便推動(dòng)軟件開發(fā)過程的順利進(jìn)行。

(四)極限編程技術(shù)在軟件開發(fā)中能夠控制缺陷率高的風(fēng)險(xiǎn)

在利用極限編程技術(shù)來進(jìn)行軟件開發(fā)的項(xiàng)目中,可以借助于自動(dòng)化測試和測試先行的編碼方式來最大限度地控制缺陷,一旦出現(xiàn)缺陷,客戶就能夠在最短的時(shí)間內(nèi)察覺出來,從而能夠和軟件開發(fā)人員一起在最短的時(shí)間內(nèi)進(jìn)行處理。

二、極限編程技術(shù)在軟件開發(fā)中能夠提高質(zhì)量

通常情況下,質(zhì)量是由觀察者來進(jìn)行決定的,而質(zhì)量的具體內(nèi)涵則是根據(jù)不同的風(fēng)險(xiǎn)承擔(dān)者而存在著差別的。在利用極限編程技術(shù)來進(jìn)行軟件開發(fā)的項(xiàng)目中,極限編程技術(shù)能夠最大限度地保證所開發(fā)出的軟件產(chǎn)品的質(zhì)量,它確保質(zhì)量的質(zhì)量指標(biāo)有很多。表1列出了一些質(zhì)量標(biāo)準(zhǔn),并詳細(xì)說明了極限編程技術(shù)是如何確保質(zhì)量的。

表1極限編程技術(shù)確保質(zhì)量的質(zhì)量指標(biāo)

指標(biāo) 描述 極限編程技術(shù)實(shí)踐

易用性 在最終用戶看來系統(tǒng)易于使用 現(xiàn)場客戶

可伸縮性 容量(用戶、數(shù)據(jù)量等)不斷增加時(shí),系統(tǒng)仍能夠處理 測試

持續(xù)集成

可用性 用戶可以使用系統(tǒng)的時(shí)間百分比 簡單設(shè)計(jì)

重構(gòu)

測試

可維護(hù)性 度量修復(fù)缺陷所需費(fèi)用的指標(biāo) 測試

集體擁有

編碼標(biāo)準(zhǔn)

結(jié)對編程

可支持性 在運(yùn)行時(shí),修補(bǔ)或升級系統(tǒng)的難易程度 簡單設(shè)計(jì)

測試

持續(xù)集成

功能性 系統(tǒng)的特性滿足客戶需求的程度 現(xiàn)場客戶

用戶故事

比喻

擴(kuò)展性 在系統(tǒng)中添加新特性的難易程度 簡單設(shè)計(jì)

小型

持續(xù)集成

平均故障間隔 系統(tǒng)可靠性的度量指標(biāo)——

兩次故障之間的平均時(shí)間

測試

集體擁有

編碼標(biāo)準(zhǔn)

結(jié)對編程

三、極限編程技術(shù)在軟件開發(fā)中能夠管理變化

在利用極限編程技術(shù)來進(jìn)行軟件開發(fā)的項(xiàng)目中,能夠確保在軟件構(gòu)建期間和需求收集期間對軟件項(xiàng)目進(jìn)行修改的成本相同,能夠最大限度地節(jié)約成本。極限編程技術(shù)能夠?qū)崿F(xiàn)修改成本的均勻化,這種技術(shù)沒有必要明確地指定需求。與此同時(shí),軟件開發(fā)小組也沒有必要迫切地要求客戶看到未來可能的需求。極限編程技術(shù)來進(jìn)行軟件開發(fā)就好比一次不能夠準(zhǔn)確界定最終的目的地的旅行。倘若客戶能夠帶領(lǐng)軟件開發(fā)成員快速地提供業(yè)務(wù)價(jià)值,并且及時(shí)進(jìn)行反饋,那么,整個(gè)軟件開發(fā)過程一定能夠非常順利地開展。

四、結(jié)束語

綜上所述,本文探索了極限編程技術(shù)。雖然極限編程技術(shù)已經(jīng)被提出了十多年的時(shí)間了,然而,這種編程理念仍然是一種新興的軟件開發(fā)方法,值得相關(guān)領(lǐng)域的專家和學(xué)者繼續(xù)進(jìn)行在不斷的探索和完善。希望通過本文的研究,能夠拋磚引玉,引起國內(nèi)外專家學(xué)者對于極限編程技術(shù)領(lǐng)域的進(jìn)一步的重視。

參考文獻(xiàn):

[1] 賀亞茹. 極限編程(XP):概念、特點(diǎn)和應(yīng)用[J]. 新西部(下半月), 2008,(12)

[2] 張鵬,唐發(fā)根,林廣艷. 軟件架構(gòu)設(shè)計(jì)在XP方法中的實(shí)施[J]. 計(jì)算機(jī)工程與應(yīng)用, 2003,(33) .

[3] 王曉華,趙明. XP過程對軟件缺陷影響分析[J]. 航天控制, 2008,(01) .

[4] 周立力. 極限編程的質(zhì)量保證分析[J]. 計(jì)算機(jī)應(yīng)用與軟件, 2010,(04) .

[5] 王曉華,趙明. 一種XP項(xiàng)目迭代周期估計(jì)方法[J]. 計(jì)算機(jī)應(yīng)用, 2007,(05) .

[6] 林明泉,譚云蘭,鄧易偲,余友儒,劉粱軍. 基于極限編程的電子政務(wù)考評平臺的研究與開發(fā)[J]. 科技廣場, 2009,(05) .

[7] 廖瑞華,文海英,胡英. 極限編程(XP)方法及其應(yīng)用[J]. 電腦知識與技術(shù), 2009,(27) .

[8] Amr Elssamadisy,Gregory Schalliol. Recognizing and re-sponding toBad Smellin Extreme Programming[J] .ICSE‘02,May 19-25,2002. :617-622 .

篇10

關(guān)鍵詞:LINGO軟件;集合;非線性規(guī)劃;最優(yōu)解

中圖分類號:O144文獻(xiàn)標(biāo)識碼:A文章編號:1009-3044(2012)10-2419-04

Modeling of Nonlinear Programming and LINGO’s Programming and Application

SANG Yang-yang, ZHU Wan-hong, DAN Bing-bing

(Engineering Institute of Engineer Corps .PLA Univ. of Sci. &Tech., Nanjing 210007, China)

Abstract: It’s very difficult for the fast modeling and solution of the nonlinear programming. LINGO modeling language greatly simplifies the process. Introduce the programming skills of LINGO and the SET in detail combined with a nonlinear programming problem. The calculation results show that the programming language is simple, flexible and applicability when using LINGO to solve the nonlinear programming problems contained a lot of variables and constraints.

Key words: LINGO; SET; nonlinear programming; optimal solution

對于大型復(fù)雜的優(yōu)化模型,包含變量和約束條件較多,通過手工計(jì)算求解這類問題是非常困難的。使用MATLAB或C語言等編程計(jì)算雖然可行,但一般情況下程序編寫繁瑣,不僅容易出錯(cuò),還可能耗費(fèi)大量的時(shí)間和精力。LINGO軟件是美國LINDO系統(tǒng)公司(Lindo System Inc.)開發(fā)的求解最優(yōu)化問題的軟件包,在求解大型線性、非線性和整數(shù)規(guī)劃問題方面具有編程簡單,計(jì)算穩(wěn)定可靠和求解迅速的優(yōu)勢。其內(nèi)置的建模語言提供了幾十個(gè)內(nèi)部函數(shù),能以較少的語句,較直觀的方式描述較大規(guī)模的優(yōu)化模型。

1非線性規(guī)劃類問題及其實(shí)例建模

1.1非線性規(guī)劃類問題求解的一般特點(diǎn)

線性規(guī)劃問題的目標(biāo)函數(shù)和約束條件是自變量的一次函數(shù),如果在目標(biāo)函數(shù)或約束條件中包含有非線性的函數(shù),就稱這種規(guī)劃問題為非線性規(guī)劃問題。由于非線性函數(shù)的復(fù)雜性,解非線性規(guī)劃問題要比解線性規(guī)劃問題困難得多。而且,也不像線性規(guī)劃有單純形法等通用方法,且可用于求解的各個(gè)方法都有自己特定的適用范圍,掌握起來較為困難。

非線性規(guī)劃問題的一般模型為:min f(x)

s.t. gi(x)≥0,i=1,…,m

hj(x)=0,j=1,…,p

其中,x=(x1,…,xn)屬于定義域D,符號min表示求“最小值”,符號s.t.表示“受約束于”。定義域D中滿足約束條件的點(diǎn)稱為問題的可行解。對于一個(gè)可行解x*,如果存在x*的一個(gè)鄰域,使目標(biāo)函數(shù)在x*處的值f(x*)優(yōu)于該鄰域中如何其他可行解處的函數(shù)值,則稱x*為問題的局部最優(yōu)解。如果f(x*)優(yōu)于一切可行解處的目標(biāo)函數(shù)值。則稱x*為問題的整體最優(yōu)解。實(shí)際應(yīng)用中的非線性規(guī)劃問題一般要求得到整體最優(yōu)解。

1.2實(shí)例分析與建模

首先對一個(gè)求解電廠監(jiān)控系統(tǒng)的最優(yōu)化改造方案的問題進(jìn)行非線性規(guī)劃的實(shí)例分析與數(shù)學(xué)建模。

指標(biāo)一系統(tǒng)穩(wěn)壓設(shè)施各等級安全概率及其費(fèi)用

上面各表中數(shù)據(jù)反映的是某電廠改造其內(nèi)部的監(jiān)控系統(tǒng)(主要包括一個(gè)主設(shè)備間和多條監(jiān)控管線),在模擬出現(xiàn)爆炸,火災(zāi)等惡劣和極端工作條件下,各類安全防護(hù)指標(biāo)所選取的方案、相應(yīng)的費(fèi)用和破壞概率。整個(gè)系統(tǒng)的改造費(fèi)用為400萬元,求出該系統(tǒng)各種防護(hù)指標(biāo)方案的最優(yōu)搭配,使系統(tǒng)的總體安全概率最高。

按照上述的思路,共設(shè)4種安全防護(hù)指標(biāo),即N=4。目標(biāo)函數(shù)為:

其中F總=400萬元,pij為第i項(xiàng)指標(biāo)下第j個(gè)方案的破壞概率,x為引入的0-1變量,xij=1代表第i項(xiàng)指標(biāo)下第j個(gè)方案為使用,為0則為不使用。C為建設(shè)費(fèi)用。P總為系統(tǒng)整體安全概率。

為便于后面的編程計(jì)算,我們首先把第一項(xiàng)指標(biāo)中的安全防護(hù)效能轉(zhuǎn)化為破壞概率。其次,在三,四項(xiàng)指標(biāo)中各添加一個(gè)方案五(重復(fù)一遍任意方案即可,這里直接復(fù)制四方案)。

指標(biāo)一系統(tǒng)穩(wěn)壓設(shè)施各等級安全概率及其費(fèi)用

2運(yùn)用LINGO程序求解非線性規(guī)劃問題

2.1 LINGO程序段的一般組成

LINGO的主要功能是求解大型線性、非線性和整數(shù)規(guī)劃問題,對于這類問題中大量的變量和約束條件,采用“集”(集合)的形式進(jìn)行管理和參與運(yùn)算,極大地方便了對復(fù)雜規(guī)劃類問題的建模與求解。理解LINGO建模語言最重要的是理解集“SET”及其屬性的概念。

常見的LINGO程序段包含下面三個(gè)部分:

1)“集”定義部分:定義“集”及其屬性(從“SETS:”到“ENDSETS”)。

2)數(shù)據(jù)輸入部分:已知屬性賦以初始值(從“DATA:”到“ENDDATA”)。

3)目標(biāo)函數(shù)和約束條件:定義了目標(biāo)函數(shù),約束條件等反映LINGO對數(shù)學(xué)模型的編譯內(nèi)容。

2.2 LINGO程序的編程

2.2.1 LINGO程序“集”的定義

“集”是一組相關(guān)對象構(gòu)成的組合,代表模型中的實(shí)際事物,是實(shí)際問題到數(shù)學(xué)的抽象。例子中的4項(xiàng)防護(hù)指標(biāo)可以看成一個(gè)集合,每項(xiàng)指標(biāo)都有5項(xiàng)方案,這5項(xiàng)方案又可以看成一個(gè)集合。每個(gè)“集”在使用之前需要預(yù)先給出定義,定義集時(shí)要明確三方面的內(nèi)容,集的名稱,集內(nèi)的成員(也稱元素),集的屬性(可以看成是與該集合有關(guān)的變量和常量,相當(dāng)于數(shù)組)。本例集合定義如下:

scheme/s1..s5/;

measure/m1..m4/;

為了表示數(shù)學(xué)模型中指標(biāo)與連隊(duì)的各項(xiàng)關(guān)系,又定義了一個(gè)新的集:

links(measure,scheme):c,p,x;

該集以初始集measure和scheme為基礎(chǔ),稱為衍生集合(或稱派生集合)。c、p和x是該衍生集合的三個(gè)屬性,分別表示每項(xiàng)指標(biāo)下的每項(xiàng)方案的建設(shè)費(fèi)用、破壞概率還有決定采用還是不采用的0-1型決策變量,實(shí)際運(yùn)算中,引入(i,j)依次標(biāo)示這兩個(gè)緯度里的各項(xiàng)成員。

2.2.2數(shù)據(jù)的輸入

以上集合中屬性X是決策變量,是待求未知數(shù),屬性c和p都是已知數(shù),LINGO建模語言通過數(shù)據(jù)初始化部分來實(shí)現(xiàn)對已知屬性賦以初始值,格式為:

DATA:

p=0.066,0.18,0.238,0.385,0.477 0.084,0.228,0.376,0.580,0.831 0.017,0.076,0.154,0.810,0.810 0.000,0.015,0.552,0.826,0.826; c=100,60,40,20,0 250,180,120,90,0 50,42,30,0,0 50,40,30,0,0; ENDDATA

2.2.3目標(biāo)函數(shù)和約束條件

目標(biāo)函數(shù)表達(dá)式:,表達(dá)式中p和x即links的兩個(gè)屬性。

如果表達(dá)式中參與運(yùn)算的屬性屬于同一個(gè)集合,則@prod語句中索引(i,j)(或下標(biāo))可以省略,假如表達(dá)式中參與運(yùn)算的屬性屬于不同的集合,則不能省略屬性的索引,故前一LINGO語句可寫為:max=@prod(links:1-p*x);

約束條件實(shí)際上表示了4個(gè)不等式,用LINGO語言表示該約束條件,語句為:@for(measure(i):@sum(links(i,j):x(i,j))=1);語句中@for是LINGO提供的內(nèi)部函數(shù),它的作用是對某個(gè)集合的所有成員分別生成一個(gè)約束表達(dá)式,它有兩個(gè)參數(shù),以上述語句為例,@for的一個(gè)參數(shù)為measure,它表示指標(biāo)或措施,共有4個(gè)成員,故應(yīng)生成4個(gè)約束表達(dá)式,@for的第二個(gè)參數(shù)是約束表達(dá)式的具體內(nèi)容,此外再調(diào)用@sum函數(shù)(使用方法和@prod函數(shù)相同),表示約束表達(dá)式的左邊是求和,是對集合links的5個(gè)成員,并且對表達(dá)式X(i,j)中的第二維j求和,即

用LINGO語句表示為:

@sum(links(i,j):c(i,j)*x(i,j))

2.3完整的模型

MODEL:

SETS:

scheme/s1..s5/;

measure/m1..m4/;

links(measure,scheme):c,p,x;

ENDSETS

DATA:

p=0.066,0.18,0.238,0.385,0.477

0.084,0.228,0.376,0.580,0.831

0.017,0.076,0.154,0.810,0.810

0.000,0.015,0.552,0.826,0.826;

c=100,60,40,20,0

250,180,120,90,0

50,42,30,0,0

50,40,30,0,0;

ENDDATA

max=@prod(links(i,j):1-p(i,j)*x(i,j));

@sum(links(i,j):c(i,j)*x(i,j))

@for(links(i,j):@bin(x(i,j)));

@for(measure(i):@sum(links(i,j):x(i,j))=1); END

3求解報(bào)告分析

點(diǎn)擊“求解”按鈕,很快得出求解報(bào)告,部分求解報(bào)告如下:

Objective value:0.7272757

……

VariableValueReduced Cost

……(省略c,p常量的列舉)

X( M1, S1)0.000000-0.4012672E-01 X( M1, S2)1.0000000.1487580E-01 X( M1, S3)0.0000000.000000

X( M1, S4)0.0000000.7858797E-01 X( M1, S5)0.0000000.1171758

……(省略指標(biāo)2、3、4的求解結(jié)果)

以指標(biāo)一為例,x12求得等于1,其它三項(xiàng)為0,說明在最優(yōu)方案中,指標(biāo)一系統(tǒng)穩(wěn)壓設(shè)施采用方案2,其它三項(xiàng)若使用達(dá)不到總體的這個(gè)最優(yōu)結(jié)果,故不使用。同理,x21,x31,x42為1,即分別對應(yīng)系統(tǒng)結(jié)構(gòu)抗力措施采取方案1,防震隔振措施采取方案1,屏蔽防護(hù)措施采取方案2時(shí),該監(jiān)控系統(tǒng)可得到最大的安全防護(hù)概率0.727%。

4結(jié)束語

通過對這個(gè)非線性規(guī)劃類問題的建模求解,體現(xiàn)了運(yùn)用LINGO軟件求解非線性規(guī)劃問題的三個(gè)優(yōu)點(diǎn):一是工程實(shí)際中涉及到的運(yùn)籌分析往往是包含大小多個(gè)不同的系統(tǒng),LINGO軟件的編程語言可以簡明高效的表達(dá)其中的各類數(shù)學(xué)關(guān)系,定義部分也較為簡單直觀。“集”在建模的過程中簡化了運(yùn)算關(guān)系;二是LINGO軟件提供了大量的內(nèi)部函數(shù),可以簡單有效地表達(dá)目標(biāo)函數(shù)以及約束條件,如求和表達(dá)式,若用直接輸入的方式,將有200個(gè)Nij和200個(gè)Mij相乘再相加,需要輸出長長一大竄,不便于輸入和修改,提供的@sum,@prod則大大簡化了編程輸入;三是符合LINGO的“集”和其它部分編程的語法規(guī)定的表達(dá)式都可以進(jìn)行計(jì)算,沒有線性規(guī)劃和非線性規(guī)劃的具體區(qū)別。而如果用手工計(jì)算,兩者對應(yīng)的完全是不同的求解方法,非線性問題的解決也相當(dāng)復(fù)雜,一般人較難掌握。

參考文獻(xiàn):

[1]謝金星,薛毅.優(yōu)化建模與LINGO/LINDO軟件[M].北京:清華大學(xué)出版社,2005.

[2]袁新生,邵大宏,郁時(shí)煉.LINGO和Excel在數(shù)學(xué)建模中的應(yīng)用[M].北京:科學(xué)出版社,2007.

[3]甘應(yīng)愛,田豐,李梅生.運(yùn)籌學(xué)[M].北京:清華大學(xué)出版社,2005.