题目:求 整数 1~100之间的 求出 含有 7 或者7的倍数的数一共有多少 分别是什么?
拿道题读题后分析:
第一步
既然要求出数 1~100之间的有 7 或者7的倍数的数一共有多少 ,那么我们首先要做的就是遍历1-100之间的所有数,即:
for (int i = 1; i <= 100; i++) {
{
这样1-100之间的所有数即可用i打印出来了
接着分析,我们要求出含有7或者7的倍数,那么我们可以再把这部分分开成两部分来实现
第二步
找出含有7的数,即:
int ge = i%10; //(这步为求个位数是多少)
int shi = i/10%10;//(这步为求十位数是多少)
if (ge == 7 | shi == 7) {
System.out.print(" " + i);
}
第三步
找出7的倍数,即:
if (i % 7 == 0) {
System.out.print(" " + i);
{
题目还要求我们计算出一共有多少个这样的数,那么我们设一个数字去计算他,int sum = 0,每当判断到有一个数字时我们使其sum++;
将其加上我们最终的结果即:
public class Demo {
public static void main(String[] args) {
int sum = 0;
for (int i = 1; i <= 100; i++) {
int ge = i%10;
int shi = i/10%10;
if (i == 7) { //(这部分是我为了显示美观,可省略)
System.out.print("分别为:");//(这部分是我为了显示美观,可省略)
} //(这部分是我为了显示美观,可省略)
if (i % 7 == 0) {
sum++;
System.out.print(" " + i);
}else {
if (ge == 7 | shi == 7) {
sum++;
System.out.print(" " + i);
}
}
}
System.out.println();
System.out.println("一共有" + sum + "个");
}
}
控制台显示为:
分别为: 7 14 17 21 27 28 35 37 42 47 49 56 57 63 67 70 71 72 73 74 75 76 77 78 79 84 87 91 97 98
一共有30个