初学java不久,请教大家,怎样用java打印出空心菱形???
初学java不久,请问怎样用循环打印出空心菱形?
------解决方案--------------------二维数组
------解决方案--------------------这个问题不能算是Java的问题,只是纯粹的算法问题。
代码:
public class rhombus{
public static void main(String[] args) {
int len; //菱长
String outstr=new String(); //输出
int i,j,x,y;
try{len=Integer.parseInt(args[0]);}
catch(Exception e){len=9;}
for(i=0;i <=len*2;i++){
for(j=0;j <=len*2;j++){
x=len-i;
x=x <0?-1*x:x;
y=len+(len-x);
outstr+=(j==x||j==y? "◆ ": " ");
}
outstr+= "\n ";
}
System.out.println(outstr);
}
}
运行结果:
E:\java> javac rhombus.java
E:\java> java rhombus
◆
◆ ◆
◆ ◆
◆ ◆
◆ ◆
◆ ◆
◆ ◆
◆ ◆
◆ ◆
◆ ◆
◆ ◆
◆ ◆
◆ ◆
◆ ◆
◆ ◆
◆ ◆
◆ ◆
◆ ◆
◆
E:\java> java rhombus 3
◆
◆ ◆
◆ ◆
◆ ◆
◆ ◆
◆ ◆
◆
E:\java>
------解决方案--------------------为了搞点分还真TM不容易啊
------解决方案--------------------太简单了
------解决方案--------------------String outstr=new String(); //输出
用StringBuffer应该会更好
------解决方案--------------------mark,挺有趣
------解决方案--------------------to: nanyang9(奋斗…)
算法真巧!
to: lz
nanyang9(奋斗…) 回答得那么棒、多仔细,除了源代码,连算法说明都给了,可以人家给分了。好不平哦!
------解决方案--------------------哈哈哈哈哈哈。。。。。。
public class rhombus{
public static void main(String[] args) {
System.out.println( ◆ );
System.out.println( ◆ ◆ );
System.out.println( ◆ ◆ );
System.out.println( ◆ ◆ );
System.out.println( ◆ ◆ );
System.out.println( ◆ ◆ );
System.out.println( ◆ ◆ );
System.out.println( ◆ ◆ );
System.out.println( ◆ ◆ );
System.out.println(◆ ◆);
System.out.println( ◆ ◆ );
System.out.println( ◆ ◆ );
System.out.println( ◆ ◆ );
System.out.println( ◆ ◆ );
System.out.println( ◆ ◆ );
System.out.println( ◆ ◆ );
System.out.println( ◆ ◆ );
System.out.println( ◆ ◆ );
System.out.println( ◆ );
}
}
------解决方案--------------------◇◆
用拼音加加打的
------解决方案--------------------用取绝对值的方法:
import java.util.Scanner;
public class F{
public static void main(String[] args){
Scanner s = new Scanner(System.in);