#java
#java
Вопрос:
для школьного проекта я пытаюсь создать перевернутую полупирамиду
в настоящее время мой код выглядит следующим образом
public static void main(String[] args) {
int rows = 5;
for(int i = rows; i >= 1; --i) {
for(int j = 1; j <= i; j) {
System.out.print(j " ");
}
System.out.println();
}
}
с этим выводом:
12345
1234
123
12
1
желаемый результат:
54321
=4321
==321
===21
====1
Комментарии:
1. Ваш внутренний цикл (с использованием
j
) имеет значение от 1 доi
, измените его, чтобы перейти отi
к 1, если вы хотите изменить порядок.2. Это не результат вашего текущего кода, поскольку ваш код печатает пробел после каждого числа.
Ответ №1:
Обновление (на основе обновленного требования):
Вам нужен цикл для печати =
, равный ( rows
— row number
) раз.
public class Main {
public static void main(String[] args) {
int rows = 5;
for (int i = rows; i >= 1; --i) {
for (int j = i; j < rows; j ) {
System.out.print("=");
}
for (int j = i; j >= 1; --j) {
System.out.print(j);
}
System.out.println();
}
}
}
Вывод:
54321
=4321
==321
===21
====1
Оригинальный ответ:
Ваш внутренний цикл должен быть
for (int j = i; j >= 1; --j)
т.е. для каждой строки она должна начинаться с номера строки (т.Е. i
) и опускаться до 1
.
Комментарии:
1. как бы мне изменить его, чтобы получить новый желаемый результат?
2. @MentalOverload — я опубликовал обновление, основанное на вашем новом требовании.
Ответ №2:
Это просто, вам придется изменить вещи: ваш внутренний цикл, и вам нужно будет переместить оператор println внутри цикла
//code
public static void main(String[] args){
int rows = 5;
for (int i = rows; i >= 1; --i){
for(int j = i; j >= 1; --j)
System.out.print(j " ");
System.out.println();
}
}