java一个人赶着鸭子去每个村庄卖,每经过一个村子卖去所赶鸭子的一半又一只。这样他经过了七个村子后还剩两只鸭子,问他出发时共赶多少只鸭子?经过每个村子卖出多少只鸭子?
这题用到了递归的思想,根据题目中鸭子数量每天减去一半又一只,可以得到数量关系:每次交易之前鸭子的总数为交易之后的数目加一乘以二;写一个函数表示当天交易前的数量,参数为天数.
递归需要条件限制,所以第八天没有交易或者说是交易前,剩两只.
七天以内该函数自己调用自己.
我迷惑的地方是函数自己调用自己就很神奇,我怀疑是有了if条件限制的结果,才能让将计算机能够调用自身函数,有篇文章说把数量关系找好,剩下的交给计算机大概就是这个意思吧.
public static int count(int n){//n表示第几个村子int sum=2;//鸭子总数剩两只if(n==8){return 2;//第八天没有交易之前还剩两只鸭子}else{sum=(count(n+1)+1)*2;//八天之前每天的交易前的鸭子总数为交易后所剩的数目加一乘以二}return sum;} public static void main(String []args){for (int i=1;i<8;i++){System.out.println("第"+i+"天的村子交易前有"+count(i)+"只鸭子,当天村子卖出"+(count(i)/2+1)+"只.");}}
java一个人赶着鸭子去每个村庄卖,每经过一个村子卖去所赶鸭子的一半又一只。这样他经过了七个村子后还剩两只鸭子,问他出发时共赶多少只鸭子?经过每个村子卖出多少只鸭子?相关推荐
- 18.一个人赶着鸭子去每个村庄卖,每经过一个村子卖去所赶鸭子的一半又一只。这样他经过了七个村子后还剩两只鸭子,问他出发时共赶多少只鸭子?经过每个村子卖出多少只鸭子?
18.一个人赶着鸭子去每个村庄卖,每经过一个村子卖去所赶鸭子的一半又一只.这样他经过了七个村子后还剩两只鸭子,问他出发时共赶多少只鸭子?经过每个村子卖出多少只鸭子? #include <stdi ...
- 一个人赶着鸭子去每个村庄卖,每经过一个 村子卖去所赶鸭子的一半又//一只。 这样他经过了 七个村子后还剩 两只鸭子,问问他出发时共赶多少//只鸭子?经过每个村子卖出多少只鸭子?
.一个人赶着鸭子去每个村庄卖,每经过一个 村子卖去所赶鸭子的一半又 //一只. 这样他经过了 七个村子后还剩 两只鸭子,问问他出发时共赶多少 //只鸭子?经过每个村子卖出多少只鸭子?int i,j=2 ...
- 一个人赶着鸭子去每个村庄卖,每经过一个 村子卖去所赶鸭子的一半又一只。 这样他经过了 七个村子后还剩 两只鸭子,问问他出发时共赶多少只鸭子?经过每个村子卖出多少只鸭子?
代码如下: #include <stdio.h>int main(int argc, const char *argv[]) {int sum = 2;int i = 0;int j = ...
- 2、一个人赶着鸭子去每个村庄卖,每经过一个 村子卖去所赶鸭子的一半又一只。 这样他经过了 七个村子后还剩 两只鸭子,问问他出发时共赶多少只鸭子?经过每个村子卖出多少只鸭子?
程序代码: #include <stdio.h> int main(int argc, const char *argv[]) { int i = 0; int j = 0 ...
- 一个人赶着鸭子去每个村庄卖,每经过一个 村子卖去所赶鸭子的一半又一只。 这样他经过了 七个村子后还剩 两只鸭子,问问他出发时共赶多少只鸭子?经过每个村子卖出多少只鸭子?(递归实现)
#include <stdio.h> int duck(int d); int main(int argc, const char *argv[]) { int k; pr ...
- 一个人赶着鸭子去每个村庄卖,每经过一个村子卖去所赶鸭子的一半又一只。这样他经过了七个村子后还剩两只鸭子,问他出发时共赶多少只鸭子?经过每个村子卖出多少只鸭子?
#include <stdio.h>int main() { int f(int n);f(1);return 0; }int f(int n){int sub;if(n==7){sub= ...
- 个人赶着鸭子去每个村庄卖,每经过一个 村子卖去所赶鸭子的一半又一只,这样他经过了七个村子后还剩两只鸭子,问问他出发时共赶多少只鸭子?经过每个村子卖出多少只鸭子?
#include <stdio.h>int fun(int num_yazi,int num_vil) {if(num_vil==1){printf("第%d个村子卖了%d只鸭子 ...
- 递归实现斐波那契数列 一个人赶着鸭子去每个村庄卖,每经过一个 村子卖去所赶鸭子的一半又一只。 这样他经过了 七个村子后还剩 两只鸭子,问问他出发时共赶多少只鸭子?经过每个村子卖出多少只鸭子?
1.代码实现 #include<stdio.h>//斐波那契递归函数 int fbnq(int n){if(n==1||n==2){return 1;}else{return fbnq(n ...
- 递归实现:一个人赶着鸭子去每个村庄卖,每经过一个 村子卖去所赶鸭子的一半又一只。 这样他经过了 七个村子后还剩 两只鸭子,问问他出发时共赶多少只鸭子?经过每个村子卖出多少只鸭子?
程序: 运行效果:
最新文章
- WordPress页面Page和文章Post的相互转换
- Codechef July Challenge 2018 : Subway Ride
- 需求分析中应该注意的问题
- Qt中使用OpenGL进行绘图
- python保存模型_MNIST数据集训练完如何保存成模型文件?
- Strongly connected HDU - 4635(tarjan+强连通分量)
- 2021总结、2022展望
- MYSQL中什么是规范化_数据库设计 - 什么是规范化(或规范化)?
- SnagIt的Visual Studio Team System插件
- 装个discuz论坛
- 微软纸牌服务器慢,微软为何设计纸牌和扫雷?真是用心良苦
- vld在MFC 中内存泄漏检测
- 软件生成问候图片_设计师注意啦!欧美风双色图片一键生成的软件来啦!
- python 生成word,插入图片如何居中显示
- C2872	“detail”: 不明确的符号
- 天猫小黑盒从发布新品到影响供应链
- hackintosh技巧
- 感谢孙权、欢迎行癫,阿里云在路上!
- 一口气从零读懂CAN总线以及应用
- 淘宝标题可以改吗 淘宝标题优化技巧方法有哪些
热门文章
- 小米上市,那些年错过了的可以暴富的工作机会
- 18070 矩阵行交换或列交换
- mysql数据库安全性_Mysql数据库的安全性问题释疑
- 成都双流区链家网租房python数据可视化
- 叽叽歪歪乱七八糟的标签——web(一)
- Policy invariance under reward transformations- Theory and application to reward shaping基于势能的塑形奖励函数
- 深度ritz方法求解高维泊松方程
- Excel中计算时间差
- ajax java web_在java Web中如何用Ajax实现用户名已存在
- 第一次接触炒外汇如何快速上手?