你先想這道題的思路吧。
創(chuàng)新互聯(lián)建站網(wǎng)站建設(shè)由有經(jīng)驗(yàn)的網(wǎng)站設(shè)計(jì)師、開發(fā)人員和項(xiàng)目經(jīng)理組成的專業(yè)建站團(tuán)隊(duì),負(fù)責(zé)網(wǎng)站視覺設(shè)計(jì)、用戶體驗(yàn)優(yōu)化、交互設(shè)計(jì)和前端開發(fā)等方面的工作,以確保網(wǎng)站外觀精美、成都網(wǎng)站制作、成都做網(wǎng)站、外貿(mào)營銷網(wǎng)站建設(shè)易于使用并且具有良好的響應(yīng)性。
首先打印出圓形的話就是在一個(gè)60-60這種正方形里面話個(gè)圓,你先要知道要畫的點(diǎn)的位置對(duì)吧。算出所有的點(diǎn)打印出來。就是這個(gè)思路。然后是怎么算的問題了
public?class?SSS?{
public?static?void?main(String[]?args)?{
//半徑
int?r?=?30;
for?(int?y?=?0;?y?=?2?*?r;?y?+=?2)?{
long?x?=?Math.round(r?-?Math.sqrt(2?*?r?*?y?-?y?*?y));
long?longLength?=?2?*?(r?-?x);
for?(int?i?=?0;?i?=?x;?i++)?{
System.out.print('?');
}
System.out.print('*');
for?(int?j?=?0;?j?=?longLength;?j++)?{
System.out.print('?');
}
System.out.println('*');
}
}
}
靠,樓上的回答那么長啊,只要一個(gè)函數(shù),就是
drawOval(int
x,int
y,int
w,int
h);
這是是畫橢圓形的函數(shù),但是它也可以畫圓形。
比如
drawOval(100,100,50,50);
就在坐標(biāo)50,50畫一個(gè)直徑100的圓,只要把,最后的2個(gè)參數(shù)設(shè)成一樣就是一個(gè)圓。要畫直徑200的話,就把最后2個(gè)參數(shù)設(shè)成200,200
一切OK了
代碼如下:
import java.awt.Color; import java.awt.Dimension; import java.awt.Graphics; import javax.swing.JFrame; import javax.swing.JPanel; public class TestSw extends JFrame { public static void main(String[] args) { new TestSw(); } public TestSw(){ super("Test"); this.setSize(new Dimension(400,300)); this.setContentPane(new Mypane()); this.setVisible(true); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } class Mypane extends JPanel{ public void paint(Graphics g) { super.paint(g); g.setColor(Color.red); g.setXORMode(Color.white); g.drawArc(20, 20, 100, 100, 0, 360); ///此方法將畫一個(gè)直徑100的圓.紅色. } } }