java 用“*”在控制台打印出一个近似圆
来源:互联网 发布:手机淘宝内部优惠券 编辑:程序博客网 时间:2024/05/16 14:13
import java.math.*;
public class circle {
public void printCircle(int r) {
int area_X=2*r;//要画圆的的外接正方形区域的X轴长度
int area_Y=2*r;//要画圆的的外接正方形区域的Y轴长度
int pos_x=0;//记录要画出*的x坐标
int pos_y=0;//记录要画出*的y坐标
double min_dis=2*r;
char[][] s=new char[area_X+1][area_Y+1];
for (int i = 0; i <=r; i++,i++) {
for (int j = 0; j <=r; j++) {
double distance=Math.sqrt((r-i)*(r-i)+(r-j)*(r-j));
double min_temp=Math.abs(r-distance);
s[i][j]=' ';
if (min_temp<=min_dis) {
pos_x=i;
pos_y=j;
min_dis=min_temp;
}
}
s[pos_x][pos_y]='*';
s[area_X -pos_x][pos_y]='*';
s[pos_x][area_Y-pos_y]='*';
s[area_X -pos_x][area_Y-pos_y]='*';
pos_x=0;
pos_y=0;
min_dis=2*r;
}
for (int i = 0; i < s.length; i++,i++) {
for (int j = 0; j < s.length; j++) {
System.out.print(s[i][j]);
}
System.out.print("\n");
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
int r=20;//半径
circle a=new circle();
a.printCircle(r);
}
}
public void printCircle(int r) {
int area_X=2*r;//要画圆的的外接正方形区域的X轴长度
int area_Y=2*r;//要画圆的的外接正方形区域的Y轴长度
int pos_x=0;//记录要画出*的x坐标
int pos_y=0;//记录要画出*的y坐标
double min_dis=2*r;
char[][] s=new char[area_X+1][area_Y+1];
for (int i = 0; i <=r; i++,i++) {
for (int j = 0; j <=r; j++) {
double distance=Math.sqrt((r-i)*(r-i)+(r-j)*(r-j));
double min_temp=Math.abs(r-distance);
s[i][j]=' ';
if (min_temp<=min_dis) {
pos_x=i;
pos_y=j;
min_dis=min_temp;
}
}
s[pos_x][pos_y]='*';
s[area_X -pos_x][pos_y]='*';
s[pos_x][area_Y-pos_y]='*';
s[area_X -pos_x][area_Y-pos_y]='*';
pos_x=0;
pos_y=0;
min_dis=2*r;
}
for (int i = 0; i < s.length; i++,i++) {
for (int j = 0; j < s.length; j++) {
System.out.print(s[i][j]);
}
System.out.print("\n");
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
int r=20;//半径
circle a=new circle();
a.printCircle(r);
}
}
阅读全文
0 0
- java 用“*”在控制台打印出一个近似圆
- java用“*”在控制台打印出一个圆
- JAVA语言如何用星号打印出一个近似圆
- java在控制台用星号打印出圆形
- 在控制台打印一个圆
- 在控制台打印一个圆
- java控制台打印出菱形
- Java利用循环,在控制台打印出菱形。
- 用java在控制台打印日历格式
- Java控制台打印一个菱形
- java编程实践之一:打印近似圆
- 用for循环实现在控制台打印一个矩形
- php打印近似圆
- 在非控制台程序中打印出printf
- log4j配置文件 mybaits怎么在控制台打印出sql语句
- 在非控制台程序中打印出printf
- 如何在控制台打印出mybatis sql语句日志
- 如何在控制台打印出mybatis sql语句日志
- Hadoop2.7.3完全分布式集群搭建和测试
- Retrofit学习总结
- JS-Jquery 同步校验两次密码是否相同
- concat连接字符串在字段前后增加字符串
- 共享经济来势汹汹读懂了你将是下一个土豪
- java 用“*”在控制台打印出一个近似圆
- Django中的全局配置
- leetcode
- 稀疏矩阵的快速转置
- 新建文本文档 (4)
- 在linux发布javaweb项目
- web 交互规范
- 沉浸式和状态栏的隐藏
- 打开网页自动重定向跳转到天猫(注意,这种情况不是网站劫持),原理和解决办法