2023年4月 – 第 3616 页 – haodro.com

您所在的位置:网站首页 三菱plc闪灯程序代码 2023年4月 – 第 3616 页 – haodro.com

2023年4月 – 第 3616 页 – haodro.com

2023-04-20 18:54| 来源: 网络整理| 查看: 265

Java编程——求解几何图形的周长、面积的程序

/** * The Class PerimeterArea. This Class is to compute perimeter and area */public class PerimeterArea { /** * The main method. * * @param args * the arguments */ public static void main(String args) { Shape TriangleObj = new Triangle(3, 4, 5);// 定义三边为3,4,5的三角形 Shape RectangleObj = new Rectangle(5, 6);// 定义长为5,宽为6的矩形 Shape CircleObj = new Circle(5);// 定义半径为5的对象 // 打印各个形状的周长和面积 System.out.println(TriangleObj.toString()); System.out.println(RectangleObj.toString()); System.out.println(CircleObj.toString()); }}// 周长接口interface perimeter { public abstract double cutePerimeter();}// 面积接口interface area { public abstract double cuteArea();}// 抽象形状类abstract class Shape implements perimeter, area { public abstract double cutePerimeter(); public abstract double cuteArea();}// 三角形class Triangle extends Shape { private int aSide; private int bSide; private int cSide; public Triangle(){} public Triangle(int aSide, int bSide, int cSide) { this.aSide = aSide; this.bSide = bSide; this.cSide = cSide; } public double cutePerimeter() { return aSide + bSide + cSide; } public double cuteArea() { //面积公式 /*设三边长分别为A、B、C,面积为S;周长的一半P为(A+B+C)/2. S=√. √为开二次方. */ int x = (aSide + bSide + cSide) / 2; return Math.sqrt(x*(x-aSide)*(x-bSide)*(x-cSide)); } public int getASide() { return aSide; } public void setASide(int side) { aSide = side; } public int getBSide() { return bSide; } public void setBSide(int side) { bSide = side; } public int getCSide() { return cSide; } public void setCSide(int side) { cSide = side; } public String toString() { return “三角形的周长为:“ + cutePerimeter() + “\n三角形的面积为:“ + cuteArea() + “\n“; }}// 矩形class Rectangle extends Shape { private int longLength; private int widthLength; public Rectangle(){} public Rectangle(int longLength, int widthLength) { this.longLength = longLength; this.widthLength = widthLength; } public double cutePerimeter() { return 2 * (longLength + widthLength); } public double cuteArea() { return longLength * widthLength; } public int getLongLength() { return longLength; } public void setLongLength(int longLength) { this.longLength = longLength; } public int getWidthLength() { return widthLength; } public void setWidthLength(int widthLength) { this.widthLength = widthLength; } public String toString() { return “矩形的周长为:“ + cutePerimeter() + “\n矩形的面积为:“ + cuteArea() + “\n“; }}// 圆形class Circle extends Shape { public final double pi = 3.14; private double radius;

public Circle(){} public Circle(double radius) { this.radius = radius; } public double cutePerimeter() { return 2 * pi * radius; } public double cuteArea() { return pi * radius * radius; } public double getRadius() { return radius; } public void setRadius(double radius) { this.radius = radius; } public String toString() { return “圆形的周长为:“ + cutePerimeter() + “\n圆形的面积为:“ + cuteArea() + “\n“; }}三角形面积已经修正~谢谢楼上的兄弟~set和get方法只是为了拓展性考虑~不局限于new才能设置参数值

如何用java实现画图

使用Java的Graphics类进行绘图Graphics类提供基本的几何图形绘制方法,主要有:画线段、画矩形、画圆、画带颜色的图形、画椭圆、画圆弧、画多边形等

用JAVA编写求解几何图形的应用程序

1. 抽象形状类package com;//抽象的形状类public abstract class Shape{}2. 显示接口package com;//接口public interface IDisplay{void display();//显示图形的基本信息double getArea();//计算面积double getGirth();//计算周长}3. 三角形类package com.tri;import com.*;//三角形类public class Triangle extends Shape implements IDisplay{protected double a;protected double b;protected double c;

public Triangle(double a, double b, double c){this.a = a;this.b = b;this.c = c;}

@Overridepublic double getArea() {double s = (a + b + c) / 2;return Math.sqrt(s*(s-a)*(s-b)*(s-c));}@Overridepublic double getGirth() {return this.a + this.b + this.c;}@Overridepublic void display() {System.out.println(“三角形“);System.out.println(“边长:“ + a + “, “ + b + “, “ + c);}}4. 矩形类package com.rec;import com.*;//矩形类public class Rectangle extends Shape implements IDisplay {protected double width;protected double height;

public Rectangle(double width, double height){this.width = width;this.height = height;}@Overridepublic double getArea() {return this.width * this.height;}@Overridepublic double getGirth() {return 2 * ( this.width + this.height);}@Overridepublic void display() {System.out.println(“矩形“);System.out.println(“宽:“ + this.width + “, 高:“ + this.height);}}5. 圆类package com.cir;import com.*;//圆类public class Circle extends Shape implements IDisplay {protected double radius;

public Circle(double radius){this.radius = radius;}

@Overridepublic double getArea() {return Math.PI * this.radius * this.radius;}

@Overridepublic double getGirth() {return 2 * Math.PI * this.radius;}@Overridepublic void display() {System.out.println(“圆“);System.out.println(“半径:“ + this.radius);}}6. 正多边形类package com.mul;import com.*;//正多边形类public class MulSide extends Shape implements IDisplay {protected double side;//边长protected int n;//边数

public MulSide(double side, int n){this.side = side;this.n = n;}@Overridepublic double getArea() {return n * side * side * Math.tan((n-2) * Math.PI / (2 * n)) / 4;}@Overridepublic double getGirth() {return this.side * this.n;}@Overridepublic void display() {System.out.println(“正多边形“);System.out.println(“连长:“ + this.side + “, 边数:“ + this.n);}}7. 主类(测试类)package com;import java.util.Scanner;import com.cir.Circle;import com.mul.MulSide;import com.rec.Rectangle;import com.tri.Triangle;public class Test22 {public static void main(String args) {Scanner scan = new Scanner(System.in);double a, b, c;double width, height;double radius;double side;int n;IDisplay s;

System.out.println(“请输入三角形的基本信息“);System.out.print(“边长1:“);a = scan.nextDouble();System.out.print(“边长2:“);b = scan.nextDouble();System.out.print(“边长3:“);c = scan.nextDouble();s = new Triangle(a, b, c);s.display();System.out.println(“三角形的面积:“ + s.getArea());System.out.println(“三角形的周长:“ + s.getGirth());

System.out.println(“请输入矩形的基本信息“);System.out.print(“宽:“);width = scan.nextDouble();System.out.print(“高:“);height = scan.nextDouble();s = new Rectangle(width, height);s.display();System.out.println(“矩形的面积:“ + s.getArea());System.out.println(“矩的周长:“ + s.getGirth());

System.out.println(“请输入圆的基本信息“);System.out.print(“半径:“);radius = scan.nextDouble();s = new Circle(radius);s.display();System.out.println(“圆的面积:“ + s.getArea());System.out.println(“圆的周长:“ + s.getGirth());

System.out.println(“请输入正多边形的基本信息“);System.out.print(“边长:“);side = scan.nextDouble();System.out.print(“边数:“);n = scan.nextInt();s = new MulSide(side, n);s.display();System.out.println(“正多边形的面积:“ + s.getArea());System.out.println(“正多边形的周长:“ + s.getGirth());}}运行测试:请输入三角形的基本信息边长1:3边长2:4边长3:5三角形边长:3.0, 4.0, 5.0三角形的面积:6.0三角形的周长:12.0请输入矩形的基本信息宽:3高:4矩形宽:3.0, 高:4.0矩形的面积:12.0矩的周长:14.0请输入圆的基本信息半径:2圆半径:2.0圆的面积:12.566370614359172圆的周长:12.566370614359172请输入正多边形的基本信息边长:2边数:6正多边形连长:2.0, 边数:6正多边形的面积:10.39230484541326正多边形的周长:12.0

JAVA编程题:设计三个图形类

真不知道这是考写代码还是考数学。给你一个思路吧,定义一个抽象类表示图形,有颜色属性、粗细属性、求面积方法、比较大小的方法。然后在定义一个类表示三角形,继承这个抽象类,三角形类有三个属性,分别表示它的三个顶点坐标。也定义一个类表示矩形,继承抽象类,它有两个属性,分别表示它左上角和右下角的坐标。再定义一个类表示圆形,它有两个属性,分别表示圆心和圆上任一点的坐标。

java求几何图形面积

代码如下:

abstract class Geometry {abstract double getArea();}// 三角形class Triangle extends Geometry {// 边private double a;// 边private double b;// 边private double c;public Triangle(double a, double b, double c) {this.a = a;this.b = b;this.c = c;}@Overridedouble getArea() {double p = (a + b + c) / 2;return Math.sqrt(p * (p – a) * (p – b) * (p – c));}}// 圆class Circle extends Geometry {// 半径private double r;public Circle(double r) {this.r = r;}@Overridedouble getArea() {return Math.PI * r * r;}}// 梯形class Ladder extends Geometry {// 上底private double a;// 下底private double b;// 高private double h;public Ladder(double a, double b, double h) {this.a = a;this.b = b;this.h = h;}@Overridedouble getArea() {return (a + b) * h / 2;}}class Test {double computeGeometryArea(Geometry g) {return g.getArea();}}public class Demo {public static void main(String args) {Test test = new Test();Triangle triangle = new Triangle(3, 4, 6);System.out.println(“三角形面积:“ + test.computeGeometryArea(triangle));Circle circle = new Circle(10);System.out.println(“圆面积:“ + test.computeGeometryArea(circle));Ladder ladder = new Ladder(10, 20, 15);System.out.println(“梯形面积:“ + test.computeGeometryArea(ladder));}}

运行结果:

用Java编写2D或3D图形,要求为: Area和GeneralPath至少一个;其余的几何对象不少于3个;

这个太笼统、太复杂,学校的作业?给出几个关键,然后自己动手吧。1、美观:这个要看自己的审美。从程序角度就是“消除锯齿”2、渐变:可以采用“GradientPaint”3、变换:最简单的是Graphics2D.scale4、文本:Graphics2D.drawString5、图像:Graphics2D.drawImage6、颜色:Graphics2D.setColor7、Area:这个是用于图形裁剪的,最常用的add/subtract就是在一个图形是那个加减另一个。8、图形:java.awt.Shape的子类都是图形,比如new Rectangle2D.Float可以建立矩形。9、动画:使用Timer来控制。

用JAVA语言写一个二维平面图形(如长方形)的平移,旋转,缩放的程序.

import javax.swing.*;

import java.awt.*;

import java.awt.event.ActionEvent;

import java.awt.geom.*;

/**

 * @author Hardneedl

 */

class RectTransform extends JFrame {

    private static final Dimension minSize = new Dimension(300, 200);

    private static final Dimension maxSize = new Dimension(1024, 768);

    private static final Dimension preferredSize = new Dimension(600, 400);

    public Dimension getMaximumSize() {return maxSize;}

    public Dimension getMinimumSize() {return minSize;}

    public Dimension getPreferredSize() {return preferredSize;}

    public String getTitle() {return “Frame Title“;}

    private AffineTransform af = new AffineTransform();

    private Stroke stroke = new BasicStroke(2.0f);

    private Rectangle rct = new Rectangle(40,140,200,140);

    private JComponent canvas = new JComponent(){

            protected void paintComponent(Graphics g) {

                super.paintComponent(g);

                g.setColor(Color.BLACK);

                g.fillRect(0,0,getWidth(),getHeight());

                Graphics2D g2d = (Graphics2D)g.create();

                g2d.setColor(Color.YELLOW);

                g2d.setTransform(af);

                g2d.setStroke(stroke);

                g2d.draw(rct);

                g2d.dispose();

            }

    };

    RectTransform() throws HeadlessException {

        init();

        doLay();

        attachListeners();

    }

    private void init() {

    }

    private void doLay() {

        Container container = getContentPane();

        JPanel panel = new JPanel(new FlowLayout(FlowLayout.CENTER,30,5));

        panel.add(new JButton( new AfAction(“move“, AffineTransform.getTranslateInstance(100,100)) ));

        panel.add(new JButton( new AfAction(“rotate“, AffineTransform.getRotateInstance(Math.PI/3,40,120) ) ));

        panel.add(new JButton( new AfAction(“zoomIn“, AffineTransform.getScaleInstance(2,2)) ));

        panel.add(new JButton( new AfAction(“ZoomOut“, AffineTransform.getScaleInstance(.5d,.5d)) ));

        panel.add(new JButton( new AfAction(“Original“, new AffineTransform()) ) );

        container.add(panel,BorderLayout.NORTH);

        container.add(canvas,BorderLayout.CENTER);

        pack();

    }

    private void attachListeners() {

        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    }

    private class AfAction extends AbstractAction {

        private AffineTransform aff;

        private AfAction(String n,AffineTransform af) {

            super(n);

            this.aff = af;

        }

        public void actionPerformed(ActionEvent e) {

            af.setTransform(aff);

            if(canvas.isVisible()) canvas.paintImmediately(0,0,getWidth(),getHeight());

        }

    }

    public static void main(String args) {

        new RectTransform().setVisible(true);

    }

}

Java程序设计图形类

public class Rectangle{ private int width; private int height; public Rectangle(){ this.width = 10; this.height = 10; } public Rectangle(int width, int height){ this.width = width; this.height = height; } public int area(){ return width * height; } //省略getter/setter }

用JAVA怎么输出几何图形

public class Main { public static void main(String args) { for (int i = 0; i 《 5; i++) //这一句控制5行的打印。 { for (int j = 0; j 《 5 – i – 1; j++) { System.out.print(“ “); }//这一句共执行 5-i-1次,即输出 5-i-1个空格。 for (int k = 0; k 《 2*i+1; k++) { System.out.print(“*“); }//这一句共执行 i+1次。即输出i+1个*。 //该输出的都输出了,换一行继续打印。 System.out.println(); //打印一个回车符,即换行了。 }//你可以迭代一下每个i值,看看打印的个数对不对。 //打印下一个图形。少了打空格的循环。 for (int i = 97; i 《 97 + 5; i++) { for (int j = 97; j 《 i + 1; j++) { System.out.print((char) j);//这句打印对称的前半部分。 } for (int k = i-1; k 》 96; k–) { System.out.print((char) k);//这句打印对称的后半部分。k是自减的,所以打印出来是倒着的。 } System.out.println();//打印换行符。 } }}

java怎么绘制立体几何图形

java 输出菱形代码:System.out.print(“ “);for (k = 1; k 《= 2 * i – 1; k++)System.out.print(“*“);System.out.println(““);}for (i = 1; i 《= 4; i++) {for (j = 1; j 《= i; j++)System.out.print(“ “);for (k = 1; k 《= 9 – 2 * i; k++)System.out.print(“*“);System.out.println(““);}}}绘制算法:1、分为两部分,上半部分和下半部分2、输出空格部分换个输出*部分3、最后一个标签需要换行



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3