设计一个Java方法,根据传入的正整数行数 打印如下三角形型* ---*** --***** ****** *********给出完整代码
时间: 2023-07-18 11:44:03 浏览: 38
以下是完整的 Java 代码,包括 `printTriangle()` 方法和一个简单的示例程序:
```java
public class Main {
public static void main(String[] args) {
int rows = 5;
printTriangle(rows);
}
public static void printTriangle(int rows) {
for (int i = 1; i <= rows; i++) {
// 输出每行前面的空格
for (int j = 1; j <= rows - i; j++) {
System.out.print(" ");
}
// 输出每行的星号
for (int k = 1; k <= 2 * i - 1; k++) {
System.out.print("*");
}
// 换行
System.out.println();
}
}
}
```
该程序的输出结果为:
```
*
***
*****
*******
*********
```
你可以修改 `rows` 变量的值来打印不同行数的三角形。
相关问题
设计一个Java方法,根据传入的正整数行数 打印如下三角形型* ---*** --***** ****** *********
可以使用两个嵌套循环实现该功能,外层循环控制行数,内层循环控制每行输出的星号数量。
以下是实现该功能的 Java 代码:
```java
public static void printTriangle(int rows) {
for (int i = 1; i <= rows; i++) {
// 输出每行前面的空格
for (int j = 1; j <= rows - i; j++) {
System.out.print(" ");
}
// 输出每行的星号
for (int k = 1; k <= 2 * i - 1; k++) {
System.out.print("*");
}
// 换行
System.out.println();
}
}
```
调用该方法并传入行数参数即可打印出对应的三角形形状。例如,调用 `printTriangle(5)` 将会输出如下内容:
```
*
***
*****
*******
*********
```
用python计算1*-2*3*-4*...n
可以使用类似上面的方法,只不过在计算时需要判断当前的数是奇数还是偶数,来决定是否取反。具体实现代码如下:
```python
def product(n):
if n == 1:
return 1
else:
if n % 2 == 0:
return -n * product(n-1)
else:
return n * product(n-1)
n = 6
print(product(n)) # 输出 -720
```
在这个代码中,函数 `product(n)` 也会不停地调用自身,并将 `n` 不断减一直到 1。当 `n` 等于 1 时,函数返回 1。在每次递归调用时,我们会判断当前的数是奇数还是偶数,如果是偶数,我们就将其取反,即乘上 -1。最后,所有递归调用返回的结果会相乘得到最终的答案。在这个例子中,我们传入了 6,结果为 1*-2*3*-4*5*-6=-720。