![]() |
[急,幫幫我]用NETBEANS寫的程式為啥在學校測試ok,在家不ok
public static void main(String[] args) {
int weight = Integer.parseInt(args[0]); int hight = Integer.parseInt(args[1]); double bmi = ((weight*1.0) / (hight*hight)*10000) ; System.out.println(bmi); } 我在學校測試,專案屬性參數我打"72 160" 會得到數值 28.125 為什麼在家同樣程式 為什麼出現 run: Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0 at javaapplication16.Main.main(Main.java:20) Java Result: 1 成功建置 (總時間:0 秒) 到底是哪邊出錯?? 學校6.5版,我的6.7版 (打bmi的程式) |
微軟常常有這種怪問題出現,
解決方式1...重灌作業系統 解決方式2...把學校的電腦搬回你家用吧... |
引用:
因為學校是用舊版的6.5,我是用6.7的, 假如這樣的話,那這作業我不是就要到學校做了... 還是有其他程式編輯方法?? |
在家裝6.5版, 或者把學校的版本更新成6.7版...
環境不一樣,結果平來就不會一樣了 否則一堆軟體也不必特定區分支不支援 Server作業系統, 也不會有 win95版的軟體在winxp不能跑的問題 更不會有 vista作業系統不能跑某些舊版遊戲的問題了....... |
引用:
先問一下,我一樓的程式寫對吧?? int weight = Integer.parseInt(args[0]); int hight = Integer.parseInt(args[1]); 這兩行可以改寫嘛??就是ken in數字得到數值 |
可以執行就是對的 , 不能執行就是錯的...
agrs[0], args[1] 分別是你執行程式時, 在程式後加上去的 [參數] 專案屬性參數你打"72 160", 對程式而言, args[0]就是72, args[1]就是160 如果你專案屬性參數只打了"72", 對程式而言 args[0]就是72, args[1]則不存在......... 至於keyIn數字得到數值...要改寫, 當然可以, 程式有很多種寫法, 就看你想怎麼寫........ ============= 至於【有其他方式可以換寫成像我這樣的bmi程式嘛?】 不太懂你要寫什麼.... 計算BMI,不就是【體重 除以 [身高的平方] 再乘以 1萬】?? |
引用:
int weight = Integer.parseInt(args[0]); int hight = Integer.parseInt(args[1]); 我是說這兩行可以用別的方法改寫嘛?? 像kiy in 數字得到數值.... ==分隔線== 我用 int weight = 72 int hight = 160 可以得出結果, 可是我的作業是要像我一樓所說的, 要key in數值得到計算結果數值。。 可是老師只講這個作法,想說還有沒有其他作法.... 像這個網頁作法..... http://www.scpo.nccu.edu.tw/show/part1/b/B2/bmi.htm |
這是完全不一樣的東西, 那是網頁, 不是Java程式
而你現在要開始寫Java[視窗]程式.....跟本就太早了... 這是另一種方式 http://rotterdam.ics.uci.edu/info/JavaStringReading.htm |
引用:
老師是叫我們用這個網頁的bmi值等等的, 用netbeans設計像這樣子東西,就是數入一些值,if....else等等敘述,出現東西... 話說妳這個網頁是?? 我看了不懂她含意.... |
你有實際測試過那個程式嗎?
|
引用:
|
這個網址你有看嗎?
http://rotterdam.ics.uci.edu/info/JavaStringReading.htm (不會點進去看到一堆英文, 然後什麼輸入畫面都沒有...就關掉了吧...) |
引用:
算了,我還是用老師教的寫好了, 請問你有netbeans6.5版的嘛?想說幫我測試... |
public static void main(String[] args) {
int weight = Integer.parseInt(args[0]); int hight = Integer.parseInt(args[1]); //int weight = 120; //int hight = 160; double bmi = ((weight*1.0) / (hight*hight)*10000) ; if(bmi < 18.5 ){ System.out.println("體重過輕"); } else if(bmi >= 18.5 && bmi < 24 ){ System.out.println("正常範圍"); } else if(bmi >= 24 && bmi < 27 ){ System.out.println("過 重"); } else if(bmi >= 27 && bmi < 30 ){ System.out.println("輕度肥胖"); } else if(bmi >= 30 && bmi < 35 ){ System.out.println("中度肥胖"); } else{ System.out.println("重度肥胖"); } } |
如果你連 照著copy一次, 然後去試看看那支程式之後,
都還感覺不到那支程式的用途......(或者試不出所以然) 那真的是依照老師的方式來做最好 (先不要想其他方式了, 等你以後學比較多, 那時再說吧) |
所有時間均為台北時間。現在的時間是 03:19 PM。 |
Powered by vBulletin® 版本 3.6.8
版權所有 ©2000 - 2025, Jelsoft Enterprises Ltd.
『服務條款』
* 有問題不知道該怎麼解決嗎?請聯絡本站的系統管理員 *