java在Applet画图中绘制杨辉三伯形。要绘制的行数由Applet参数决定倒如以下为3行情形的粉辉三鱼形 1 1 2 1 1 3 3 1
以下是Java代码实现:
import java.awt.*;
import java.applet.*;
public class YangHuiTriangle extends Applet {
int n; // 杨辉三角的行数
public void init() {
String s = getParameter("n");
n = Integer.parseInt(s);
}
public void paint(Graphics g) {
int[][] triangle = new int[n][n];
for (int i = 0; i < n; i++) {
for (int j = 0; j <= i; j++) {
if (j == 0 || j == i) {
triangle[i][j] = 1;
} else {
triangle[i][j] = triangle[i-1][j-1] + triangle[i-1][j];
}
}
}
int x = getWidth() / 2; // 杨辉三角的中心横坐标
int y = getHeight() / 2; // 杨辉三角的中心纵坐标
int size = 20; // 每个数字的宽度和高度
int halfSize = size / 2;
for (int i = 0; i < n; i++) {
int startX = x - i * halfSize;
int startY = y - (n - i) * size;
for (int j = 0; j <= i; j++) {
String s = Integer.toString(triangle[i][j]);
int textWidth = g.getFontMetrics().stringWidth(s);
int textHeight = g.getFontMetrics().getAscent();
int centerX = startX + halfSize;
int centerY = startY + halfSize;
g.drawString(s, centerX - textWidth / 2, centerY + textHeight / 2);
startX += size;
}
}
}
}
在HTML文件中使用以下代码调用Applet:
<applet code="YangHuiTriangle.class" width="400" height="400">
<param name="n" value="3">
</applet>
其中,参数n的值可以根据需要设置
原文地址: http://www.cveoy.top/t/topic/cD9J 著作权归作者所有。请勿转载和采集!