Computer >> Máy Tính >  >> Lập trình >> lập trình C

Số Osiris 3 chữ số Chương trình C?

Ở đây chúng ta sẽ thấy số Osiris. Số Osiris là loại số bằng tổng các hoán vị của các mẫu con có các chữ số của chính chúng. Giả sử số là 132. Sau đó, nếu chúng ta tính {12 + 21 + 13 + 31 + 23 + 32} thì đây cũng là 132. Vì vậy, số là số Osiris. Chúng ta phải kiểm tra xem số đã cho có phải là số Osiris hay không.

Cách tiếp cận rất đơn giản. Nếu chúng ta phân tích các số, mỗi chữ số xuất hiện hai lần nên chúng ở vị trí hàng đơn vị và hàng chục. Vì vậy, chúng ta có thể kiểm tra bằng cách nhân 11 với chúng.

Thuật toán

isOsirisNumber (n) -

Begin
   a := last digit
   b := second digit
   c := first digit
   digit_sum := a + b + c
   if n = (22 * digit_sum), then
      return true
   end if
   return false
End

Ví dụ

#include
using namespace std;
bool isOsirisNumber(int n) {
   int a = n % 10;
   int b = (n / 10) % 10;
   int c = n / 100;
   int sum = a + b + c;
   if (n == (22 * sum)) {
      return true;
   }
   return false;
}
int main() {
   int n = 132;
   if (isOsirisNumber(n))
      cout << "This is Osiris number";
   else
      cout << "This is Not Osiris number";
}

Đầu ra

This is Osiris number