1.用Java编程计算a+aa+aaa+....+aa..aa(n个a),要求从键盘上输入a和n,要求a的值不超过9,n的值不得大于20,要两个不同的·编程
时间: 2024-05-01 20:20:11 浏览: 44
方案:
方案一:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入a的值(不超过9):");
int a = scanner.nextInt();
System.out.print("请输入n的值(不大于20):");
int n = scanner.nextInt();
int sum = 0;
int temp = 0;
for (int i = 1; i <= n; i++) {
temp = temp * 10 + a;
sum += temp;
}
System.out.println(sum);
}
}
```
方案二:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入a的值(不超过9):");
int a = scanner.nextInt();
System.out.print("请输入n的值(不大于20):");
int n = scanner.nextInt();
int sum = 0;
for (int i = 1; i <= n; i++) {
int temp = 0;
for (int j = 0; j < i; j++) {
temp = temp * 10 + a;
}
sum += temp;
}
System.out.println(sum);
}
}
```
这两种方案都可以实现输入a和n,求a+aa+aaa+....+aa..aa(n个a)的和。其中方案一使用了一个变量temp来记录每次的加数,而方案二则使用了一个内层循环来计算每次的加数。两种方案的时间复杂度都是O(n^2),但是方案一的空间复杂度更低。
阅读全文