通过在 C++ 中的给定数字中使用一次交换操作可能得到的最大偶数
在本教程中,我们将编写一个程序,通过一次数字交换找到最大可能的偶数。
让我们看看解决问题的步骤。
以字符串格式初始化数字。
迭代给定的数字。
找出小于或等于数字最后一位的偶数。
如果找到所需的偶数,则中断循环。
如果偶数不存在,则返回给定的数字。
将最后一位与您在上述步骤中找到的偶数交换。
返回号码
示例
#include输出结果using namespace std; string getLargestEvenNumber(string number, int n) { int even = INT_MAX, index; for (int i = 0; i < n - 1; i++) { if ((number[i] - '0') % 2 == 0) { even = (number[i] - '0'); index = i; } if (even <= (number[n - 1] - '0')) { break; } } if (even == INT_MAX) { return number; } swap(number[index], number[n - 1]); return number; } int main() { string number = "15433"; cout << getLargestEvenNumber(number, 5) << endl; return 0; }
如果你运行上面的代码,那么你会得到下面的结果。
15334
结论
如果您对本教程有任何疑问,请在评论部分提及。
热门推荐
10 爱情贺卡祝福语简短英语
11 娃娃考试祝福语幽默简短
12 结婚祝福语简短精辟 兄弟
13 表达朋友的祝福语简短
14 春节感恩祝福语简短的
15 结婚祝福语粤语大全简短
16 恭喜朋友升职祝福语简短
17 圣诞饭店祝福语大全简短
18 建工系毕业祝福语简短