Console-算法-递归算法示例

ylbtech-Arithmetic:Console-算法-递归算法示例
1.A,案例
-- ========================================================
-- ylb:算法
-- type:递归算法
-- thankyou:sunshine, 谢谢你的默默付出
-- 10:50 2012-04-06
-- ========================================================
1.B,解决方案

1.B.1,阶乘

using System;namespace ConsoleApplication1
{class Program{/// <summary>/// ylb:阶乘/// </summary>/// <param name="args"></param>static void Main(string[] args){//7!=7*6*5*4*3*2*1//n!=n*(n-1)!//结束 1!=1Console.WriteLine("请输入一个大于0的整数");int num = Convert.ToInt32(Console.ReadLine());Console.WriteLine(string.Format("这个整数{0}的阶乘为:{1}", num, fun(num)));}static int fun(int num){if (num == 1){return 1;}else{return num * fun(num - 1);}}}
}

1.B.2,一个经典的递归试题(一列数的规则如下: 1、1、2、3、5、8、13、21、34...... )

using System;namespace ConsoleApplication1
{class Program{static void Main(string[] args){//一列数的规则如下: 1、1、2、3、5、8、13、21、34...... //求第30位数是多少, 用递归算法实现。 Console.WriteLine("请输入一个大于0的整数");int num = 30;Console.WriteLine(string.Format("求第{0}位数是{1}", num, fun(num)));}static int fun(int num){if (num <= 0){return 0;}else if (num <= 2){return 1;}else{return fun(num - 1) + fun(num - 2);}}}
}
1.B.2.2,一个经典的递归试题(一列数的规则如下: 1、1、2、3、5、8、13、21、34...... )(常规方法解决)
using System;namespace ConsoleApplication1
{class Program{static int Fun(int i){int sum=0;int temp=1;int temp2=1;if(i<=0){sum=0;}else if(i<=2){sum=1;}else{for(int j=3;j<=i;j++){sum=temp+temp2;temp=temp2;temp2=sum;}}return sum;}/// <summary>/// ylb:常规方法解决(非递归)/// </summary>/// <param name="args"></param>static void Main(string[] args){Console.WriteLine(Fun(20));}}
}
warn作者:ylbtech
出处:http://ylbtech.cnblogs.com/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

转载于:https://www.cnblogs.com/ylbtech/archive/2013/02/22/2922032.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/295860.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何才能避免聚会尬聊

全世界只有3.14 % 的人关注了爆炸吧知识如何丰富空闲时光&#xff1f;如何在短时间内获取最最专业的文化、艺术&#xff1f;小编给大家推荐几个公众号它们有趣有颜有料长按二维码&#xff0c;选择“识别图中二维码”关注印客美学id&#xff1a;inkbetter△长按二维码“识别”关…

Excel快速改变行列的次序

改变行列次序是在Excel中常常需要进行的操作&#xff0c;多数用户的方法是先剪切要调整的行或列&#xff0c;然后选定目标位置&#xff0c;单击菜单“插入”→“剪切单元格”。事实上&#xff0c;使用键盘来配合的话&#xff0c;改变行列的次序可以更快捷。比如&#xff0c;在图…

.NET6 如期⽽⾄

.NET6大家好&#xff0c;经过多个月的迭代&#xff0c;.NET 6正式版如期和大家见面了&#xff01;你安装好了吗&#xff1f;还是等等党&#xff1f;希望看完这篇文章你会对.NET 6有更多了解。自2014年11月12日宣布开源后&#xff0c;.NET就成为了一个跨平台、面向多场景的技术。…

Wordpress 提速之 Gzip 压缩

今天来聊下 wordpress 提速&#xff0c;其实关于这方面的话题网上其实蛮多的&#xff0c;速度对一个网站来说无疑是非常重要的&#xff0c;对于速度的追求也是无止境的&#xff0c;在这方面的表率无疑就是 shawn 了&#xff0c;看他博客的很多技巧都是针对速度来的……不过话说…

html弹性盒子垂直排列,css3弹性盒子布局

css3弹性盒子布局CSS3 弹性盒( Flexible Box 或 flexbox)&#xff0c;是一种当页面需要适应不同的屏幕大小以及设备类型时确保元素拥有恰当的行为的布局方式。引入弹性盒布局模型的目的是提供一种更加有效的方式来对一个容器中的子元素进行排列、对齐和分配空白空间。display:f…

忍“乳”负重,身材好的女孩子究竟有多不容易?我从科学的角度算出来了……...

全世界只有3.14 % 的人关注了爆炸吧知识大家好&#xff0c;满肚子奇怪知识&#xff0c;用科学眼光看世界的小编又来了。先问大家一个问题&#xff1a;你最喜欢看女孩子的哪里&#xff1f;相信不少人&#xff0c;不论男女都想到了一个地方。不论男女&#xff0c;都希望自己能“大…

getchar()到底怎么用_怎样才能真正发挥肥效,腐植酸水溶肥到底怎么用

施肥是农业生产中的重要环节&#xff0c;不管是大田作物还是花草苗木&#xff0c;水肥充足才能健康生长。而施肥不是看用了多少&#xff0c;而是看转化率&#xff0c;有多少真正被植物所吸收利用。许多化肥看着一大袋一大袋的用&#xff0c;结果都浪费了或者造成徒长一点用处都…

Windows API GetVersionEx()判断系统版本详解

转载自:http://bbs.7boo.com.cn/thread-8093-1-1.htmlAF注:TCHAR cstCSDVersion[128];sprintf(cstCSDVersion,"%s",os.szCSDVersion);//spkWindows API 中有两个函数可以得到系统版本信息&#xff1a;GetVersion和GetVersionEx。 GetVersion这个函数曾经困扰了…

Android之Json转换利器Gson之实例一-简单对象转化和带泛型的List转化

看代码可以最快速学习 实体类 public class Student {private int id;private String name;private Date birthDay;public int getId() {return id;}public void setId(int id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this…

可视化ASP.Net Core Web API健康检查

前言ASP.NET Core提供运行状况检查Middleware和库&#xff0c;以便于报告应用的运行状况。使用方式也很简单。引用Nuget包Microsoft.Extensions.Diagnostics.HealthChecks。然后修改Startup.cs文件:public void ConfigureServices(IServiceCollection services) {...services.A…

利用网站模板创建子网站

1. 打开顶层站点&#xff0c;进入网站内容&#xff0c;最底部&#xff0c;子站点-->新建子网站 2.配置如下&#xff1a; 3. 可能会出现的BUG http://blog.csdn.net/chenxinxian/article/details/12189293 4, 解决方法&#xff1a;安装或卸载用于SharePoint的Reporting Servi…

Firefox 10正式发布

Firefox 10是Firefox的首个长期支持版本&#xff08;Extended Support Release&#xff09;&#xff0c;Firefox 10的支持周期为1年&#xff0c;不会增添新功能&#xff0c;仅会提供安全性更新。经过6个Beta测试&#xff0c;Firefox 10正式版今天终于发布了。 Firefox 10新特性…

计算机PS英语词汇,操作计算机必读(必会)的53个英文单词共享

PC&#xff1a;个人计算机Personal ComputerCPU&#xff1a;中央处理器Central Processing UnitCPU Fan&#xff1a;中央处理器的“散热器”(Fan)MB&#xff1a;主机板MotherBoardRAM&#xff1a;内存Random Access Memory&#xff0c;以PC-代号划分规格&#xff0c;如PC-133&a…

解锁一个新技巧,让你舒服到不想起床

▲ 点击查看每天睡个好觉&#xff0c;真的是一件很爽的事情。怎样才能做到这么爽呢&#xff1f;答案当然是好好挑选我们的床上伴侣——床品四件套啦~在所有的床品中&#xff0c;四件套绝对是刚需&#xff0c;并且至少需要两套以上用来替换。如果有人问你挑选四件套的标准是什么…

面试常见问题_软件实施工程师面试中的常见问题都有哪些呢?

软件实施工程师面试中的常见问题都有哪些呢&#xff1f;首先需要看你自己找什么样的工资&#xff0c;是新手呢还是老手呢&#xff1f;对于软件实施的一些新手来说&#xff0c;那么相对应来说要看重的是人品的一个问题&#xff0c;因为毕竟他们家的是新手&#xff0c;所以对于一…

Android之访问网络,使用HttpURLConnection还是HttpClient?

<span style="font-family: Arial; font-size: 14px; background-color: rgb(255, 255, 255);">大多数的Android应用程序都会使用HTTP协议来发送和接收网络数据,而Android中主要提供了两种方式来进行HTTP操作,HttpURLConnection和HttpClient。这两种方式都支…

iOS6.0以上版本,关于NSDateFormatter的问题

以前写代码&#xff0c;使用到NSDateFormatter&#xff0c;通常没有太留意setDateFormat的格式&#xff0c;如下&#xff1a; NSDateFormatter *formatter [[[NSDateFormatter alloc] init] autorelease]; [formatter setDateStyle:NSDateFormatterMediumStyle]; [formatter s…

用计算机才能奏乐曲,计算机音乐系统和音乐听觉训练

人的音乐才能包括音乐听觉和音乐感觉。良好的音乐感觉总是建立在起码的音乐听觉之上的。因此&#xff0c;提高音乐素质应从音乐听觉的培养开始。接下来小编为您介绍具体的运用计算机来对音乐系统和音乐听觉的训练。人们普遍认为&#xff1a;音高、时值、音强和音色是任何文化背…

nameof() 到底是编译时还是运行时行为?

咨询区 Gigi&#xff1a;在 C#6.0 中&#xff0c;可以用 nameof() 直接获取变量或者类型的名字&#xff0c;请问这是一个 编译时 还是 运行时 行为&#xff1f;回答区 Faris Zacina&#xff1a;可以肯定的说&#xff0c;它是一种 编译时 行为&#xff0c;我举一个例子&#xff…

CSS text-indent 属性

实例 将段落的第一行缩进 50 像素&#xff1a; p{text-indent:50px;} CSS 文本属性 属性描述color设置文本颜色direction设置文本方向。line-height设置行高。letter-spacing设置字符间距。text-align对齐元素中的文本。text-decoration向文本添加修饰。text-indent缩进元素中文…