C++程序:查找给定数字中的最小数字


给定一个非负数,任务是找到其最小数字。

例如

输入

N = 154870

输出

0

解释:在给定的数字“154870”中,最小数字是“0”。

解决此问题的方法

解决此问题的最简单方法是使用余数定理提取给定数字的最后一位数字。在遍历数字时,我们将检查提取的数字是否小于最后一位数字,然后返回结果。

  • 将数字n作为输入。
  • 整数函数smallest_digit(int n)将'n'作为输入,并返回给定数字中的最小数字。
  • 现在将min初始化为给定数字的最后一位数字。
  • 遍历数字并检查提取的数字是否小于最小数字。如果为真,则更新最小数字并返回结果。
  • 通过n/10去除最后一位数字,并检查是否存在另一个数字小于当前数字。
  • 返回结果。

示例

在线演示

#include <iostream>
using namespace std;
int smallest_digit(int n) {
   int min = n % 10; //assume that last digit is the smallest
   n /= 10; //to start from the second last digit
   while (n != 0) {
      if (min > n % 10)
         min = n % 10;
      n /= 10;
   }
   return min;
}
int main() {
   int n = 154870;
   cout << smallest_digit(n);
   return 0;
}

运行上述代码将生成以下输出:

输出

0

解释:在给定的数字“154870”中,最小数字是“0”。

更新于:2021年2月23日

3K+浏览量

开启你的职业生涯

完成课程获得认证

开始学习
广告