我正在做一些产生正确结果的事情。然而,从设计观点来看,这是错误的。
该程序的重点是列出一个数字的所有幂的结果,直到并包括用户定义的限制。
我有一个构造函数,它接受扫描器中的基和指数。然后是一种利用for循环计算每个指数的幂的方法。
现在,问题是我直接从这个方法打印每个循环迭代的结果。这超过了私有变量的点,它首先是无效的。
因此,我想定义一个getter方法,它将每个幂的结果返回给输出。我过去常常为if/switch语句设置它们,但我不知道如何为循环做同样的事情。如果我将结果分配给循环中的一个变量并从getter返回该变量,那么它将只返回最终迭代的输出。
私人执行
package Chapter6Review;
public class Powers {
private int target;
private int power;
public Powers(int target, int power) {
this.target = target;
this.power = power;
}
public void calculatePower() {
for (int i = 0; i <= power; i++) {
System.out.println((int) Math.pow(target, i));
}
}
/*
public int getPower() {
return
}
*/
}
用户界面
package Chapter6Review;
import java.util.Scanner;
public class PowersTester {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.print("Enter your base: ");
int target = in.nextInt();
System.out.print("Enter your exponent: ");
int power = in.nextInt();
Powers tester = new Powers(target, power);
tester.calculatePower();
}
}
您也可以考虑使用流
public List<Integer> calculatePower() {
return IntStream
.rangeClosed(0, power). // iterate from 0 till power inclusive
.mapToObj(i -> (int) Math.pow(target,i))
.collect(Collectors.toList()); // get result as list
}
您可以将每个结果存储在列表中:
List<Power> list = new ArrayList<>();
当你调用它时,也添加它
list.add(new Powers(target, power));
最后,您可以像这样遍历列表:
for (Power power : list){
// your code
}
您可以简单地使用列表;
public List<Integer> calculatePower() {
int p;
List<Integer> result = new ArrayList<Integer>();
for (int i = 0; i <= power; i++) {
p = (int) Math.pow(target, i);
result.add(p);
}
return result;
}
然后,在main方法中,可以迭代列表以如下方式打印幂:
List<Integer> result = new ArrayList<Integer>();
Powers tester = new Powers(target, power);
result = tester.calculatePower();
for (int i = 0; i < result.size(); i++) {
System.out.println(result.get(i));
}
我试图在PHP中的foreach循环的每次迭代之后进行回显。回声在全部完成之前不会呈现。我试过各种帖子的建议,但没有一个奏效。我的一些代码是: 有什么建议吗?谢了。
我正在尝试获取一个
计分器(100分) Praveen正在学校找一份计算机科学教师的工作。他多次被不同的学校拒绝,但这次他决心得到这份工作。他去找圣玛丽学校的校长。 校长说他的学校有等级和学分制。有N个科目,每个科目都有一个学分 现在,如果有3个科目的学分分别为4、3和2,并且某个学生在这3个科目中的分数分别为a(负)、B和C,那么他的分数计算如下:总分=每个科目的分数和相应学分的乘积之和。 他希望Praveen通过
考虑这个简单的C++函数来计算数组的前缀和: 它是4个融合的UOP1,这个CPU可以支持4个融合的OPs/周期。 有通过和携带的依赖链,每个都是一个循环,但是这些UOP可以到4个ALU端口中的任何一个,所以似乎不太可能冲突。融合的需要转到p6,这是一个更令人担忧的问题,但我只测量到p6的1.1 UOPS/迭代。这将解释每次迭代1.1个循环,但不是1.4个循环。如果我将循环展开2倍,端口压力会低得多
在Django模板中,我想创建一个遍历列表的for循环。在循环过程中,我还希望能够使用循环的迭代次数。 例如,如果有4个元素,那么: 应打印以下内容: 我该怎么做呢?