Re: [考題] 97年關務-程式語言概要
前面恕刪,不好意思
在第二小題中,我認同你提出的(2)
如果分母為零,在執行過程中會遇到fatal error,程式將會停止執行
解決辦法為
將System.out.println( "Av = "+(s/c));
改成System.out.println( "Av = "+ ( (c==0)?0:(s/c) ) )
即可解決
歡迎討論:)
: -------------------------------------------------------------------
: class javaTest{
: public static void main(String args[]){
: int dset[] = {90,30,-5,70,95,110,80};
: int c = 0; int s = 0;
: for (int i = 0; i <dset.length ; i++){
: if (dset[i] <= 100 && dset[i] >= 0){
: c++;
: s+= dset[i];
: }
: }
: System.out.println( "Av = "+(s/c));
: }
: }
: -------------------------------------------------------------------
: 第二題我想到的可能問題有兩個:
: (1)在dset中介於0-100之間的數造成s/c不能整除的情況下,
: 答案只會顯示整數的部分,所求的平均值不完全正確
: (2)在dset中介於0-100之間的數是0個,造成s/c分母為0
: 就嚴重度來說我個人是覺得(2)比較嚴重,
: 但由於題目規定只能修改一條敘述,不能新增或刪除敘述
: 第(1)個問題小弟還有辦法解決
: 可是第(2)個方法小弟還想不到只修改一條敘述就解決的方法...
: 或者小弟根本就想錯....題目要問的根本不是這兩種情況呢?
: 想請板上強者大大們指點指點~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 180.218.121.117
推
06/11 17:36, , 1F
06/11 17:36, 1F
推
06/11 22:19, , 2F
06/11 22:19, 2F
→
06/11 22:19, , 3F
06/11 22:19, 3F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):