java常見邏輯練習題求 整數 1~100之間的 求出 含有 7 或者7的倍數的數一共有多少 分別是什麼?
阿新 • • 發佈:2018-12-16
題目:求 整數 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個