国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

數(shù)學(xué)建模----MATLAB----for&&while循環(huán)(進(jìn)階)

這篇具有很好參考價(jià)值的文章主要介紹了數(shù)學(xué)建模----MATLAB----for&&while循環(huán)(進(jìn)階)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

目錄

1.for循環(huán)的運(yùn)用

(1)求和計(jì)算

(2)閏年的判斷

(3)斐波那契數(shù)列的計(jì)算

(4)一列數(shù)的5個(gè)數(shù)據(jù)一樣,刪除,5個(gè)數(shù)據(jù)不一樣,就保留下來(lái);

2.while循環(huán)

(1)基本語(yǔ)法

(2)條件斷點(diǎn)的設(shè)置

(3)斐波那契數(shù)列

(4)循環(huán)注意事項(xiàng)

3.循環(huán)里面的break&&continue

(1)break語(yǔ)句

(2)continue語(yǔ)句


1.for循環(huán)的運(yùn)用

(1)求和計(jì)算

matlab用for循環(huán)求斐波那契數(shù)列,數(shù)學(xué)建模,matlab

利用for循環(huán)求和,設(shè)置求和變量和循環(huán)變量:

matlab用for循環(huán)求斐波那契數(shù)列,數(shù)學(xué)建模,matlab

我們可以打印出來(lái)每次計(jì)算的結(jié)果:

matlab用for循環(huán)求斐波那契數(shù)列,數(shù)學(xué)建模,matlab

這個(gè)雙重循環(huán)就可以把每次計(jì)算的結(jié)果打印出來(lái);

(2)閏年的判斷

matlab用for循環(huán)求斐波那契數(shù)列,數(shù)學(xué)建模,matlab

mod是求余函數(shù),count作為一個(gè)計(jì)數(shù)器,每次遇到符合條件的數(shù)字,就會(huì)加上1,最后得到9999個(gè)數(shù)字里面,閏年的個(gè)數(shù);

(3)水仙花數(shù)的打印輸出

matlab用for循環(huán)求斐波那契數(shù)列,數(shù)學(xué)建模,matlab

水仙花數(shù)就是每個(gè)數(shù)位上面數(shù)字的立方等于這個(gè)數(shù)字本身的數(shù)字,我們需要得到一個(gè)數(shù)字每個(gè)數(shù)位上面的數(shù)字,這個(gè)就要用到除數(shù)/求余函數(shù)(floor函數(shù)是求商,mod是求余數(shù);

這2個(gè)函數(shù),floor里面的是斜杠,mod里面的是逗號(hào),最后我們把符合條件的水仙花數(shù)添加到我們的空向量S里面;

對(duì)于拿到一個(gè)數(shù)字每個(gè)數(shù)位上面的數(shù),我們還有其他的方法,這個(gè)就要用到字符串的相關(guān)知識(shí),我們這里只是認(rèn)識(shí)一下,后面還是會(huì)遇到的:

matlab用for循環(huán)求斐波那契數(shù)列,數(shù)學(xué)建模,matlab

num2str就是把數(shù)字轉(zhuǎn)換成字符串,str2num就是把字符串轉(zhuǎn)換為數(shù)字;

我們先隨機(jī)生成一個(gè)數(shù)字,然后轉(zhuǎn)換成字符串,字符串進(jìn)行轉(zhuǎn)置后再轉(zhuǎn)換成數(shù)字,就可以取出里面的每一位;

matlab用for循環(huán)求斐波那契數(shù)列,數(shù)學(xué)建模,matlab

我們?cè)O(shè)置temp是一個(gè)列向量,temp(1)就是里面的第一個(gè)元素,這樣就可以使用temp(n)拿到里面的每一個(gè)元素,立方之后求和在和num進(jìn)行比較就可以了;

(3)斐波那契數(shù)列的計(jì)算

我們這里計(jì)算前30項(xiàng):

matlab用for循環(huán)求斐波那契數(shù)列,數(shù)學(xué)建模,matlab

先是生成一個(gè)行向量(30個(gè)全1),這樣我們每次計(jì)算的結(jié)果放進(jìn)去就可以覆蓋原來(lái)的結(jié)果了;

因?yàn)殪巢瞧鯏?shù)列的前面2個(gè)元素都是1,因此我們的k從3開始算的;

每次計(jì)算一個(gè)結(jié)果放到我們自己定義的向量里面去,這樣就可以觀察到計(jì)算的過(guò)程(把分號(hào)去掉)

(4)一列數(shù)的5個(gè)數(shù)據(jù)一樣,刪除,5個(gè)數(shù)據(jù)不一樣,就保留下來(lái);

matlab用for循環(huán)求斐波那契數(shù)列,數(shù)學(xué)建模,matlab

我們首先要隨機(jī)生成一個(gè)矩陣:用來(lái)存儲(chǔ)符合條件的某幾列,arr2=unique(column)這個(gè)代碼的意思就是unique是一個(gè)函數(shù),這個(gè)函數(shù)的返回值就是這個(gè)向量里面唯一的數(shù)字,因?yàn)檫@個(gè)for循環(huán),我們每一次都是從arr里面取出來(lái)一列,也就是說(shuō),如果這一列的數(shù)字里面的某個(gè)數(shù)字重復(fù)出現(xiàn)的話,我們就會(huì)只保留一次,舉一個(gè)簡(jiǎn)單的實(shí)例:例如我們的column有5個(gè)數(shù)字2 3 4 5 3,這個(gè)行向量的5個(gè)數(shù)字里面,3出現(xiàn)了兩次,經(jīng)過(guò)unique函數(shù)的調(diào)用以后,arr2這個(gè)行向量里面的數(shù)字就是2 3 4 5,也就是只剩下了4個(gè)數(shù)字,這4個(gè)數(shù)字互不相同,然后我們?cè)偃ビ?jì)算這個(gè)新的向量的長(zhǎng)度,如果他經(jīng)過(guò)了unique函數(shù)的調(diào)用之后,長(zhǎng)度依然是5,就可以表明這個(gè)行向量的5個(gè)元素是互不相同的,這個(gè)里面判斷完成之后相當(dāng)于是進(jìn)行了一個(gè)字符串的拼接,只不過(guò)這個(gè)里面沒(méi)有字符串,都是列向量,我們把符合條件的列向量重新放到一個(gè)新的向量newarr里面去;

下面還有一種解決方案:利用眾數(shù),返回的第一個(gè)是眾數(shù)的具體值,這個(gè)我們并不關(guān)注(所以在代碼里面我是用波浪線進(jìn)行標(biāo)識(shí)的),我們關(guān)注的是出現(xiàn)的次數(shù),如果f=1,也就是說(shuō)明這個(gè)數(shù)組里面的眾數(shù),也就是出現(xiàn)的次數(shù)最多的數(shù)字,也就出現(xiàn)了一次,說(shuō)明這個(gè)數(shù)組里面的數(shù)字各不相同,否則,有任何兩個(gè)數(shù)字是一樣的,眾數(shù)就是2了,這個(gè)也是可以進(jìn)行判斷的,最后我們把符合條件的這一列添加到我們新建的空的向量newarr里面去;

matlab用for循環(huán)求斐波那契數(shù)列,數(shù)學(xué)建模,matlab

(5)注意事項(xiàng)

1.for語(yǔ)句后面的是空語(yǔ)句,那么循環(huán)體一次也不會(huì)執(zhí)行:

這個(gè)地方的2:1就是一個(gè)空語(yǔ)句,那么在matlab里面就不會(huì)把我們的變量x的值10打印出來(lái);

matlab用for循環(huán)求斐波那契數(shù)列,數(shù)學(xué)建模,matlab

2.for后面的語(yǔ)句只會(huì)在開始的時(shí)候使用一次,后續(xù)的時(shí)候,就算我們進(jìn)行修改,執(zhí)行的還是原來(lái)的

下面的這個(gè)實(shí)例,我們企圖通過(guò)循環(huán)體里面的語(yǔ)句,把原來(lái)的1~4,全部修改為0,然后進(jìn)行打印,但是最后輸出的結(jié)果還是我們?cè)瓉?lái)的1~4;matlab用for循環(huán)求斐波那契數(shù)列,數(shù)學(xué)建模,matlab

3.下面我們?cè)谘h(huán)的時(shí)候企圖修改變量的值,但是修改后的值會(huì)打印輸出,原來(lái)的向量里面的值還是會(huì)打印,這個(gè)就是想說(shuō)明我們盡量不要在循環(huán)里面修改變量的值;

matlab用for循環(huán)求斐波那契數(shù)列,數(shù)學(xué)建模,matlab

2.while循環(huán)

(1)基本語(yǔ)法

判斷n最小是多少,1+1/2+1/3+.........+1/n的結(jié)果大于10;

matlab用for循環(huán)求斐波那契數(shù)列,數(shù)學(xué)建模,matlab

while可以理解為當(dāng)什么時(shí)候的意思,當(dāng)我們while后面的判斷條件是真的時(shí)候,就會(huì)執(zhí)行循環(huán),否則就會(huì)跳出循環(huán);

我們把每次循環(huán)的結(jié)果累加到y(tǒng)的上面,當(dāng)y<=10的時(shí)候,就會(huì)不斷的執(zhí)行循環(huán)體,當(dāng)y>10就已經(jīng)符合題意了,while后面的y<=10就是false,所以會(huì)跳出循環(huán);

(2)條件斷點(diǎn)的設(shè)置

設(shè)置斷點(diǎn)之后右鍵選擇“設(shè)置修改條件”;

matlab用for循環(huán)求斐波那契數(shù)列,數(shù)學(xué)建模,matlab

設(shè)置對(duì)應(yīng)的條件,因?yàn)樯厦嫖覀円呀?jīng)知道了n=12367,所以我們?cè)O(shè)置mod(n,1000)=0,就是在n能夠被1000整除的時(shí)候,才會(huì)執(zhí)行這個(gè)斷點(diǎn);例如1000,2000,執(zhí)行12次之后,n就是12000,再執(zhí)行一次就打于12367了,這個(gè)時(shí)候就會(huì)跳出循環(huán);(這個(gè)時(shí)候第一次到斷點(diǎn)的位置n=1000,我們調(diào)試的時(shí)候應(yīng)該訓(xùn)選擇繼續(xù)鍵,如果我們選擇的是步進(jìn),就會(huì)1000,1001,1002,1003這樣就行,如果我們選擇繼續(xù),就會(huì)直接跳轉(zhuǎn)到1000,2000,3000,這樣進(jìn)行下去);

matlab用for循環(huán)求斐波那契數(shù)列,數(shù)學(xué)建模,matlab

(3)斐波那契數(shù)列

設(shè)計(jì)程序求斐波那契數(shù)列里面,第一個(gè)大于99999的數(shù)字是多少:

matlab用for循環(huán)求斐波那契數(shù)列,數(shù)學(xué)建模,matlab

我們都知道斐波那契數(shù)列的前兩個(gè)數(shù)字都是1,后面的一項(xiàng)是前面的兩項(xiàng)的求和,我們?cè)O(shè)置循環(huán)的條件是a(n)<99999,符合條件就n加上1,不符合條件就找到了,退出循環(huán);

最后的a是一個(gè)1*26的行向量,我們要找的是第一個(gè)大于99999的數(shù)字,就是a這個(gè)行向量的最后一個(gè)元素,我們使用a(end)就可以得到最后的一個(gè)元素,也就是第一個(gè)大于99999的數(shù)字;

(4)循環(huán)注意事項(xiàng)

while后面并不一定要是n<1000這樣的判斷表達(dá)式,也可以是常數(shù),或者是向量:

matlab用for循環(huán)求斐波那契數(shù)列,數(shù)學(xué)建模,matlab

只有后面的常數(shù)是非0數(shù)字的時(shí)候,循環(huán)才會(huì)繼續(xù)執(zhí)行,是0就會(huì)跳出循環(huán);

后面的表達(dá)式是向量的情況:只有向量的元素都不是0,循環(huán)才會(huì)執(zhí)行,向量里面只要有一個(gè)元素是0,循環(huán)就不會(huì)執(zhí)行;

matlab用for循環(huán)求斐波那契數(shù)列,數(shù)學(xué)建模,matlab

我們這個(gè)地方是定義了一個(gè)2*2的方陣,因?yàn)樵厥?,2,3,4所以循環(huán)可以執(zhí)行,我們的循環(huán)體里面修改向量的元素是0,這個(gè)時(shí)候循環(huán)就不會(huì)繼續(xù)執(zhí)行,所以剛開始進(jìn)入循環(huán),修改為0之后不符合循環(huán)的條件,直接跳出循環(huán),只會(huì)輸出一個(gè)矩陣;如果剛開始的時(shí)候4個(gè)元素,1,2,3,4里面的任何一個(gè)是0,比如1 2 3 0,或者1,2,0,3有0,循環(huán)就不會(huì)執(zhí)行。

3.循環(huán)里面的break&&continue

(1)break語(yǔ)句

matlab用for循環(huán)求斐波那契數(shù)列,數(shù)學(xué)建模,matlab

還是用這個(gè)題目舉例子:

matlab用for循環(huán)求斐波那契數(shù)列,數(shù)學(xué)建模,matlab

我們?cè)趧傞_始的時(shí)候可以給n設(shè)置一個(gè)超級(jí)大的范圍,當(dāng)使用if語(yǔ)句判斷y>10的時(shí)候,就會(huì)break終止循環(huán);

(2)continue語(yǔ)句

求出1~10里面的奇數(shù):

matlab用for循環(huán)求斐波那契數(shù)列,數(shù)學(xué)建模,matlab文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-852032.html

到了這里,關(guān)于數(shù)學(xué)建模----MATLAB----for&&while循環(huán)(進(jìn)階)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Matlab數(shù)學(xué)建模實(shí)驗(yàn)題

    Matlab數(shù)學(xué)建模實(shí)驗(yàn)題

    (1)用起泡法對(duì)10個(gè)數(shù)由小到大排序.即將相鄰兩個(gè)數(shù)比較,將小的調(diào)到前頭。 (2)有一個(gè)4×5矩陣,編程求出其最大值及其所處的位置. (3)編程求 (4)一球從100米高度自由落下,每次落地后反跳回原高度的一半,再落下.求它在第10次落地時(shí),共經(jīng)過(guò)多少米?第10次反彈有多高? (

    2024年02月11日
    瀏覽(21)
  • 數(shù)學(xué)建模-MATLAB三維作圖

    數(shù)學(xué)建模-MATLAB三維作圖

    導(dǎo)出圖片用無(wú)壓縮tif會(huì)更清晰 幫助文檔:doc 函數(shù)名 新建實(shí)時(shí)腳本或右鍵文件轉(zhuǎn)換為實(shí)時(shí)腳本 實(shí)時(shí)編輯器-全部運(yùn)行-內(nèi)嵌顯示 保存為PDF

    2024年02月15日
    瀏覽(19)
  • 數(shù)學(xué)建模之MATLAB使用

    數(shù)學(xué)建模之MATLAB使用

    我們都知道MATLAB里面存在著數(shù)值計(jì)算和符號(hào)計(jì)算,但是兩者之間到底是怎樣的呢? 舉一個(gè)很簡(jiǎn)單的例子,我們?cè)诟叩葦?shù)學(xué)里面的微積分學(xué)習(xí)時(shí)經(jīng)常求不定積分,也就是原函數(shù),這個(gè)過(guò)程實(shí)際上進(jìn)行的就是符號(hào)運(yùn)算,我們通過(guò)對(duì)一些變量字符x等等的運(yùn)算,最后得出一個(gè)表達(dá)式

    2024年04月09日
    瀏覽(23)
  • 數(shù)學(xué)建模實(shí)戰(zhàn)Matlab繪圖

    數(shù)學(xué)建模實(shí)戰(zhàn)Matlab繪圖

    二維曲線、散點(diǎn)圖 繪圖命令: plot( x,y,’line specifiers’,’ PropertyName ’, PropertyValue ) 例子:繪圖表示年收入與年份的關(guān)系 ‘--r*’:-- 設(shè)置線型; r: 設(shè)置顏色為紅色; * 節(jié)點(diǎn)型號(hào) ‘ linewidth ’:設(shè)置線寬;‘ markersize ’ :節(jié)點(diǎn)大小 常用命令: hold on(off):在一張圖上持續(xù)繪圖

    2024年01月21日
    瀏覽(21)
  • 數(shù)學(xué)建模-插值算法(Matlab)

    數(shù)學(xué)建模-插值算法(Matlab)

    注意:代碼文件僅供參考,一定不要直接用于自己的數(shù)模論文中 國(guó)賽對(duì)于論文的查重要求非常嚴(yán)格,代碼雷同也算作抄襲 如何修改代碼避免查重的方法:https://www.bilibili.com/video/av59423231? ?//清風(fēng)數(shù)學(xué)建模 簡(jiǎn)單來(lái)說(shuō)是根據(jù)已知點(diǎn)進(jìn)行線性數(shù)據(jù)預(yù)測(cè),但數(shù)據(jù)太少需要通過(guò)數(shù)學(xué)方

    2023年04月26日
    瀏覽(29)
  • 數(shù)學(xué)建模| 線性規(guī)劃(Matlab)

    線性規(guī)劃:約束條件和目標(biāo)函數(shù)都是線性的。簡(jiǎn)單點(diǎn)說(shuō),所有的決策變量在目標(biāo)函數(shù)和約束條件中都是一次方。 Matlab函數(shù): 參數(shù)解釋: func 表示目標(biāo)函數(shù)。 A 表示不等式約束條件系數(shù)矩陣,b 表示不等式約束條件常數(shù)矩陣。 Aeq 表示等式約束條件系數(shù)矩陣,beq 表示等式約束條

    2024年02月07日
    瀏覽(31)
  • 數(shù)學(xué)建模學(xué)習(xí)(7):Matlab繪圖

    數(shù)學(xué)建模學(xué)習(xí)(7):Matlab繪圖

    最基礎(chǔ)的二維圖形繪制方法:plot -plot命令自動(dòng)打開一個(gè)圖形窗口Figure; 用直線連接相鄰兩數(shù)據(jù)點(diǎn)來(lái)繪制圖形 -根據(jù)圖形坐標(biāo)大小自動(dòng)縮擴(kuò)坐標(biāo)軸,將數(shù)據(jù)標(biāo)尺及單位標(biāo)注自動(dòng)加到兩個(gè)坐標(biāo)軸上,可自定坐標(biāo)軸,可把x,? y 軸用對(duì)數(shù)坐標(biāo)表示 -如果已經(jīng)存在一個(gè)圖形窗口,plot命

    2024年02月14日
    瀏覽(24)
  • (一)MATLAB數(shù)學(xué)建?!獢?shù)據(jù)擬合

    目錄 一、簡(jiǎn)介 二、多項(xiàng)式擬合 (一)指令介紹 (二)代碼

    2024年02月11日
    瀏覽(27)
  • Matlab數(shù)學(xué)建模-典型相關(guān)分析

    Matlab數(shù)學(xué)建模-典型相關(guān)分析

    典型相關(guān)分析是研究?jī)蓚€(gè)多變量(向量)之間之間的線性相關(guān)關(guān)系,能夠揭示出兩組變量之間的內(nèi)在聯(lián)系。 CCA(典型相關(guān)分析) 在一元統(tǒng)計(jì)分析中,用相關(guān)系數(shù)來(lái)衡量?jī)蓚€(gè)隨機(jī)變量的線性相關(guān)關(guān)系,用復(fù)相關(guān)系數(shù)研究一個(gè)隨機(jī)變量與多個(gè)隨機(jī)變量的線性相關(guān)關(guān)系。然而,這些方

    2024年02月10日
    瀏覽(23)
  • 【數(shù)學(xué)建模】 MATLAB 蟻群算法

    【數(shù)學(xué)建?!?MATLAB 蟻群算法

    MATLAB–基于蟻群算法的機(jī)器人最短路徑規(guī)劃 * https://blog.csdn.net/woai210shiyanshi/article/details/104712540?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522168853912916800215023827%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257Drequest_id=168853912916800215023827biz_id=0utm_medium=distribute.pc_search_result.

    2024年02月15日
    瀏覽(22)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包