栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

JAVA-打印圆形三种代码

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JAVA-打印圆形三种代码

三个代码
            • 代码示例一
            • 代码示例二
            • 代码示例三

代码示例一
package three;
import java.util.Scanner;//形象理解:在java.util下将Scanner拿过来用
//import java.awt.Paint;
//import java.lang.Math;

public class test3 {
	public static void main(String[] args) {
		Scanner sc =new Scanner(System.in);// radius半径
		System.out.print("请输入圆的半径:");
	    int r = sc.nextInt();//使用户能够从 System.in 中读取一个数
		for(int i=0;i<=2*r;i+=2) {//行数 小于等于直径
			int x=(int)(r - Math.round(Math.sqrt((2*r*i-i*i))));
			//Math.sqrt此方法返回一个正平方根。如果参数是NaN或小于为零,那么结果为NaN。
			//round() 方法返回一个最接近的 int、long 型值,四舍五入。
			for(int j=0;j 

运行结果:

请输入圆的半径:4
    **
 *      *
*        *
 *      *
    **
代码示例二
package three;
import java.util.Scanner;//形象理解:在java.util下将Scanner拿过来用
import java.lang.Math;

public class demo {
	    public static void main(String[] args) {
	        System.out.print("请输入圆的半径:");
	        Scanner sc =new Scanner(System.in);// radius半径
	        int radius = sc.nextInt();//使用户能够从 System.in 中读取一个数
	        paint(radius);  //手动输入半径5   
	    }
	    public static void paint(int r){//r是形参  radius传进来了
	        int y = r*2;//y=10
	        int x = 0;
	        int c = 0;
	        int z = 2;
	        for(int j=r*2;j>=0;j=j-z){//j>=0 && j<=10 j=8,
	            x=getX(r,y);
	            System.out.print(getSpace(x)+"*");
	            c=(r-x)*2;
	            System.out.println(getSpace(c)+"*");
	            y-=z;
	        }
	    }
	    public static int getX(int r,int y){
	            int x=y-r;//x=5
	            double t=Math.sqrt((r*r)-(x*x));
	            //Math.sqrt此方法返回一个正平方根。如果参数是NaN或小于为零,那么结果为NaN。
	            return (int)Math.round(r-t);
	            //round() 方法返回一个最接近的 int、long 型值,四舍五入。
	    }
	    public static String getSpace(int i){
	        String s = " ";
	        for(int j=0;j 

代码示例:

请输入圆的半径:5
      * *
  *         *
 *           *
 *           *
  *         *
      * *
代码示例三
package three;

public class test4 {
	public static void main(String[] args) {
		 
	        int r = 8; //9行 
	        for (int y = 0; y <= 2 * r; y +=2) {//y的步长为2,改变y的步长可以将圆形变成椭圆  
	        	int x = (int)Math.round(r - Math.sqrt(2*r*y-y*y)); //Math.sqrt(r * r-(r-y) *(r-y))转化得 
	        	int len = 2 * (r - x);  //对称的两*之间的距离
	            //i行j列
	            for (int i = 0; i <= x; i++) {  //距离控制台左边的距离
	                System.out.print(" ");  
	            }     
	            System.out.print("*");  
	  
	           for (int j = 0; j <= len; j++) {  
	                System.out.print(" ");  
	            } 
	  
	            System.out.println("*");  
	        	}
	}
}

运行结果:

         * *
    *           *
  *               *
 *                 *
 *                 *
 *                 *
  *               *
    *           *
         * *
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/340953.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号