Java 按奇数顺序打印奇数
我的编程课上有一个问题,我不能正确理解。。。输出必须是所有奇数,以每行奇数表示,直到每行的数字量满足输入的奇数为止。例如: 输入:Java 按奇数顺序打印奇数,java,formatting,Java,Formatting,我的编程课上有一个问题,我不能正确理解。。。输出必须是所有奇数,以每行奇数表示,直到每行的数字量满足输入的奇数为止。例如: 输入:5 正确输出: 1 3 5 7 9 11 13 15 17 如果输入的数字为偶数或负数,则用户应输入不同的数字。这就是我到目前为止所做的: publicstaticvoidfirstnum(){ 扫描仪kb=新扫描仪(System.in); int num=kb.nextInt(); 如果(数值%2==0 | |数值System.out.print(val.getA
5
正确输出:
1
3 5 7
9 11 13 15 17
如果输入的数字为偶数或负数,则用户应输入不同的数字。这就是我到目前为止所做的:
publicstaticvoidfirstnum(){
扫描仪kb=新扫描仪(System.in);
int num=kb.nextInt();
如果(数值%2==0 | |数值<0)
firstNum();
如果(数量%2==1)
for(int i=0;i
public static void firstNum() {
Scanner kb = new Scanner(System.in);
int num = kb.nextInt();
while (num % 2 == 0 || num < 0) {
num = kb.nextInt();
}
int odd = 1;
for (int i = 1; i <= num; i += 2) {
String a = "";
for (int j = 1; j <= i; j++) {
a = odd + " ";
odd += 2;
System.out.print(a);
}
System.out.println();
}
}
publicstaticvoidfirstnum(){
扫描仪kb=新扫描仪(System.in);
int num=kb.nextInt();
而(数值%2==0 | |数值<0){
num=kb.nextInt();
}
int奇数=1;
对于(int i=1;iif(num%2==1){
int奇数=1;
}
for(int i=0;i 对于(int j=1;j似乎我发布有点晚,以下是我的解决方案:
publicstaticvoidfirstnum(){
扫描仪=新的扫描仪(System.in);
System.out.println(“输入奇数:”);
int num=scanner.nextInt();
如果(数值%2==0 | |数值<0){
firstNum();
}
如果(数量%2==1){
int-disNum=1;
对于(int i=1;i对于这样的问题,通常不需要使用和条件语句。您的学校可能不希望您也使用字符串。您可以在一对循环中控制所有内容
这是我的解决方案:
int size=7;//大小取自用户的输入
int-val=1;
int行=(大小/2)+1;
对于(int x=0;x
打印1列
第二行->
打印3列
第三行->
打印5列
第四行->
打印7列,依此类推
我们观察到,行和列之间的关系实际上是:
列=(行*2)+1
因此,我们有:y您可以使用两个嵌套循环(或流),如下所示:一个外部循环通过奇数个元素的行,一个内部循环通过这些行的元素。内部操作是按顺序打印并增加一个值
循环中的循环
int n=9;
int-val=1;
//用奇数循环遍历行
//元素数:1、3、5。。。
对于(int i=1;i+2)
//迭代行中的元素
.peek(i->IntStream.range(0,i)
//打印当前值并增加它
.forEach(j->System.out.print(val.getAndAdd(2)+“”)
//新线
.forEach(i->System.out.println());
输出:
1
3 5 7
9 11 13 15 17
19 21 23 25 27 29 31
33 35 37 39 41 43 45 47 49
另请参见:备注:我省略了代码,以检查输入编号是否为奇数,以确保代码的清晰性,我认为您对该部分没有问题,因此已将其省略。
public static void firstNum() {
Scanner kb = new Scanner(System.in);
int num = kb.nextInt();
while (num % 2 == 0 || num < 0) {
num = kb.nextInt();
}
int odd = 1;
for (int i = 1; i <= num; i += 2) {
String a = "";
for (int j = 1; j <= i; j++) {
a = odd + " ";
odd += 2;
System.out.print(a);
}
System.out.println();
}
}
1
3 5 7
9 11 13 15 17
19 21 23 25 27 29 31
33 35 37 39 41 43 45 47 49
1
3 5 7
9 11 13 15 17
19 21 23 25 27 29 31
33 35 37 39 41 43 45 47 49