输入任意三条边,判断能不能构成一个三角形,如果可以构成三角形,求出它的周长和面积。
package 三角形;
import java.awt.*;
import java.awt.event.*;
import java.text.*;
import javax.swing.*;
public class Triangle {
JFrame jframe;
JPanel jp1,jp2,jp3,jp4,jp5;
JLabel jl1,jl2,jl3,jl4;
JButton jbtn1,jbtn2,jbtn3;
JTextField jt1,jt2,jt3,jt4,jt5;
Box b1;
public void go(){
jl1 = new JLabel("Triangle’s girth and area(三角形周长和面积)");
jl2 = new JLabel("请输入三角形的三条边:");
jl3 = new JLabel("此三角形的周长为:");
jl4 = new JLabel("此三角形的面积为:");
jl1.setFont(new Font("Dialog",Font.PLAIN,25));
jl2.setFont(new Font("Dialog",Font.PLAIN,18));
jl3.setFont(new Font("Dialog",Font.PLAIN,18));
jl4.setFont(new Font("Dialog",Font.PLAIN,18));
jt1 = new JTextField(8);
jt2 = new JTextField(8);
jt3 = new JTextField(8);
jt4 = new JTextField(8);
jt5 = new JTextField(8);
jt4.setEditable(false);
jt4.setBackground(Color.CYAN);
jt5.setEditable(false);
jt5.setBackground(Color.CYAN);
jbtn1 = new JButton(" 求 解 ",new ImageIcon("1.png")); b1.add(jbtn1); b1.add(Box.createHorizontalStrut(30)); jbtn2 = new JButton(" 清 除 ",new ImageIcon("3.png")); b1.add(jbtn2); b1.add(Box.createHorizontalStrut(30)); jbtn3 = new JButton(" 退 出 ",new ImageIcon("2.png")); b1.add(jbtn3); jp1 = new JPanel(); jp2 = new JPanel(); jp3 = new JPanel(); jp4 = new JPanel(); jp5 = new JPanel(); jp1.setBackground(Color.WHITE); jp2.setBackground(Color.WHITE); jp3.setBackground(Color.WHITE); jp4.setBackground(Color.WHITE); jp1.add(jl1); jp2.add(jl2); jp2.add(jt1); jp2.add(jt2); jp2.add(jt3); jp3.add(jl3); jp3.add(jt4); jp4.add(jl4); jp4.add(jt5); jp5.add(b1); jframe = new JFrame("三角形周长和面积"); jframe.setLayout(null); jp1.setBounds(0, 0, 600, 50); jp2.setBounds(0, 50, 600, 50); jp3.setBounds(0, 90, 600, 50); jp4.setBounds(0, 130, 600, 50); jp5.setBounds(0, 180, 600, 50); jframe.add(jp1); jframe.add(jp2); jframe.add(jp3); jframe.add(jp4); jframe.add(jp5); jframe.setSize(600, 250);
jframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); jframe.setResizable(false); jframe.setVisible(true); /** * 退出按钮注册事件 */ jbtn3.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent arg0) { // TODO 自动生成的方法存根 System.exit(0); } }); /** * 清除按钮注册事件 */ jbtn2.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { // TODO 自动生成的方法存根 jt1.setText(null); jt2.setText(null); jt3.setText(null); jt4.setText(null); jt5.setText(null); } }); /** * 求解按钮注册事件 */ jbtn1.addActionListener(new ActionListener() { @Override
public void actionPerformed(ActionEvent e) {
// TODO 自动生成的方法存根
if (jt1.getText().length() == 0 || jt2.getText().length() == 0 ||jt3.getText().length() == 0) {
JOptionPane.showMessageDialog(jframe, "任意一条边不能为空,请输入三角形的三条边! ",
"警告", JOptionPane.WARNING_MESSAGE);
jt1.setText(null);
jt2.setText(null);
jt3.setText(null);
}else{
/*把字符串转换成double型*/
double a = Integer.parseInt(jt1.getText()); double b = Integer.parseInt(jt2.getText()); double c = Integer.parseInt(jt3.getText());
if(a
JOptionPane.showMessageDialog(jframe, "输入的边不能是负数或者0,请重新输入! ",
"错误", JOptionPane.ERROR_MESSAGE);
}else{
if((a+b)>c && (a+c)>b && (b+c)>a){
DecimalFormat df = new DecimalFormat("0.00");
double girth =a+b+c;
double p=(a+b+c)/2;
double area = Math.sqrt(p*(p-a)*(p-b)*(p-c));
/*控制输入结果为小数点后面两位*/
jt4.setText(df.format(girth));
jt5.setText(df.format(area));
}else{
JOptionPane.showMessageDialog(jframe, "输入的三条边不能构成三角形,请重新输入! ",
"错误", JOptionPane.ERROR_MESSAGE);
}
} }); } } } } public static void main(String[] args) { // TODO 自动生成的方法存根 Triangle T = new Triangle(); T.go(); }
输入任意三条边,判断能不能构成一个三角形,如果可以构成三角形,求出它的周长和面积。
package 三角形;
import java.awt.*;
import java.awt.event.*;
import java.text.*;
import javax.swing.*;
public class Triangle {
JFrame jframe;
JPanel jp1,jp2,jp3,jp4,jp5;
JLabel jl1,jl2,jl3,jl4;
JButton jbtn1,jbtn2,jbtn3;
JTextField jt1,jt2,jt3,jt4,jt5;
Box b1;
public void go(){
jl1 = new JLabel("Triangle’s girth and area(三角形周长和面积)");
jl2 = new JLabel("请输入三角形的三条边:");
jl3 = new JLabel("此三角形的周长为:");
jl4 = new JLabel("此三角形的面积为:");
jl1.setFont(new Font("Dialog",Font.PLAIN,25));
jl2.setFont(new Font("Dialog",Font.PLAIN,18));
jl3.setFont(new Font("Dialog",Font.PLAIN,18));
jl4.setFont(new Font("Dialog",Font.PLAIN,18));
jt1 = new JTextField(8);
jt2 = new JTextField(8);
jt3 = new JTextField(8);
jt4 = new JTextField(8);
jt5 = new JTextField(8);
jt4.setEditable(false);
jt4.setBackground(Color.CYAN);
jt5.setEditable(false);
jt5.setBackground(Color.CYAN);
jbtn1 = new JButton(" 求 解 ",new ImageIcon("1.png")); b1.add(jbtn1); b1.add(Box.createHorizontalStrut(30)); jbtn2 = new JButton(" 清 除 ",new ImageIcon("3.png")); b1.add(jbtn2); b1.add(Box.createHorizontalStrut(30)); jbtn3 = new JButton(" 退 出 ",new ImageIcon("2.png")); b1.add(jbtn3); jp1 = new JPanel(); jp2 = new JPanel(); jp3 = new JPanel(); jp4 = new JPanel(); jp5 = new JPanel(); jp1.setBackground(Color.WHITE); jp2.setBackground(Color.WHITE); jp3.setBackground(Color.WHITE); jp4.setBackground(Color.WHITE); jp1.add(jl1); jp2.add(jl2); jp2.add(jt1); jp2.add(jt2); jp2.add(jt3); jp3.add(jl3); jp3.add(jt4); jp4.add(jl4); jp4.add(jt5); jp5.add(b1); jframe = new JFrame("三角形周长和面积"); jframe.setLayout(null); jp1.setBounds(0, 0, 600, 50); jp2.setBounds(0, 50, 600, 50); jp3.setBounds(0, 90, 600, 50); jp4.setBounds(0, 130, 600, 50); jp5.setBounds(0, 180, 600, 50); jframe.add(jp1); jframe.add(jp2); jframe.add(jp3); jframe.add(jp4); jframe.add(jp5); jframe.setSize(600, 250);
jframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); jframe.setResizable(false); jframe.setVisible(true); /** * 退出按钮注册事件 */ jbtn3.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent arg0) { // TODO 自动生成的方法存根 System.exit(0); } }); /** * 清除按钮注册事件 */ jbtn2.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { // TODO 自动生成的方法存根 jt1.setText(null); jt2.setText(null); jt3.setText(null); jt4.setText(null); jt5.setText(null); } }); /** * 求解按钮注册事件 */ jbtn1.addActionListener(new ActionListener() { @Override
public void actionPerformed(ActionEvent e) {
// TODO 自动生成的方法存根
if (jt1.getText().length() == 0 || jt2.getText().length() == 0 ||jt3.getText().length() == 0) {
JOptionPane.showMessageDialog(jframe, "任意一条边不能为空,请输入三角形的三条边! ",
"警告", JOptionPane.WARNING_MESSAGE);
jt1.setText(null);
jt2.setText(null);
jt3.setText(null);
}else{
/*把字符串转换成double型*/
double a = Integer.parseInt(jt1.getText()); double b = Integer.parseInt(jt2.getText()); double c = Integer.parseInt(jt3.getText());
if(a
JOptionPane.showMessageDialog(jframe, "输入的边不能是负数或者0,请重新输入! ",
"错误", JOptionPane.ERROR_MESSAGE);
}else{
if((a+b)>c && (a+c)>b && (b+c)>a){
DecimalFormat df = new DecimalFormat("0.00");
double girth =a+b+c;
double p=(a+b+c)/2;
double area = Math.sqrt(p*(p-a)*(p-b)*(p-c));
/*控制输入结果为小数点后面两位*/
jt4.setText(df.format(girth));
jt5.setText(df.format(area));
}else{
JOptionPane.showMessageDialog(jframe, "输入的三条边不能构成三角形,请重新输入! ",
"错误", JOptionPane.ERROR_MESSAGE);
}
} }); } } } } public static void main(String[] args) { // TODO 自动生成的方法存根 Triangle T = new Triangle(); T.go(); }