史萊姆論壇

返回   史萊姆論壇 > 專業主討論區 > 程式語言討論區
忘記密碼?
論壇說明 標記討論區已讀

歡迎您來到『史萊姆論壇』 ^___^

您目前正以訪客的身份瀏覽本論壇,訪客所擁有的權限將受到限制,您可以瀏覽本論壇大部份的版區與文章,但您將無法參與任何討論或是使用私人訊息與其他會員交流。若您希望擁有完整的使用權限,請註冊成為我們的一份子,註冊的程序十分簡單、快速,而且最重要的是--註冊是完全免費的!

請點擊這裡:『註冊成為我們的一份子!』

Google 提供的廣告


發文 回覆
 
主題工具 顯示模式
舊 2006-02-18, 05:27 AM   #1
psac
榮譽會員
 
psac 的頭像
榮譽勳章
UID - 3662
在線等級: 級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時
註冊日期: 2002-12-07
住址: 木柵市立動物園
文章: 17381
現金: 5253 金幣
資產: 33853 金幣
預設 編寫一個GUI程序允許用戶輸入三個值作為三角形的三條邊

編寫一個GUI程序允許用戶輸入三個值作為三角形的三條邊,判斷能夠構成三角形,

/*
4.編寫一個GUI程序(或APPLET)。允許用戶輸入三個值作為三角形的三條邊,判斷能夠構成三角形,若能,再判斷是等邊?等腰?直角?並計算其面積。結果都要能在界面上顯示。
*/

import java.applet.Applet;
import java.awt.*;
import java.awt.event.*;
import java.util.*;
import javax.swing.*;

public class sj extends Applet implements ActionListener
{

Label num1=new Label(" 第一條邊: ");
TextField b1=new TextField("第一條邊的值",10);
Label num2=new Label(" 第二條邊: ");
TextField b2=new TextField("第二條邊的值",10);
Label num3=new Label(" 第三條邊: ");
TextField b3=new TextField("第三條邊的值",10);
Button maksj=new Button("三角判斷");
Button jsmj =new Button("三角面積");
int db1,db2,db3,flag,flag1;

public void init() //啟始化,把基本元件加入Applet中
{ add(num1);
add(b1);
add(num2);
add(b2);
add(num3);
add(b3);
add(maksj); add(jsmj);
maksj.addActionListener(this);
jsmj.addActionListener(this);
}

public void actionPerformed(ActionEvent e)
{
if(e.getActionCommand()=="三角判斷") flag=1;

if(e.getActionCommand()=="三角面積") flag1=1;

repaint();
}

public void paint (Graphics g)
{
double tmp[]=new double[3];
db1=Integer.parseInt(b1.getText());
db2=Integer.parseInt(b2.getText());
db3=Integer.parseInt(b3.getText());

tmp[0]=Math.pow(db1,2)+Math.pow(db2,2);
tmp[1]=Math.pow(db1,2)+Math.pow(db3,2);
tmp[2]=Math.pow(db2,2)+Math.pow(db3,2);

if (flag==1)
{
g.drawString(" __________以下為三角形判斷結果訊息___________",120,90);

if( (db1<db2+db3) && (db2<db1+db3) && (db3<db1+db2))
{

g.drawString(" [X] 經過判斷這是一個三角形.",130,130);

if(db1==db2 && db2==db3) g.drawString(" [X] 經過判斷這是一個等邊三角形.",130,150);
else if(db1==db2 || db2==db3)g.drawString(" [X] 經過判斷這是一個等腰三角形.",130,150);
else if(tmp[0]==Math.pow(db3,2) || tmp[1]==Math.pow(db2,2)|| tmp[2]==Math.pow(db1,2) )
g.drawString(" [X] 經過判斷這是一個直角三角形.",130,150);

}
else
g.drawString(" [!] 經過判斷這不是一個三角形.",130,130);
flag=0;
}


if(flag1==1)
{
tmp[0]=(db1+db2+db3)/2;
tmp[1]=Math.sqrt(tmp[0]*(tmp[0]-db1)*(tmp[0]-db2)*(tmp[0]-db3));
g.drawString(" [X] 經過計算這個三角形面積:"+tmp[1],130,130);
flag1=0;
}


}



}
__________________
http://bbsimg.qianlong.com/upload/01/08/29/68/1082968_1136014649812.gif
psac 目前離線  
送花文章: 3, 收花文章: 1631 篇, 收花: 3205 次
回覆時引用此帖
發文 回覆


主題工具
顯示模式

發表規則
不可以發文
不可以回覆主題
不可以上傳附加檔案
不可以編輯您的文章

論壇啟用 BB 語法
論壇啟用 表情符號
論壇啟用 [IMG] 語法
論壇禁用 HTML 語法
Trackbacks are 禁用
Pingbacks are 禁用
Refbacks are 禁用


所有時間均為台北時間。現在的時間是 06:06 AM


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


SEO by vBSEO 3.6.1