[爆卦]MATLAB 迴圈 題目是什麼?優點缺點精華區懶人包

為什麼這篇MATLAB 迴圈 題目鄉民發文收入到精華區:因為在MATLAB 迴圈 題目這個討論話題中,有許多相關的文章在討論,這篇最有參考價值!作者james1022jk (雁)看板MATLAB標題Re: [發問]請問關於迴圈的題目時間Thu ...


※ 引述《Silent50286 ()》之銘言:
: 題目是:
: 要完成排列組合C(n,k),並起使用者輸入n及k,
: 若n及k 為非整數或負數時,請使用者重新輸入,直到n及k為合理。
: 小妹我寫出來是這樣:
: n=input('請輸入n :'); %請輸入n值
: k=input('請輸入k :'); % 輸入k值
: while x==100
: if n<0||~isinteger(n)||k<0||~isinteger(k) %如果n及k為非整數或負數時
: n=input('請輸入n :'); %再輸入一次n值
: k=input('請輸入k :'); %再輸入一次k值
: end
: end
: fprintf('%d\n',factorial(n)/(factorial(k)* factorial(n-k))) %計算C(n,k)答案
: --------
: 我在測試時輸入 n及k 是負數或非整數,
: 迴圈好像跑不出來,是不是寫錯了呢?
: 請各位大大指教 !! 感謝

剛沒仔細看判別式...多虧樓上那位有說明,還有依你的計算方式,
要多加入n是否大於等於k的判別式,因為factorial要代入正整數

while 1
n=input('請輸入n :'); %請輸入n值
k=input('請輸入k :'); % 輸入k值
if (n<0 || (n/ceil(n))~=1 || k<0 || (k/ceil(k))~=1) || (n<k)
disp('--------- 請再次輸入 ---------);
continue;
else
break;
end
end
fprintf('%d\n',factorial(n)/(factorial(k)* factorial(n-k)))

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.38.5.153
※ 編輯: james1022jk 來自: 114.38.5.153 (12/13 11:26)
Silent50286:我了解了 感謝解答 !! 12/15 00:45

你可能也想看看

搜尋相關網站