import java.util.Scanner;
public class PrintVshape {
public static void main(String [] args){
Scanner inputDevice = new Scanner(System.in);
for(int i=0;i<5;i++){
for(int k=6;k>i;k--){
System.out.print("x");
}
System.out.print("V");
for(int j=7;j>i;j--){
System.out.print("p");
}
System.out.print("V");
System.out.print("\n");
}
}
}
这将打印出以下内容:
xxxxxxVpppppppV
xxxxxVppppppV
xxxxVpppppV
xxxVppppV
xxVpppV
这是一个作业问题。我坚持的是x。我需要反转它们,以便它们变得更多而不是更少。
答案 0 :(得分:1)
对于Seq("test").toDS
.write
.mode(SaveMode.Append)
.jdbc(jdbcUrl, "textspark", connectionProperties)
的循环表示将其从6运至x
,而i
从0运至5;
i
这意味着 for(int k=6;k>i;k--){
System.out.print("x");
}
将被打印6次,5次..
更正x
的循环,就可以了。
答案 1 :(得分:0)
您需要在k
上循环直至某个递增值,例如i
,或者在这种情况下为i+2
,以获取两个x
之间的范围第一行到最后的六个x
:
for (int k = 0; k < i+2; k++) {
System.out.print("x");
}
答案 2 :(得分:0)
Scanner inputDevice = new Scanner(System.in);
for(int i=0;i<5;i++){
for(int k=0;k<i+2;k++){
System.out.print("x");
}
System.out.print("V");
for(int j=7;j>i;j--){
System.out.print("p");
}
System.out.print("V");
System.out.print("\n");
}
}
结果:
xxVpppppppV
xxxVppppppV
xxxxVpppppV
xxxxxVppppV
xxxxxxVpppV
k周期中的i + 2,表示它将在beginnig上打印x的次数(如果要以xx开头,则i = 0 + 2)
答案 3 :(得分:0)
我不太确定,这是你现在想要的东西吗?
public static void main(String[] args) {
int N = 8;
printV(N);
}
private static void printV(int N) {
for (int i = 0; i < N; i++) {
for (int k = 0; k < i; ++k) {
System.out.print("x");
}
System.out.print("V");
for (int j = 0; j < (N - i - 1) * 2; ++j) {
System.out.print("p");
}
System.out.print("V");
for (int k = 0; k < i; ++k) {
System.out.print("x");
}
System.out.print("\n");
}
}
输出:
VppppppppppppppV
xVppppppppppppVx
xxVppppppppppVxx
xxxVppppppppVxxx
xxxxVppppppVxxxx
xxxxxVppppVxxxxx
xxxxxxVppVxxxxxx
xxxxxxxVVxxxxxxx