c++ 判断奇数偶数实例介绍

2016-02-19 11:54 49 1 收藏

下面,图老师小编带您去了解一下c++ 判断奇数偶数实例介绍,生活就是不断的发现新事物,get新技能~

【 tulaoshi.com - 编程语言 】

到目前为止,看到的递归函数都是直接调用自己。虽然大多数的递归函数都符合这一形式,但其实递归的定义更为广泛,如果某个函数被细分成了几个子函数,那么可以在更深的嵌套层次上应用递归调用。例如:如果函数 f 调用函数 g ,而函数 g 反过来又调用函数 f ,这些函数的调用仍然被看作是递归。这种类型的递归被成为交互递归
下面通过判断一个数是偶数还是奇数来展示交互递归的应用,并且此题突出了递归跳跃的信任的重要性首先,先看奇数和偶数的描述:
如果一个数的前一个数是奇数,那么该数是偶数
一个树不是偶数就是奇数
定义0是偶数
递归跳跃的信任
从代码可以看出,代码的实现是完全基于上面奇数和偶数的描述的三点。初看,这是多么的不可思议。如果想要探索其底层是如何实现的,也只需用一个较少的数字代入,跟踪调用验证就OK
如单纯地从表面看,单凭 “定义0是偶数” 这个简单情景真的没法看出这递归竟然能正确工作。所以,对于没法一下子就能看出的这种情况,我们需要的就是递归跳跃的信任,只要我们递归分解正确和简单情景分析正确,实现细节就不必去担心,交给计算机。也因此,只要掌握了递归的思维,解决一个问题是多么简单和快捷,多么令人震惊
代码如下:

#include iostream
using namespace std;
bool isodd(unsigned);
bool isodd(unsigned n)
{
return !(iseven(n));
}
bool iseven(unsigned n)
{
if (n == 0)
{
return true;
}
else
{
return isodd(n-1);
}
}
int main()
{
cout isodd(11) endl;
return 0;

来源:https://www.tulaoshi.com/n/20160219/1599074.html

延伸阅读
我们从一开始就一直在利用C++的输入输出在做着各种练习,输入输出是由iostream库提供的,所以讨论此标准库是有必要的,它与C语言的stdio库不同,它从一开始就是用多重继续与虚拟继续实现的面向对象的层次结构,作为一个c++的标准库组件提供给程序员使用。 !-- frame contents -- !-- /frame contents -- iostream为内置类型类...
  在c/c++中利用数组名作为函数参数传递排序和用指针进行排序的例子。 以下两个例子要非常注重,函数传递的不是数组中数组元素的真实值而是数组在内存中的实际地址。 !-- frame contents -- !-- /frame contents -- #include stdio.h    void main(void)  {  ...
标签: Web开发
有两个变量 a 和 b  如果a=1,3,5,7,9 则b="奇数" 如果a=2,4,6,8  则b="偶数" 如果a="0" 则b="零" [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]
一、ADO简介 ADO(ActiveX Data Object)是Microsoft数据库应用程序开发的新接口,是建立在OLE DB之上的高层数据库访问技术,不仅简单易用,并且不失灵活性.不失为C++利用数据库快速开发的不错选择。 理论就不用我在这儿费话了,网上有很多,但光是理论,也不是不够的,ADO访问数据的方法很灵活,轻易让人混淆.网上大部分的实例都是基...
一位网友正在学校做课程设计题目,要求在一个文件中找到给定单词出现的位置并统计出现次数。这是一个比较简单的文本处理问题, 于是, 我给他用 python 写了一个,并打赌在5分钟内用不到30行程序解决问题。 下面是程序: if __name__=='__main__': file_name = raw_input('Input the file you want to find in:') ...

经验教程

889

收藏

46
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部