题目:
国王按棋盘格数和一定规律对一人进行赏麦,第一格赏1粒,第二格赏2粒,第三格赏4粒……,以此类推,求第n格所赏麦总数?
import java.util.Scanner;
public class GWSM {
public static void main(String[] args) {
int n;//格子数为n
double num, temp;//麦子总数为num,temp为临时数
Scanner sc = new Scanner(System.in);
System.out.print("请输入格子数:");
n = sc.nextInt();
num = 0.00;
temp = 1.00;
for (int i = 0; i < n; i++) {
num += temp;
//判断是否为最后一个数,若不是,进行运算,在下一次循环时直接加入总数;是,则不需要为下一次循环进行运算
if (i != n - 1) {
temp = temp * 2;
}
}
System.out.printf("%f", num);
sc.close();
}
}