問題類型:使用問題
使用的操作系統(tǒng):Windows10
問題描述:調(diào)試運(yùn)行下面這段函數(shù)的時(shí)候總是退出,怎么情況
發(fā)現(xiàn)問題,即使是我使用啦%也不應(yīng)該導(dǎo)致程序直接退出啊。
問題截圖:
function [r] = collatzConjecture(x)if x==1r=1;elseif x %2 ==0x=x/2;r=collatzConjecture(x);else x = x * 3 + 1;r=collatzConjecture(x);endendend
您好!這個(gè)問題是您創(chuàng)建的函數(shù)名稱和你在判斷語句中調(diào)用的算法同名導(dǎo)致的,原因是你一邊在創(chuàng)建這個(gè)函數(shù),一邊又在調(diào)用這個(gè)函數(shù),所以計(jì)算機(jī)無法理解您具體想做什么,所以閃退,感謝您對(duì)北太天元的支持,謝謝!
引用:您好!這個(gè)問題是您創(chuàng)建的函數(shù)名稱和你在判斷語句中調(diào)用的算法同名導(dǎo)致的,原因是你一邊在創(chuàng)建這個(gè)函數(shù),一邊又在調(diào)用這個(gè)函數(shù),所以計(jì)算機(jī)無法理解您具體想做什么,所以閃退,感謝您對(duì)北太天元的支持,謝謝!
使用遞歸調(diào)用的啊。只是我使用%當(dāng)做取模的情況才閃退,寫對(duì)后就不出現(xiàn)啦!實(shí)際情況就是即使我的輸入有錯(cuò)也不應(yīng)該讓程序退出去啊,充其量也只能說我if給的不是bool值啊,后面%的會(huì)被當(dāng)做注釋啊。只要我給if判斷語句的不是bool值就會(huì)退出,也并沒有指示出錯(cuò)誤區(qū)域,直接閃退啦。