根据用户给定一个数的大小用java输出一个M形状 要求:M的大小谁随用户输入的数值大小改变。谢谢解答!!!
解决方案 »
- j2me诡异继承问题
- (散分)抽象类和接口的区别
- Jcreator4的问题??
- 急, java 中如何实现 utf-8 到 ucs-2 ( ISO-10646-UCS-2 ?) 的转换.
- 读取指定IP的mib库,实现set,get,getnext等操作
- 急救!急救!急救!
- File 能人请进 -> 这样声明 File dri[7] ; 不可以吗?
- 请问高手java特别是JBUILDER7怎样用JDBC连SYBASE11,在哪儿找JDBC?
- Collection问题!望指教!
- 用JAVA实现语音交互的功能(即语音聊天室的功能)
- *关于Thinking in java(第四版)导入问题
- JRE的作用是什么
package com.walkman.suanfa;/**
* 作者: walkman
* 日期: 2011-7-11
* 内容: 根据输入的整数来输出一组相应的M形状的字符
*/
public class InputFigure { public static void main(String[] args) {
InputFigure test = new InputFigure();
test.printTriangle(2);
test.printTriangle(3);
test.printTriangle(5);
test.printTriangle(8);
} private void printTriangle(int size) {
if (size < 3) {
System.out.println("大小不能小于3");
return;
} // 画出图形
for (int i = 0; i < size; i++) { // i代表星号的行数
drawFigure(i, size);
drawFigure(i, size);
System.out.println("");
} // 画出分隔符
for(int line = 0; line < 4 * size; line++){
System.out.print("-");
}
System.out.println("");
}
// 画出一个V字形的图案,在printTriangle方法中运行两次,形成M的形状。
private void drawFigure(int num, int size){
for (int pSpace = num; pSpace < size - 1; pSpace++) {
System.out.print(" ");
}
// 输出星号
System.out.print("*"); // 输出星号之间的空格
for (int midSpace = 0; midSpace < (2 * num) - 1; midSpace++) {
System.out.print(" ");
} // 再输出星号(第二行以后)
if (num >= 1) {
System.out.print("*");
} // 输出第二个星号以后的空格
for (int afSpace = size - num; afSpace > 0; afSpace--) {
System.out.print(" ");
}
}
}
比如橫向擴大一倍就是原來的: M => MM縱向: M => M
M整體擴大一倍: M => MM
MM
import java.awt.FontMetrics;
import java.awt.Graphics2D;
import java.awt.image.BufferedImage;public class Main { public static void main(String[] args) {
BufferedImage image = new BufferedImage(100, 20, BufferedImage.TYPE_INT_RGB);
Graphics2D g = image.createGraphics();
g.setFont(new Font("Times New Roman", Font.PLAIN | Font.BOLD, 20));
int h = image.getHeight();
int w = image.getWidth();
FontMetrics metrics = g.getFontMetrics();
g.drawString("K L M N O", 0, h - metrics.getDescent() - metrics.getLeading());
int[] p = image.getRGB(0, 0, w, h, new int[w * h], 0, w);
for (int i = 0; i < h; i++) {
for (int j = 0; j < w; j++) {
System.out.print(p[i * w + j] == -1 ? "#" : " ");
}
System.out.println();
}
}
}
{
char* x = "bB_Z#^B_Z#h1AI.BMB5#VB2>2:B>>=6#RB@1.>>L12#NB6N:>BN#JFHL1@D6#";
while(a = *x / 4) a -= 8, printf("n%*s" + !!a, a, "_/_/_/" + *x++ % 4 * 2);
}