使用 C++ 求偶数和的数字
能被2整除的整数是偶数。所以在这篇文章中,我们给定了数字n,我们需要找到第n个数字和为偶数的数字。数字总和为偶数的前五个数字是2、4、6、8和11。例如-
Input : n = 5 Output : 11 Explanation : First 5 numbers with even sum of digits are 2, 4, 6, 8, 11i.e5th number is 11. Input : 12 Output : 24
寻找解决方案的方法
现在,您将了解两种不同的程序来找到给定问题的解决方案。
天真的方法
找到第n个数字的一个简单解决方案是首先从1开始遍历数字并检查每个数字的数字之和是否为偶数;如果是,则将计数器加一,直到计数器的值等于n,最后第n个数字将是答案。
有效的方法
找到第n个数字的有效方法是首先检查具有偶数和的起始数字,然后搜索模式以找到答案。与偶数和的前20个数字是2、4、6、8、11、13、15、17、19、20、22、24、26、28、31、33、35、37、39和40。这前20个数字,我们发现如果n的最后一位数字在0到4之间,那么第n个数字就是2*n,如果第n个数字在5到9之间,那么第n个数字就是(2*n+1)。
示例
#include <bits/stdc++.h> using namespace std; int main () { long long int n = 13; long long int result; //找到n的最后一位 int last_digit = n % 10; //检查最后一位数字是否在0和4之间 if (last_digit >= 0 && last_digit <= 4) result = 2 * n; //检查最后一位数字是否在5到9之间 else result = (2 * n) + 1; cout << "第n个数字和偶数: " << result; return 0; }输出结果
第n个数字和偶数: 26
上面代码的解释
找出最后一位数字并检查它是否在0和4之间;如果是,则将2*n作为答案存储在结果变量中。
否则,检查最后一位数字是否在5和9之间;如果是,则将2*n+1作为答案存储在结果变量中。
使用存储在结果变量中的偶数位数打印第n个数字。
结论
在这篇文章中,我们讨论了找到第n个数字和为偶数的数字,我们可以通过本文中理解的两种方法解决这个问题。我们还编写了一个C++代码来制作一个程序来解决同样的问题。我们可以用C、java、python等其他语言编写此代码。希望本文对您有所帮助。