首页 >后端开发 >C++ >3位数的Osiris数字C程序?

3位数的Osiris数字C程序?

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB转载
2023-08-26 08:05:15883浏览

3位数的Osiris数字C程序?

在这里我们将看到奥西里斯号。奥西里斯数是这样一种数字,其等于其自身数字的子样本的排列之和。假设这个数字是132,那么如果我们计算{12 + 21 + 13 + 31 + 23 + 32},这也是132。所以这个数字是奥西里斯数。我们必须检查给定的数字是否是奥西里斯数。

方法很简单。如果我们分析这些数字,每个数字都会出现两次,因此它们位于个位和十位。因此我们可以通过将它们乘以 11 来进行检查。

算法

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

示例

#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";
}

输出

This is Osiris number

以上是3位数的Osiris数字C程序?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文转载于:tutorialspoint.com。如有侵权,请联系admin@php.cn删除