Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

ตรวจสอบ Number หาร 23 ลงตัวหรือไม่ใน C++

ตรวจสอบว่า Number หาร 23 ลงตัวหรือไม่ ตัวอย่าง 1191216 หาร 23 ลงตัว

กฎ:

  1. ดึง Last Digit ทุกครั้ง
  2. บวก 7 × (Last Digit) เข้า Truncated Number
  3. ทำซ้ำจนกว่าเพียงพอ
17043, so 1704 + 7*3 = 1725
1725, so 172 + 7 * 5 = 207
207, this is 9 * 23, so 17043 is divisible by 23.

ตัวอย่างโค้ด C++

#include <iostream>
#include <algorithm>
using namespace std;

bool isDivisibleBy23(long long int n) {
    while (n / 100) {
        int last = n % 10;
        n /= 10; // Truncating
        n += last * 7;
    }
    return (n % 23 == 0);
}

int main() {
    long long number = 1191216;
    if(isDivisibleBy23(number))
        cout << "Divisible";
    else
        cout << "Not Divisible";
}

ผลลัพธ์

Divisible