Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C++

Kiểm tra số nhảy (jumbled number) trong C++


Một số được gọi là jumbled nếu hiệu giữa hai chữ số kề nhau không vượt quá 1. Ví dụ 1223 là jumbled, 1256 không phải.

Giải pháp: kiểm tra từng cặp chữ số kề nhau, nếu có cặp nào chênh lệch > 1 thì trả về false.

Ví dụ

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

bool isJumbled(int number) {
    if (number / 10 == 0)
        return true;
    while (number != 0) {
        if (number / 10 == 0)
            return true;
        int curr_digit = number % 10;
        int prev_digit = (number / 10) % 10;
        if (abs(prev_digit - curr_digit) > 1)
            return false;
        number = number / 10;
    }
    return true;
}

int main() {
    int n = 1223;
    if(isJumbled(n)){
        cout << n << " is Jumbled";
    } else {
        cout << n << " is not Jumbled";
    }
}

Kết quả

1223 is Jumbled