史萊姆論壇

史萊姆論壇 (http://forum.slime.com.tw/)
-   程式語言討論區 (http://forum.slime.com.tw/f76.html)
-   -   自己做的JAVA輸出敘述不知要如何改 (http://forum.slime.com.tw/thread257627.html)

9319074 2010-03-10 09:42 PM

自己做的JAVA輸出敘述不知要如何改
 
package javaapplication7;

class Rectangle {
double length ; //長
double width ; //寬
double area;//面積
double perimeter;//周長
void printState(){

System.out.print("長為");
System.out.print(length+ " 公分,");
System.out.print("寬為");
System.out.print(width + "公分,");
System.out.print("面積為");
System.out.print(area + "cm^2");
System.out.print("周長為");
System.out.println(perimeter + "cm");

}


}
public class Main {

/**
* @param args the command line arguments
*/
public static void main(String[] args) {

Rectangle rect1 = new Rectangle();
Rectangle rect2 = new Rectangle();

rect1.length = 7;
rect1.width = 5;
rect1.area = (rect1.length*rect1.width );

rect2.length = 3;
rect2.width = 7;
rect2.perimeter = ((rect2.length*2)+(rect2.width*2));

System.out.print("矩行1");
rect1.printState();

System.out.print("矩行2");
rect2.printState();


}

}

他的輸出為:

run:
矩行1長為7.0 公分,寬為5.0公分,面積為35.0cm^2周長為0.0cm
矩行2長為3.0 公分,寬為7.0公分,面積為0.0cm^2周長為20.0cm
成功建置 (總時間:0 秒)

==分隔線==

假如我要輸出

矩行1長為7.0 公分,寬為5.0公分,面積為35.0cm^2
矩行2長為3.0 公分,寬為7.0公分,周長為20.0cm

請問要怎麼改,幫忙一下,謝謝。

ccutmis 2010-03-11 12:34 PM

try it~
 
先說明一下我沒在用java,也沒編譯過,底下是用邏輯思考而已...

最簡單的方式如下:

把原本的
System.out.print("周長為");
System.out.println(perimeter + "cm");
改為...
if(perimeter!=0){
System.out.print("周長為");
System.out.println(perimeter + "cm");
}

思路是這樣...因為矩型1的周長是0,所以就不會秀出周長為0.0cm

另外建議一下這一行程式... rect2.perimeter = ((rect2.length*2)+(rect2.width*2));
個人覺得這樣會更好... rect2.perimeter = (rect2.length+rect2.width)*2;
結果來說可能一樣,但是原本的程式多做了一次乘法,如果是浮點數加上小數點多位的話,會造成更多誤差。
希望有幫助喔~

9319074 2010-03-11 08:47 PM

我把面積也加了指令,不然第二個矩行也會出現面積訊息。



if(area!=0){
System.out.print("面積為");
System.out.println(area + "cm^2");
}

==分隔線==

我都忘了= =

*2可以提出來= =


所有時間均為台北時間。現在的時間是 09:52 PM

Powered by vBulletin® 版本 3.6.8
版權所有 ©2000 - 2025, Jelsoft Enterprises Ltd.

『服務條款』

* 有問題不知道該怎麼解決嗎?請聯絡本站的系統管理員 *


SEO by vBSEO 3.6.1