【发布时间】:2020-09-07 18:32:12
【问题描述】:
背景故事(对问题不重要):我的一门课上有一个问题,在过去的一周里我无法解决它,我就是这么坚持并试图为它找到一个好的解决方案,也许这只是我有限的想法,或者是对整个递归想法的新手,或者是学习我们正在使用的编程语言(C 语言)的新手。
问题:所以我们的任务是为给定的整数 num 构建一个“函数”(我不知道正确的词):
- 如果数字在偶数索引中,则该位置的数字必须是偶数。
- 如果数字在奇数索引中,则该位置的数字必须是奇数。
- 索引从 0 开始。
- 您只能使用 1 个参数 (num)
- 条件满足则返回1,否则返回0(C语言)
例如: 数字 343,418 将是一个有效数字,因为奇数索引中的每个数字都是奇数,偶数索引中的每个数字都是偶数。(the example + indexes)
数字 343,518 将是一个无效数字,因为在第二个索引上有一个数字 5,偶数索引奇数。 (the example + indexes)
任何解决方案或解决方法的提示将不胜感激,因为我试图解决这个问题一段时间。
【问题讨论】:
-
所以你想检查
digit % 2 == index % 2。你试过什么?见How do I ask a good question? 和How to create a Minimal, Reproducible Example。 -
这正是我要检查的内容,很抱歉我没有这样指定。我确实尝试过遍历整个数字,总是将左边的数字删除 /= 10;问题是我总是丢失索引,并且我尝试过的各种方式都发现需要索引参数,尽管我只允许使用 num 参数。
-
你对
num < 0有什么期望? -
递归在哪里?