该函数获取一个整数和一个数字,并应返回true 如果数字在整数中出现偶数次,或者如果不出现则为假。
例如:
如果digit=1
和num=1125
该函数应返回true
。
如果digit=1
和num=1234
该函数应返回false
。
bool isEven(int num, int dig)
{
bool even;
if (num < 10)
even = false;
else
{
even = isEven(num/10,dig);
这是我到目前为止所得到的,我被困住了...... 这是作业,所以请不要写下答案,但要提示我并帮我自己解决。
答案 0 :(得分:1)
要设置递归,您需要弄清楚两件事:
我可以从您的代码中看到,您已经在这两点上取得了一些进展。但是,两者都不完整。首先,您永远不会在代码中使用目标数字。
答案 1 :(得分:1)
表达式num%10将为您提供数字的最后一位数,这应该会有所帮助。
你的基本情况不正确,因为一个数字可以有偶数匹配(零是偶数)。您的递归案例也需要工作,因为您需要反转每场比赛的答案。