Ⅰ 求编程输出如下数字图案的代码
按照你的要求编写的输出数字图案的Java程序如下
public class M{
public static void main(String[] args) {
int i,j,k,index,count=1,N=5;
int arr[][]=new int[N][N];
for(index=1;index<=N;index++){
i=0;
j=index-1;
for(k=1;k<=index;k++){
arr[j][i]=count++;
i++;
j--;
}
}
for(i=0;i<N;i++){
for (j=0;j<N-i;j++){
System.out.print(arr[i][j]+" ");
}
System.out.println();
}
}
}
Ⅱ 编程打印下列图案:按下图规律输出图形(使用循环语句实现)
题主给出的图案,如用matlab来做的话,可以这样来处理。
1、分析给出的图案,可以找到其图形输出规律,即
n=2k-1 %图形递减或递增
2、利用for循环语句,计算图形输出位置【x,y】值
3、使用plot函数绘制图形符号,由于matlab暂时无法显示'$'符号,用'□'来替代,即
plot(x,y,'gs')
4、实现代码
clc
for k=[1 2 3 4 5]
n=(2*k-1);
y=k;
for i=1:n
x=i;
plot(x,y,'gs','LineWidth',2,'MarkerSize',10,'MarkerEdgeColor','b','MarkerFaceColor',[0.5,0.5,0.5]),hold on
end
end
for k=[4 3 2 1]
n=(2*k-1);
y=10-k;
for i=1:n
x=i;
plot(x,y,'gs','LineWidth',2,'MarkerSize',10,'MarkerEdgeColor','b','MarkerFaceColor',[0.5,0.5,0.5]),hold on
end
end
axis off
5、运行效果如下所示。