ccf练习题——报数(java实现)

源码:
// package ······ 注明属于哪一个包下的
import java.util.*;
// 报数
class Baoshu {
public static boolean judge(int i) {
if(i % 7 == 0) return true; // 判读数是否为7的倍数
else {
while(i != 0) { // 判断数是否含有7
int n;
n = i % 10;
if(n == 7) return true;
i = i/10;
}
return false;
}
}
public static void main(String[] args) {
int data[] = new int[4]; // 用来记录 甲乙丙丁 跳过次数
Scanner input = new Scanner(System.in);
int num = input.nextInt(); // 存储计数的最大值
for(int i = 1; i <= num; i++) {
if(judge(i)) {
data[(i - 1) % 4] += 1; // 加1 是因为 i从0 开始计数
num++; // 每当跳过一个数时,根据题目是不计数
} // 相当于界限num 加1
}
for(int i = 0; i < 4; i++) {
System.out.println(data[i]);
}
}
}
本文介绍了一款基于CCF竞赛的报数游戏的Java实现代码。通过判断数字是否为7的倍数或包含数字7,实现了四人轮流跳过的逻辑。代码详细展示了如何使用数组记录每位玩家跳过的次数,并通过Scanner类获取用户输入的最大计数值。
507

被折叠的 条评论
为什么被折叠?



