在控制台打印一个圆
来源:互联网 发布:重庆悦来数据谷 编辑:程序博客网 时间:2024/06/05 16:38
在《疯狂Java讲义》中有一道题:通过API文档查询Math类的方法,打印如下图所示的圆:
请输入圆的半径(正整数):5
**
* *
* *
* *
* *
**
代码如下:
package com.lwb;import java.util.Scanner;public class Circle {public static void main(String[] args) { System.out.print("请输入圆的半径(正整数):"); Scanner in = new Scanner(System.in); int radius=in.nextInt(); paint(radius); //圆半径 } public static void paint(int r) { //假定圆心在坐标(r,r); int y = r * 2; //y的坐标开始 int x = 0; int c = 0; //中间空格数量 int z = 2; //每行递减量,因为在显示格内,竖行的距离差不多是横行距离的2倍 for (int j = r * 2; j >= 0; j=j-z) { //循环根据直径来控制 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) { //解圆标准方程的 double t = Math.sqrt((r * r) - (y-r)*(y-r)); //求出(x-r) 圆的标准方程:(x-a)2+(y-b)2=r2;(a,b)为圆心 return (int) Math.round(r-t); //求圆左侧的X } //x等于多少,就加入多少个空格;也就是加入的空格数 public static String getSpace(int i) { String s = ""; for (int j = 0; j < i; j++) { s += " "; } return s; }}
0 0
- 在控制台打印一个圆
- 在控制台打印一个圆
- java用“*”在控制台打印出一个圆
- java 用“*”在控制台打印出一个近似圆
- 在控制台打印一个空心的菱形
- 在控制台打印菱形
- 在控制台打印月历
- 用for循环实现在控制台打印一个矩形
- Java控制台打印一个菱形
- hibernate在控制台打印sql
- Mybatis在控制台打印sql
- js如何在控制台打印?
- 控制台打印圆
- 怎样在一个项目里用logger在控制台打印信息
- for循环练习,在控制台逆序打印一个输入的正整数
- Java控制台打印一个空心菱形
- Java控制台打印一个扇状正三角形
- 将一个输入流打印到控制台
- excel学习笔记--函数、VBA
- http://lib.csdn.net/litao0942051021/chart/Java学习
- 大数加法
- Linux下安装Java环境配置步骤详述
- 华为OJ-----最后一个单词长度
- 在控制台打印一个圆
- x264+mp4v2仿微信小视频(初版)
- zookeeper+hadoop2.X HA集群搭建
- 函数的四种调用模式
- numpy tolist()
- Trafodion成熟的SQL on HBase解决方案
- tcp,udp,http等实现机制与异同
- 【Java】java.util.Objects 工具类方法研究
- emoj表情保存,emoj错误