【发布时间】:2018-11-26 12:19:12
【问题描述】:
我是 Java 编程的初学者。我想解决形式的表达
(a+20b)+(a+20b+21b)+........+ (a+20b+...+2(n-1)b) 以 a、b 和 n 的形式为您提供“q”查询每个查询,打印对应于给定 a、b 和 n 值的表达式值。这意味着
样本输入:
2
0 2 10
5 3 5
样本输出:
4072
196
我的代码是:
import java.util.Scanner;
public class Expression {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in = new Scanner(System.in);
int q=in.nextInt();
for(int i=0;i<q;i++){
int a = in.nextInt();
int b = in.nextInt();
int n = in.nextInt();
}
int expr=a+b; //ERROR:a cannot be resolved to a variable
for(int i = 0; i<n;i++) //ERROR:n cannot be resolved to a variable
expr+=a+Math.pow(2, i)*b; //ERROR:a and b cannot be resolved to variables
System.out.print(expr);
in.close();
}
}
【问题讨论】:
-
a和b仅在 for 循环中声明,因此它们在循环之外不可见。在 for 循环之外声明它们。n也是如此
标签: compiler-errors expression java.util.scanner unresolved-external