關(guān)于我們
書單推薦
新書推薦
|
MATLAB/Simulink實用教程/programming, simulation and application in electronic information discipline/編程、仿真及電子信息學(xué)科應(yīng)用
本書深入淺出介紹MATLAB語言的基礎(chǔ)知識以及MATLAB在電子信息處理、控制系統(tǒng)和通信系統(tǒng)中的應(yīng)用。共分為11章, 內(nèi)容包括: MATLAB語言概述、矩陣及其運算、程序設(shè)計、數(shù)值計算、符號計算、繪圖及圖像處理基礎(chǔ)、Simulink仿真 、MATLAB在電子信息處理中應(yīng)用、MATLAB在控制系統(tǒng)中應(yīng)用 、MATLAB在通信系統(tǒng)中應(yīng)用和MATLAB實驗。
本教材嚴格參照教育部頒布的《普通高等學(xué)校本科專業(yè)目錄(2012年)》、教育部高等學(xué)校電子電氣基礎(chǔ)課程教學(xué)指導(dǎo)分委員會頒布的《電子電氣基礎(chǔ)課程教學(xué)基本要求》編寫;并以當今流行的MATLABR2016a和Simulink8.7為平臺,在作者十余年從事MATLAB課程教學(xué)、課程改革、畢業(yè)設(shè)計指導(dǎo)和利用MATLAB進行科學(xué)研究的經(jīng)驗的基礎(chǔ)上編著而成。本書具有以下特色:
(1)內(nèi)容編排科學(xué)合理以先基礎(chǔ)后應(yīng)用、先理論后實踐、循序漸進的原則進行編排,便于讀者學(xué)習(xí)和掌握MATLAB編程方法。
(2)內(nèi)容豐富,例題新穎本書結(jié)合編者多年的MATLAB教學(xué)和使用經(jīng)驗,詳細介紹MATLAB的基本內(nèi)容,列舉豐富的例題和應(yīng)用實例,便于讀者更好理解和掌握MATLAB各種函數(shù)和命令。
(3)理論與應(yīng)用有機結(jié)合本書前7章介紹MATLAB基礎(chǔ)內(nèi)容,每章最后一節(jié)都給出應(yīng)用實例,第8到第10章詳細介紹MATLAB在電子信息處理、控制系統(tǒng)和通信系統(tǒng)中應(yīng)用,從而引導(dǎo)讀者更好地用MATLAB解決專業(yè)領(lǐng)域的實際應(yīng)用問題。
(4)理論教學(xué)與上機實驗相配套為了便于教師教學(xué),本書提供配套的電子教案,所有例題和應(yīng)用實例的源代碼以及所有圖片;為了便于讀者上機做實驗,本書提供MATLAB基本內(nèi)容的十個實驗內(nèi)容。
(5)提供配套教學(xué)課件可到清華大學(xué)出版社網(wǎng)站本書頁面下載。
(6)提供配套例題源代碼、全書圖片、教學(xué)大綱、授課計劃等教學(xué)資料。
前言
MATLAB由MathWorks公司開發(fā),目前已經(jīng)發(fā)展成為國際上最流行、應(yīng)用最廣的科學(xué)計算軟件之一。MATLAB軟件具有強大的矩陣計算、數(shù)值計算、符號計算、數(shù)據(jù)可視化和系統(tǒng)仿真分析等功能,廣泛應(yīng)用于科學(xué)計算、信號處理與通信、圖像處理、信號檢測、控制設(shè)計、仿真分析、金融建模設(shè)計與分析等領(lǐng)域,也成為線性代數(shù)、高等數(shù)學(xué)、概率論與數(shù)理統(tǒng)計、數(shù)字信號處理、信號與系統(tǒng)、數(shù)字圖像處理、自動控制原理、時間序列分析和動態(tài)系統(tǒng)仿真等課程的基本教學(xué)工具。近些年來,MATLAB成為國內(nèi)外眾多高校本科生和研究生的課程,成為學(xué)生必須掌握的基本編程語言之一,也成為教師、科研人員和工程師們進行教學(xué)、科學(xué)研究和生產(chǎn)實踐的一個基本工具。
本書是以當今流行的MATLABR2016a和Simulink8.7為平臺編寫的,是作者十余年在高校從事MATLAB課程教學(xué)、課程改革、畢業(yè)設(shè)計指導(dǎo)和利用MATLAB進行科學(xué)研究的基礎(chǔ)上編著而成,具有以下特點:
。1)內(nèi)容編排合理科學(xué)。先基礎(chǔ)后應(yīng)用,先理論后實驗,由淺入深、循序漸進地進行編排,便于讀者學(xué)習(xí)和掌握MATLAB。
。2)內(nèi)容豐富,例題新穎。本書結(jié)合編者多年的MATLAB教學(xué)和使用經(jīng)驗,詳細介紹最新的MATLAB版本基本內(nèi)容,列舉豐富的例題和應(yīng)用實例,便于讀者更好掌握MATLAB的各種函數(shù)和命令。
。3)理論與應(yīng)用有機結(jié)合。本書前7章介紹MATLAB基礎(chǔ)內(nèi)容,每章最后一節(jié)都給出應(yīng)用實例,第8章到第10章詳細介紹MATLAB在電子信息處理、控制系統(tǒng)和通信系統(tǒng)中的應(yīng)用,從而引導(dǎo)讀者更好地用MATLAB解決專業(yè)領(lǐng)域的實際應(yīng)用問題。
。4)理論教學(xué)與上機實驗相配套。為了便于教師教學(xué),本書提供配套的電子教案,以及所有例題和應(yīng)用實例的源代碼和所有圖片;為了便于讀者上機做實驗,本書提供了MATLAB基本內(nèi)容的10個實驗內(nèi)容。
本書內(nèi)容分三部分:MATLAB/Simulink基礎(chǔ)篇、MATLAB/Simulink應(yīng)用篇和MATLAB/Simulink實驗篇。MATLAB/Simulink基礎(chǔ)篇包括:第1章MATLAB語言概述,主要介紹MATLAB語言的發(fā)展、特點、環(huán)境、幫助系統(tǒng)、數(shù)據(jù)類型和運算符;第2章MATLAB矩陣及其運算,主要介紹矩陣的創(chuàng)建、修改和基本運算、矩陣分析、字符串、多維數(shù)組、結(jié)構(gòu)數(shù)組和元胞數(shù)組;第3章MATLAB程序結(jié)構(gòu)和M文件,主要介紹MATLAB程序結(jié)構(gòu)、M腳本文件、M函數(shù)文件和程序調(diào)試;第4章MATLAB數(shù)值計算,主要介紹多項式運算、數(shù)據(jù)插值、數(shù)據(jù)擬合、數(shù)據(jù)統(tǒng)計和數(shù)值計算;第5章MATLAB符號計算,主要介紹符號定義、符號運算、符號極限、符號微分和積分;第6章MATLAB數(shù)據(jù)可視化,主要介紹MATLAB二維曲線繪制、二維特殊圖形繪制、三維曲線和曲面繪制;第7章Simulink仿真基礎(chǔ),主要包括Simulink簡介、常用模塊、模塊編輯和Simulink仿真。MATLAB/Simulink應(yīng)用篇主要包括:第8章MATLAB在電子信息處理中的應(yīng)用,主要介紹在信號與系統(tǒng)、數(shù)字信號處理和數(shù)字圖像處理中的應(yīng)用;第9章MATLAB在控制系統(tǒng)中的應(yīng)用,主要介紹控制系統(tǒng)的模型、時序分析、頻域分析、根軌跡分析和狀態(tài)空間分析、極點配置和觀測器設(shè)置,以及最優(yōu)控制系統(tǒng)設(shè)計;第10章MATLAB在通信系統(tǒng)中的應(yīng)用,主要介紹通信工具箱函數(shù)、信息的度量與編碼、差錯控制編/譯碼、模擬調(diào)制與解調(diào)、數(shù)字調(diào)制與解調(diào)和通信系統(tǒng)的性能仿真。MATLAB/Simulink實驗篇介紹10個基本的MATLAB實驗內(nèi)容。
本書適合作為高等院校理工科專業(yè),尤其是電子信息工程、電子科學(xué)技術(shù)、自動化、電氣工程和通信工程等專業(yè)的教學(xué)用書,也可以作為研究生、科研與工程技術(shù)人員的參考用書。電子信息工程和電子科學(xué)技術(shù)專業(yè)的學(xué)生可以選擇本書的第1~8章和第11章內(nèi)容學(xué)習(xí);自動化和電氣工程專業(yè)的學(xué)生可以選擇本書的第1~7章,第9章和第11章內(nèi)容學(xué)習(xí);通信工程專業(yè)的學(xué)生可以選擇第1~7章、第10章和第11章內(nèi)容學(xué)習(xí)。建議授課學(xué)時為40或48個學(xué)時。對于短課時(如32學(xué)時)低年級課程,可以講授第1~7章基礎(chǔ)內(nèi)容以及第11章實驗部分,應(yīng)用部分可以留給學(xué)生自學(xué)。
本書第1~4章,第6章和第11章由徐國保編寫,第7章和第9章由趙黎明編寫,第5章和第10章由吳凡編寫,第8章由郭磊編寫。為了確保本書的質(zhì)量,應(yīng)用部分由教學(xué)經(jīng)驗豐富的相關(guān)專業(yè)任課教師編寫。本書的編寫思路與內(nèi)容選擇由編者集體討論確定,全書由徐國保負責統(tǒng)稿和定稿。在本書的編寫過程中,參考和引用了相關(guān)教材和資料,在此一并向教材和資料的作者表示誠摯的謝意。
為了便于學(xué)生學(xué)習(xí),全書附有習(xí)題的參考答案和所有例題的源代碼。為了方便教師教學(xué),本書配有教學(xué)課件和所有圖片素材,歡迎選用本書作為教材的老師索取,索取郵箱:xuguobao@126.com。
由于編者的水平有限,書中難免存在不妥之處,歡迎使用本書的教師、學(xué)生和科技人員批評指正,以便再版時改進和提高。
編者2017年7月
第一部分MATLAB/Simulink基礎(chǔ)篇
第1章MATLAB語言概述
1.1MATLAB語言的發(fā)展
1.2MATLAB語言的特點
1.3MATLAB語言的環(huán)境
1.3.1MATLAB語言的安裝
1.3.2MATLAB語言的界面簡介
1.4MATLAB幫助系統(tǒng)
1.4.1help查詢幫助函數(shù)
1.4.2lookfor查詢幫助函數(shù)
1.4.3聯(lián)機幫助系統(tǒng)
1.5MATLAB數(shù)據(jù)類型
1.5.1常量和變量
1.5.2整數(shù)和浮點數(shù)
1.5.3復(fù)數(shù)
1.6MATLAB運算符
1.6.1算術(shù)運算符
1.6.2關(guān)系運算符
1.6.3邏輯運算符
1.6.4優(yōu)先級
1.7應(yīng)用實例
1.7.1計算一般數(shù)學(xué)公式
1.7.2繪制整流波形圖
習(xí)題1
第2章MATLAB矩陣及其運算
2.1矩陣的創(chuàng)建
2.1.1直接輸入矩陣
2.1.2冒號生成矩陣
2.1.3利用函數(shù)生成矩陣
2.1.4利用文本文件生成矩陣
2.1.5利用M文件生成矩陣
2.1.6特殊矩陣的生成
2.2矩陣的修改
2.2.1矩陣部分替換
2.2.2矩陣部分刪除
2.2.3矩陣部分擴展
2.2.4矩陣結(jié)構(gòu)變換
2.3矩陣的基本運算
2.3.1矩陣的加減運算
2.3.2矩陣的乘法運算
2.3.3矩陣的除法運算
2.3.4矩陣的乘方運算
2.3.5矩陣的點運算
2.4矩陣的分析
2.4.1方矩陣的行列式
2.4.2矩陣的秩和跡
2.4.3矩陣的逆和偽逆
2.4.4矩陣的特征值和特征向量
2.4.5矩陣的分解
2.4.6矩陣的信息獲取函數(shù)
2.5字符串
2.5.1字符串的創(chuàng)建
2.5.2字符串的操作
2.5.3字符串轉(zhuǎn)換
2.6多維數(shù)組
2.6.1多維數(shù)組的創(chuàng)建
2.6.2多維數(shù)組的操作
2.7結(jié)構(gòu)數(shù)組和元胞數(shù)組
2.7.1結(jié)構(gòu)數(shù)組
2.7.2元胞數(shù)組
2.8矩陣及其運算應(yīng)用實例
2.8.1矩陣在圖像處理中的應(yīng)用
2.8.2線性方程組的求解
2.8.3多維數(shù)組在彩色圖像中的應(yīng)用
習(xí)題2
第3章MATLAB程序結(jié)構(gòu)和M文件
3.1程序結(jié)構(gòu)
3.1.1順序結(jié)構(gòu)
3.1.2選擇結(jié)構(gòu)
3.1.3循環(huán)結(jié)構(gòu)
3.1.4程序控制命令
3.2M文件
3.2.1M文件的分類和特點
3.2.2M文件的創(chuàng)建和打開
3.3M函數(shù)文件
3.3.1M函數(shù)文件的格式
3.3.2M函數(shù)文件的調(diào)用
3.3.3主函數(shù)和子函數(shù)
3.3.4函數(shù)的參數(shù)
3.3.5函數(shù)的變量
3.4程序調(diào)試
3.4.1命令窗口調(diào)試
3.4.2MATLAB菜單調(diào)試
3.4.3MATLAB調(diào)試函數(shù)
3.5應(yīng)用實例
習(xí)題3
第4章MATLAB數(shù)值計算
4.1多項式
4.1.1多項式的創(chuàng)建
4.1.2多項式的值和根
4.1.3多項式的四則運算
4.1.4多項式的微積分運算
4.1.5多項式的部分分式展開
4.2數(shù)據(jù)插值
4.2.1一維插值
4.2.2二維插值
4.2.3多維插值
4.3數(shù)據(jù)擬合
4.4數(shù)據(jù)統(tǒng)計
4.4.1矩陣元素的最大值和最小值
4.4.2矩陣元素的平均值和中值
4.4.3矩陣元素的排序
4.4.4矩陣元素求和和求積
4.4.5矩陣元素的累加和與累乘積
4.4.6標準方差和相關(guān)系數(shù)
4.5數(shù)值計算
4.5.1函數(shù)極值
4.5.2函數(shù)零點
4.5.3數(shù)值差分
4.5.4數(shù)值積分
4.5.5常微分方程求解
4.6應(yīng)用實例
習(xí)題4
第5章MATLAB符號運算
5.1MATLAB符號運算的特點
5.2MATLAB符號對象的創(chuàng)建和使用
5.3符號多項式函數(shù)運算
5.3.1多項式函數(shù)的符號表達形式及相互轉(zhuǎn)換
5.3.2符號多項式的向量表示形式及其計算
5.3.3反函數(shù)和復(fù)合函數(shù)求解
5.4符號微積分運算
5.4.1函數(shù)的極限和級數(shù)運算
5.4.2符號微分運算
5.4.3符號積分運算
5.5符號方程求解
5.5.1符號代數(shù)方程求解
5.5.2符號常微分方程求解
5.5.3一維偏微分方程求解
5.6應(yīng)用實例
習(xí)題5
第6章MATLAB數(shù)據(jù)可視化
6.1概述
6.2二維曲線的繪制
6.2.1繪圖基本函數(shù)
6.2.2線性圖格式設(shè)置
6.2.3圖形修飾
6.2.4圖形保持
6.2.5多個圖形繪制
6.3二維特殊圖形的繪制
6.3.1柱狀圖
6.3.2餅形圖
6.3.3直方圖
6.3.4離散數(shù)據(jù)圖
6.3.5向量圖
6.3.6極坐標圖
6.3.7對數(shù)坐標圖
6.3.8雙縱坐標繪圖
6.3.9函數(shù)繪圖
6.4三維曲線和曲面的繪制
6.4.1繪制三維曲線圖
6.4.2繪制三維曲面圖
6.4.3特殊的三維圖形
6.4.4繪制動畫圖形
6.5MATLAB圖形窗口
6.6應(yīng)用實例
習(xí)題6
第7章Simulink仿真基礎(chǔ)
7.1Simulink概述
7.1.1Simulink的基本概念
7.1.2Simulink模塊的組成
7.1.3Simulink中的數(shù)據(jù)類型
7.2Simulink的使用
7.2.1Simulink的啟動和退出
7.2.2在Simulink的窗口創(chuàng)建一個新模型
7.2.3Simulink模塊的操作
7.2.4Simulink的建模和仿真
7.3Simulink的模塊庫及模塊
7.3.1CommonlyUsedBlocks子模塊庫
7.3.2Continuous子模塊庫
7.3.3Dashboard子模塊庫
7.3.4Discontinuous子模塊庫
7.3.5Discrete子模塊庫
7.3.6LogicandBitOperations子模塊庫
7.3.7LookupTables子模塊庫
7.3.8MathOperations子模塊庫
7.3.9ModelVerification子模塊庫
7.3.10ModelWideUtilities子模塊庫
7.3.11Ports&Subsystems子模塊庫
7.3.12SignalsAttributes子模塊庫
7.3.13SignalsRouting子模塊庫
7.3.14Sinks子模塊庫
7.3.15Sources子模塊庫
7.3.16UserdefinedFunctions子模塊庫
7.4Simulink模塊操作及建模
7.4.1Simulink模型
7.4.2Simulink模塊的基本操作
7.4.3系統(tǒng)模型注釋與信號標簽設(shè)置
7.4.4Simulink建模
7.5Simulink模塊及仿真參數(shù)設(shè)置
7.5.1模塊參數(shù)設(shè)置
7.5.2Simulink仿真參數(shù)設(shè)置
7.6過零檢測和代數(shù)環(huán)
7.6.1過零檢測
7.6.2代數(shù)環(huán)
7.7應(yīng)用實例
習(xí)題7
第二部分MATLAB/Simulink應(yīng)用篇
第8章MATLAB在電子信息處理中的應(yīng)用
8.1MATLAB在信號與系統(tǒng)中的應(yīng)用
8.1.1信號及表示
8.1.2信號的基本運算
8.1.3信號的能量和功率
8.1.4線性時不變系統(tǒng)的創(chuàng)建
8.1.5線性時不變系統(tǒng)的時域分析
8.1.6線性時不變系統(tǒng)的頻域分析
8.2MATLAB在數(shù)字信號處理中的應(yīng)用
8.2.1傅里葉變換
8.2.2IIR數(shù)字濾波器的設(shè)計
8.2.3FIR數(shù)字濾波器的設(shè)計
8.3MATLAB在數(shù)字圖像處理中的應(yīng)用
8.3.1數(shù)字圖像的讀取、顯示和存儲
8.3.2數(shù)字圖像的類型及轉(zhuǎn)換
8.3.3圖像的基本運算
8.3.4圖像增強
8.3.5圖像濾波
8.3.6圖像邊緣檢測
8.3.7圖像壓縮
第9章MATLAB在控制系統(tǒng)中的應(yīng)用
9.1控制系統(tǒng)的模型描述
9.1.1控制系統(tǒng)的模型與表達式
9.1.2控制系統(tǒng)模型間的關(guān)系
9.2控制系統(tǒng)的時域分析與MATLAB實現(xiàn)
9.2.1線性系統(tǒng)的穩(wěn)定性分析
9.2.2控制系統(tǒng)的動態(tài)響應(yīng)
9.2.3控制系統(tǒng)的時域響應(yīng)指標
9.3控制系統(tǒng)的頻域分析與MATLAB實現(xiàn)
9.3.1控制系統(tǒng)的頻域分析
9.3.2控制系統(tǒng)的頻域分析性能指標
9.4控制系統(tǒng)的根軌跡分析
9.4.1控制系統(tǒng)的根軌跡分析
9.4.2根軌跡設(shè)計工具
9.5控制系統(tǒng)的狀態(tài)空間分析
9.5.1狀態(tài)空間的線性變換
9.5.2狀態(tài)空間的能控性和能觀性
9.5.3狀態(tài)空間的狀態(tài)反饋與極點配置
9.6控制系統(tǒng)綜合實例與應(yīng)用設(shè)計
9.6.1控制系統(tǒng)綜合實例
9.6.2簡單運動系統(tǒng)的建模及仿真
9.6.3“彈簧質(zhì)量阻尼”系統(tǒng)的建模及仿真
9.6.4單容過程系統(tǒng)的建模及仿真
第10章MATLAB在通信系統(tǒng)中的應(yīng)用
10.1MATLAB通信工具箱的組成
10.2信息量度與信源編碼
10.2.1信息的量度計算
10.2.2模擬信號量化和數(shù)字化
10.2.3信源編碼
10.3差錯控制和信道編碼
10.3.1線性分組碼編解碼
10.3.2交織編碼
10.3.3擾碼與解擾
10.4模擬調(diào)制與解調(diào)
10.4.1幅度調(diào)制與解調(diào)
10.4.2角度調(diào)制與解調(diào)
10.5數(shù)字調(diào)制與解調(diào)
10.5.1數(shù)字調(diào)制
10.5.2數(shù)字解調(diào)
10.6數(shù)字通信系統(tǒng)性能仿真
10.6.1數(shù)字信號的比特能量與AWGN信道
10.6.2數(shù)字通信系統(tǒng)的誤碼率仿真
第三部分MATLAB/Simulink實驗篇
第11章MATLAB實驗
實驗一MATLAB運算基礎(chǔ)
實驗二向量和矩陣的運算
實驗三字符串及矩陣分析
實驗四M腳本文件和函數(shù)文件
實驗五程序結(jié)構(gòu)設(shè)計
實驗六多項式運算及多項式插值和擬合
實驗七數(shù)據(jù)統(tǒng)計和數(shù)值計算
實驗八符號計算
實驗九MATLAB繪圖
實驗十Simulink仿真
附錄習(xí)題答案
參考文獻
第3章MATLAB程序結(jié)構(gòu)和M文件
本章要點:
程序結(jié)構(gòu);
M文件;
M函數(shù)文件;
程序調(diào)用。
MATLABR2016a和其他高級編程語言(如C語言和FORTRAN語言)一樣,要實現(xiàn)復(fù)雜的功能需要編寫程序文件和調(diào)用各種函數(shù)。
3.1程序結(jié)構(gòu)
MATLAB語言有三種常用的程序控制結(jié)構(gòu):順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。MATLAB語言里的任何復(fù)雜程序都可以由這三種基本結(jié)構(gòu)組成。
3.1.1順序結(jié)構(gòu)
順序結(jié)構(gòu)是MATLAB語言程序的最基本的結(jié)構(gòu),是指按照程序中的語句排列順序依次執(zhí)行,每行語句是從左往右執(zhí)行,不同行語句是從上往下執(zhí)行。一般數(shù)據(jù)的輸入和輸出、數(shù)據(jù)的計算和處理程序都是順序結(jié)構(gòu)。順序結(jié)構(gòu)的基本流程如圖31所示,程序先執(zhí)行語句A,然后執(zhí)行語句B,最后執(zhí)行語句C。
圖31順序結(jié)構(gòu)流程圖
1.數(shù)據(jù)的輸入
MATLAB語言要從鍵盤輸入數(shù)據(jù),可以使用input函數(shù),該函數(shù)的調(diào)用格式有如下兩種。
1)x=input('提示信息')
其中,提示信息表示字符串,用于提示用戶輸入什么樣的數(shù)據(jù),等待用戶從鍵盤輸入數(shù)據(jù),賦值給變量x。
例如,從鍵盤中輸入變量x,可以用下面的命令實現(xiàn):
>>x=input('輸入變量x:')
輸入變量x:3
x=
3
執(zhí)行該語句時,命令行窗口顯示提示信息“輸入變量x:”,然后等待用戶從鍵盤輸入x的值。
2)str=input('提示信息','s')
其中,該格式用于用戶輸入一個字符串,賦值給字符變量str。
例如,用戶想從鍵盤輸入自己的名字,賦值給字符變量str,可以采用下面命令:
>>str=input('what''syourname?','s')
what'syourname?XuGuobao
str=
XuGuobao
執(zhí)行該語句時,命令行窗口顯示提示信息“what'syourname?”,然后等待用戶從鍵盤輸入字符變量str的值。
2.數(shù)據(jù)的輸出
MATLAB語言可以在命令窗口顯示輸出信息,可以用函數(shù)disp實現(xiàn),該函數(shù)的調(diào)用格式如下:
disp('輸出信息')
其中,輸出信息可以是字符串,也可以是矩陣信息。例如:
>>disp('What''syourname?')
disp('MynameisXuGuobao')
What'syourname?
MynameisXuGuobao
>>A=[12;34];
>>disp(A)
12
34
需要注意,用disp函數(shù)顯示矩陣信息將不顯示矩陣的變量名,輸出格式更緊湊,沒有空行。
【例31】從鍵盤輸入a、b和c的值,求解一元二次方程ax2+bx+c=0的根。
程序代碼如下:
a=input('a=');
b=input('b=');
c=input('c=');%從鍵盤輸入a、b和c的值
delt=b*b-4*a*c;
x1=(-b+sqrt(delt))/(2*a);
x2=(-b-sqrt(delt))/(2*a);
disp(['x1=',num2str(x1)]);%顯示x1和x2的值
disp(['x2=',num2str(x2)]);
程序運行結(jié)果是:
>>exam_3_1
a=1
b=-5
c=6
x1=3
x2=2
再一次運行程序后的結(jié)果是:
>>exam_3_1
a=1
b=2
c=3
x1=-1+1.4142i
x2=-1-1.4142i
由上面程序結(jié)果可知,MATLAB語言的數(shù)據(jù)輸入、數(shù)據(jù)處理和數(shù)據(jù)輸出命令都是按照順序結(jié)構(gòu)執(zhí)行的。
3.1.2選擇結(jié)構(gòu)
MATLAB語言的選擇結(jié)構(gòu)是根據(jù)選定的條件成立或者不成立,分別執(zhí)行不同的語句。選擇結(jié)構(gòu)有下面三種常用語句:if語句、switch語句和try語句。
……
你還可能感興趣
我要評論
|