实验报告-04

实验名称:实验四 递推问题(一)

实验目的:熟练掌握一些递推问题的处理方法:仔细分析,不断尝试推理,充分利用数学知识,找出问题中的内在规律,抽象出递推的数学模型。

实验内容:

  1. 问题描述:(兔子繁殖)已知一对成熟的兔子每月可生一对小兔子。出生的小兔子两个月后成熟,就可再生一对小兔子。问在第n(n≤36)个月的时候共有多少对兔子?

输入:只有一个整数n。

输出:第n个月的兔子对数。

输入样例

4       

输出样例

5       

  1. 问题描述:(捕鱼)A、B、C、D、E共5个人合伙夜间捕鱼,清晨时都疲倦不堪,各自在河边的树丛中睡着了。日上三杆,A第一个醒来,他将鱼平分为5份,把多余的1条扔回河中,拿着自己的一份回家了。B第二个醒来,也将鱼平分为5份,扔掉多余的1条,拿走自己的一份。接着C、D、E依次醒来,也都按此办理。问:5个人至少捕到多少条鱼?
  2. 问题描述:(卖西瓜)市场管理员询问集市上卖西瓜的农民今天上午卖了几个西瓜时,这个农民回答说:我在第1个小时卖出了全部西瓜的1/2又1/2个;第2小时卖出了剩余的1/3又1/3个;在第3个小时卖出了剩余的1/4又1/4个;在第4个小时卖出了剩余的1/5又1/5个;最后正好剩11个西瓜。问:这个农民原来一共有多少个西瓜?
  3. 问题描述:(平面分隔)在平面上画n条封闭的曲线,各曲线之间两两相交于两点,并且任意三条封闭的曲线都不相交于一点,求这样的n条曲线将平面分为多少个区域?

输入:输入包括多组测试数据,每组测试数据占一行并且只有一个正整数n(0≤n≤1000),当n=0时表示输入结束。

输出:对每组测试数据输出一行结果,结果为一个整数,表示这n条曲线将平面划分成的区域数。

输入样例

1

3

0

输出样例

2

8

  1. 问题描述:(走台阶)有n级台阶,某人从下向上走,每次跨1级或2级。问:若他走完n级,可能有多少种不同的走法?

输入:输入包括多组测试数据,每组测试数据占一行并且只有一个正整数n(0≤n≤30),当n=0时表示输入结束。

输出:对每组测试数据输出一行结果(结果为一个整数),表示不同走法的方案数。

输入样例

1

2

5

0

输出样例

1

2

8

实验结果与分析(运行界面截图,打开需要截的图,按ALT+PrintScreen后,将光标移到下面,单击右键后选择“粘贴”):

 1.

(Ⅰ)程序代码及注释

#include <stdio.h>

#include <math.h>

int main(int argc, char *argv[])

{

int i,n,f[36+1];//no use f[0]

scanf("%d",&n);

f[1]=1;f[2]=2;

for(i=3;i<=n;i++)

f[i]=f[i-1]+f[i-2];

printf("%d\n",f[n]);

return 0;

}

(Ⅱ)运行结果窗口截图(窗口适当缩小)和分析

2.

(Ⅰ)程序代码及注释

#include <stdio.h>

int main(int argc, char *argv[])

{

int i,n,f[5],flag=1;

n=1;

while(flag==1)

{

f[0]=5*n+1;

flag=0;

for(i=1;i<5;i++)

{

if(f[i-1]%4!=0)

{

flag=1;

break;

}

f[i]=5*f[i-1]/4+1;

}

n++;

}

printf("%d\n",f[4]);

return 0;

}

(Ⅱ)运行结果窗口截图(窗口适当缩小)和分析

3.

(Ⅰ)程序代码及注释

#include <stdio.h>

int main(int argc, char *argv[])

{

int n,a[5];

a[4]=11;

for(n=4;n<=1;n--)

a[n-1]=(n+1)/n*a[n]+1/n;

printf("%d\n",a[0]);

return 0;

}

(Ⅱ)运行结果窗口截图(窗口适当缩小)和分析

4.

(Ⅰ)程序代码及注释

#include <stdio.h>

int main(int argc, char *argv[])

{

int i,n,f1,f2;

while(1)

{

scanf("%d",&n);

if(n==0)break;

f1=2;

for(i=1;i<=n;i++)

{

f2=f1+2*(i-1);

f1=f2;

}

printf("%d\n",f2);

}

return 0;

}

(Ⅱ)运行结果窗口截图(窗口适当缩小)和分析

5.

(Ⅰ)程序代码及注释

#include <stdio.h>

int main(int argc, char *argv[])

{

int n,i,f1,f2,f3;

while(1)

{

scanf("%d",&n);

if(n==0) break;

f1=1;f2=2;

if(n==1)

{

printf("%d\n",f1);

continue;

}

if(n==2)

{

printf("%d\n",f2);

continue;

}

for(i=3;i<=n;i++)

{

f3=f1+f2;

f1=f2;

f2=f3;

}

printf("%d\n",f3);

}

return 0;

}

(Ⅱ)运行结果窗口截图(窗口适当缩小)和分析

问题及解决方法,心得:(实验中遇到的问题和解决问题的方法)

评定成绩:

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

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

相关文章

【c 语言 】malloc函数详解

&#x1f388;个人主页&#xff1a;豌豆射手^ &#x1f389;欢迎 &#x1f44d;点赞✍评论⭐收藏 &#x1f917;收录专栏&#xff1a;C语言 &#x1f91d;希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出指正&#xff0c;让我们共同学习、交流进步&…

安卓手机APP开发者的第一件事:安装安卓工作台

安卓手机APP开发者的第一件事:安装安卓工作台 安装安卓工作台仅需要一些点击。首先检查软件对系统需求。 然后下载最新版本的安卓工作台。 在windows系统下的安装 需求项 最低配置 推荐配置 操作系统 64位的windows8 最新版本的64位的windows 内存 8GB …

LeetCode 热题 100 题解(一):哈希部分

《LeetCode热题 100》 经过了两个多月&#xff0c;终于刷完了代码随想录的题目&#xff0c;现在准备开始挑战热题一百了&#xff0c;接下来我会将自己的题解以博客的形式同步发到力扣和 c 站&#xff0c;希望在接下来的征程中与大家共勉&#xff01; 题组一&#xff1a;哈希 题…

day22.二叉树part08

day22.二叉树part08 235.二叉搜索树的最近公共祖先 原题链接 代码随想录链接 思路&#xff1a;因为本题是二叉搜索树&#xff0c;利用它的特性可以从上往下进行递归遍历树&#xff0c;这里需要理解一点就是如果遍历到的一个节点发现该节点的值正好位于节点p和节点q的值中间…

Git实现提交代码自动更新package.json版本号

此文章主要讲诉如何通过git提交代码来自动更新我们的版本号&#xff0c;也可以指定固定分支才能更新 只要涉及到package version的项目都可以&#xff0c;例如&#xff1a;Vue、React、Node等等 前提是当前项目已经关联了Git仓库 一、编写我们的Node更新版本逻辑&#xff0c;名…

Debezium日常分享系列之:Debezium 2.6.0.CR1发布

Debezium日常分享系列之&#xff1a;Debezium 2.6.0.CR1发布 一、重大改变1.MySQL2.SQL Server3.Vitess 二、新功能和改进1.OpenLogReplicator 的 XML 支持2.Debezium 服务器的 TRACE 级别日志记录3.新的统一快照模式4.Cassandra 可配置分区模式 Debezium 2.6.0.CR1版本包含许多…

QSplashScreen

以前打红警的时候进入游戏界面会有一个启动界面&#xff0c;比如美国是有伞兵&#xff0c;英国有狙击手&#xff0c;韩国有黑鹰战机的一些介绍&#xff0c;这些就是启动界面&#xff0c;就是由QSplashScreen这个类来实现的。 QSplashScreen 是 Qt 框架中的一个类&#xff0c;用…

jsp用户登录界面

主界面 <% page contentType"text/html;charsetUTF-8" language"java" %> <html> <head><meta charset"UTF-8"><title>登录界面</title> </head> <body bgcolor"#faebd7"> <form…

HarmonyOS实战开发-UIAbility和自定义组件生命周期

介绍 本文档主要描述了应用运行过程中UIAbility和自定义组件的生命周期。对于UIAbility&#xff0c;描述了Create、Foreground、Background、Destroy四种生命周期。对于页面和自定义组件描述了aboutToAppear、onPageShow、onPageHide、onBackPress、aboutToDisappear五种生命周…

公司防泄密软件有哪些?|六款值得老板收藏的公司防泄密软件

文件数据是企业极为重要的知识产权&#xff0c;关系到企业的核心竞争力&#xff0c;对企业的发展至关重要&#xff0c;甚至直接影响到企业的生存和发展。 企业泄密事件也是屡屡发生&#xff0c;如何保护企业核心机密文件的安全已成为影响企业快速发展的重要因素。 针对企业数据…

1.Netty介绍及NIO三大组件

Netty网络编程Netty的底层是NIO&#xff08;非阻塞IO&#xff09;&#xff0c;常用的多线程和线程池使用的是阻塞IO&#xff0c;其效率并不高。支持高并发&#xff0c;性能好高性能的服务端程序、客户端程序 NIO三大组件 一、Channel 读写数据的双向传输通道 常见的传输通道…

【干货分享】OpenHarmony轻量系统适配方案

1. 简介 本文在不改变原有系统基础框架的基础上&#xff0c; 介绍了一种OpenAtom OpenHarmony&#xff08;以下简称“OpenHarmony”&#xff09;轻量系统适配方案。 本方案使用的是 OpenHarmony v3.2 Release版本源码。 2. 方案设计 本文使用的硬件模块的主要特性及功能如…

fast_bev学习笔记

目录 一. 简述二. 输入输出三. github资源四. 复现推理过程4.1 cuda tensorrt 版 一. 简述 原文:Fast-BEV: A Fast and Strong Bird’s-Eye View Perception Baseline FAST BEV是一种高性能、快速推理和部署友好的解决方案&#xff0c;专为自动驾驶车载芯片设计。该框架主要包…

day 41 动归 04

01背包问题 二维 dp[i][j] 表示在物品i时&#xff0c;背包在j容量下的最大价值&#xff0c;递推公式为 dp[i][j] Math.max(dp[i-1][j] , dp[i-1][j-weight[i]] value[i]); 第一个时不放物品i&#xff0c;其价值等于在物品i-1时背包在j容量下的最大价值&#xff0c;第二个是放…

Oracle里的优化器

目录 一、RBO 二、CBO 1、集的势&#xff08;cardinality&#xff09; 2、可选择率&#xff08;Selectivity&#xff09; 3、可传递性 4、CBO的局限性 三、优化器基础知识 1、优化器的模式 2、结果集&#xff08;row source&#xff09; 3、访问数据的方法 优化器&am…

tab切换组件,可横向自适应滑动

示例图&#xff1a; 注&#xff1a;需要引入Jquery <!DOCTYPE html> <html><head><meta charset"utf-8"><title></title><style>.tabs-box {width: 100%;height: auto;}.tab-header-box {display: flex;overflow: hidden…

2024年的抖音电商,将很难出现超级爆品,选品思路要及时改变

我是王路飞。 2024年以前的抖音电商市场&#xff0c;如果用一句话来形容的话&#xff0c;就是“风浪越大鱼越贵”。 但是从今年过完年之后&#xff0c;细心的商家可能发现了&#xff0c;以前的套路好像不管用了。 现在的市场利益分配方式变了&#xff01; 2024年的抖音电商…

Python程序怎么打包成exe文件

前言 pyinstaller可以将.py文件打包成.exe可执行文件&#xff0c;即使别人的电脑上没有搭建Python环境&#xff0c;也是可以直接运行程序的。 pyinstaller安装 首先打开cmd&#xff0c;在里面输入下面这一行命令&#xff0c;回车即可。 pip install pyinstaller 我运行命令…

【详细讲解Android Debug Bridge各种命令及用法的文章】

&#x1f525;博主&#xff1a;程序员不想YY啊&#x1f525; &#x1f4ab;CSDN优质创作者&#xff0c;CSDN实力新星&#xff0c;CSDN博客专家&#x1f4ab; &#x1f917;点赞&#x1f388;收藏⭐再看&#x1f4ab;养成习惯 &#x1f308;希望本文对您有所裨益&#xff0c;如有…

设计模式 —— 设计原则

在软件开发中&#xff0c;为了提高软件系统的可维护性和可复用性&#xff0c;增加软件的可扩展性和灵活性&#xff0c;程序员要尽量根据6条原则来开发程序&#xff0c;从而提高软件开发效率、节约软件开发成本和维护成本。 开闭原则 对扩展开放&#xff0c;对修改关闭。在程序需…