当前位置: 首页 > news >正文

牛客网刷题 | BC85 牛牛学数列3

目前主要分为三个专栏,后续还会添加:

        专栏如下:                 C语言刷题解析       C语言系列文章       我的成长经历

感谢阅读!

初来乍到,如有错误请指出,感谢!


描述

牛牛准备继续进阶,计算更难的数列

输入一个整数n,计算 1+1/(1-3)+1/(1-3+5)+...+1/(1-3+5-...((-1)^(n-1))*(2n-1))的值

输入描述:

输入一个整数

输出描述:

输出一个浮点数,保留3位小数


题目解析 :

数列的公式是:

1+1/(1-3)+1/(1-3+5)+...+1/(1-3+5-...((-1)^(n-1))*(2n-1))

这个数列的每一项可以看作是一个分数,分子是1,分母是一个由奇数构成的序列,奇数的符号取决于项的位置是奇数还是偶数。具体来说:

  • 当项的位置是奇数时,分母是正的奇数。
  • 当项的位置是偶数时,分母是负的奇数。

因此,第k项可以表示为:


代码 1  : 

别被难住了,分母看上去很长的样子,但如果我们仔细看,就会发现是 1-1/2+1/3这样,既然如此那代码就很简单了。

#include<stdio.h>
#include<math.h>
int main()
{int i = 0;double sum = 0;double q = 2.0;scanf("%d",&i);for(double j = 1;j<=i;j++){if(fmod(j, q) !=0){sum += (1/j);}elsesum -= (1/j);}printf("%.3lf\n",sum);return 0;
}

代码 2 :

//仔细观察不难发现分母其实是有规律的,我们不妨设一个变量来表示不断变化的分母
#include<stdio.h>
int main()
{int n,denominator=0,i;float sum=0;scanf("%d",&n);for (i=1;i<=n;i++){i%2==0?(denominator-=2*i-1):(denominator+=2*i-1);sum+=1.0/denominator;}printf("%.3f\n",sum);return 0;
}

代码 3 :

#include <stdio.h>// 函数用于计算数列的第k项
double sequence_term(int k) {// 根据k的奇偶性,交替使用正负号double sign = (k % 2 == 0) ? 1 : -1;// 计算第k项的分母,即(2k-1)double denominator = sign * (2 * k - 1);// 返回第k项的值,分子是1return 1.0 / denominator;
}// 函数用于计算数列的和
double calculate_sequence_sum(int n) {double sum = 0.0; // 用于累加数列的和for (int k = 1; k <= n; ++k) {// 计算第k项,并累加到总和中sum += sequence_term(k);}return sum;
}int main() {int n;// 读取用户输入的整数nprintf("请输入一个整数n:");scanf("%d", &n);// 计算数列的和double sum = calculate_sequence_sum(n);// 输出结果,保留三位小数printf("数列的和为:%.3f\n", sum);return 0; // 程序结束
}

代码 4 :

#include<stdio.h> // 引入标准输入输出库
#include<math.h>  // 引入数学库,这里实际上不需要math.hint main() {int i = 0; // 声明一个整型变量i,用于存储项数double sum = 0; // 声明一个双精度浮点数变量sum,用于累加数列的和double q = 2.0; // 声明一个双精度浮点数变量q,实际上这里q的值应该是2,不需要是浮点数scanf("%d", &i); // 从标准输入读取一个整数,存储在变量i中for(double j = 1; j <= i; j++) { // 开始一个for循环,从1迭代到i// 修正逻辑:直接检查j是否为奇数,而不是使用fmodif((int)j % 2 != 0) { // 如果j是奇数sum += 1 / j; // 累加正项} else { // 如果j是偶数sum -= 1 / j; // 累加负项}}printf("%.3lf\n", sum); // 打印结果,保留三位小数return 0; // 程序执行成功,返回0
}

知识点:pow函数

详见这篇文章

牛客网刷题 | BC83 牛牛学数列-CSDN博客

数列和序列:理解数列的概念,即一系列按照一定规律排列的数。

数学公式解析:解析给定的数学公式,并理解其数学意义。

条件表达式:使用条件表达式来确定数列中各项的符号,这涉及到奇偶性判断。

循环结构:使用循环结构来遍历数列的每一项,计算其值。

函数调用:在C语言中,使用 pow 函数来计算幂运算。

类型转换:在C语言中,进行类型转换以确保数学表达式中运算的准确性,例如,确保在进行除法运算时,至少有一个操作数是 double 类型。

输入输出操作:使用 scanf 进行输入操作,使用 printf 进行输出操作。

浮点数精度:处理浮点数时,理解精度问题,以及如何使用 %.3f 格式化输出来保留三位小数。

算法逻辑:设计算法来计算数列的和,这需要对数列的规律有清晰的认识。

代码结构:理解C语言的基本结构,包括函数定义、循环、条件语句等。

数学规律:识别并利用数学规律简化计算过程,例如,通过观察可以发现数列的符号交替出现,分母是递增的奇数。

  

相关文章:

牛客网刷题 | BC85 牛牛学数列3

目前主要分为三个专栏&#xff0c;后续还会添加&#xff1a; 专栏如下&#xff1a; C语言刷题解析 C语言系列文章 我的成长经历 感谢阅读&#xff01; 初来乍到&#xff0c;如有错误请指出&#xff0c;感谢&#xff01; 描述 牛牛准备继续进阶&…...

quartz定时任务

Quartz 数据结构 quartz采用完全二叉树&#xff1a;除了最后一层每一层节点都是满的&#xff0c;而且最后一层靠左排列。 二叉树节点个数规则&#xff1a;每层从左开始&#xff0c;第一层只有一个&#xff0c;就是2的0次幂&#xff0c;第二层两个就是2的1次幂&#xff0c;第三…...

Python基础学习笔记(五)——选择结构与循环结构

目录 程序的组织结构条件选择结构1. 单分支结构2. 双分支结构3. 多分支结构4. 嵌套&#xff08;分支&#xff09;结构5. 无内容执行6. 条件表达式 循环结构1. 可迭代对象2. range()函数3. for循环语句4. while循环语句5. 结束语句 程序的组织结构 程序的组织结构主要有以下三种…...

Vue插槽solt如何传递具名插槽的数据给子组件?

在Vue中&#xff0c;你可以通过作用域插槽&#xff08;scoped slots&#xff09;来传递数据给子组件。这同样适用于具名插槽。首先&#xff0c;你需要在子组件中定义一个具名插槽&#xff0c;并通过v-slot指令传递数据。例如&#xff1a; 子组件&#xff08;ChildComponent.vu…...

小程序-收货地址管理模块实现

页面结构代码&#xff1a; address-form.vue --->新建地址和修改地址页面 <template><view class"content"><form><!-- 表单内容 --><view class"form-item"><text class"label">收货人</text>…...

【星海随笔】微信小程序(三)

网络数据请求 1.小程序中网络数据请求的限制 出于安全性方面的考虑,小程序官方对 数据接口的请求 做出了如下 两个限制: ① 只能请求 HTTPS 类型的接口 ② 必须将 接口的域名 添加到 信任列表 中 微信小程序只能请求 https 类型的接口 且需要请求的域名必须提前进行设置后,才可…...

pip(包管理器) for Python

pip是什么 pip是Python的包安装程序&#xff0c;即python包管理器。您可以使用 pip 从Python包索引和其他索引安装包。 1. pip 安装 python 包 pip install 包名 例如&#xff1a;pip install pymssql &#xff1a; 使用pip安装数据库驱动包 pymssql 2.pip 卸载 python 包 pi…...

Ubuntu上安装Maven

在Ubuntu上安装Maven的步骤如下&#xff1a; 更新包索引&#xff1a; sudo apt update 安装Maven&#xff1a; sudo apt install maven 验证安装是否成功&#xff1a; mvn -version 以上步骤将会安装Maven并添加到系统路径中&#xff0c;你可以通过运行mvn -version来验…...

java中使用svnkit实现文件的版本管理

java中使用svnkit实现文件的版本管理 一、引入svnKit依赖二、初始化仓库工厂类二、使用svnkit创建本地存储仓库三、svn基本原子操作四、通过原子方法实现简单svn相应操作 一、引入svnKit依赖 <dependency><groupId>org.tmatesoft.svnkit</groupId><artifa…...

了解 Linux 网络卡绑定:提高网络性能与冗余性

在现代 IT 基础设施中&#xff0c;网络性能和可靠性至关重要。对于许多企业和个人用户来说&#xff0c;确保网络的高可用性和冗余性是首要任务之一。Linux 提供了一个强大的解决方案——网络卡绑定&#xff08;Network Interface Card Bonding&#xff0c;简称 NIC Bonding&…...

2024年618购物狂欢节即将来袭!精选五款超值入手数码好物!

618购物狂欢盛宴即将落幕&#xff0c;是时候展现我们的购物智慧了&#xff01;在追求价格优惠的同时&#xff0c;我们更应看重商品的品质与实用性。面对琳琅满目的选择&#xff0c;如何筛选出真正值得拥有的好物呢&#xff1f;为了让大家的购物之旅更加轻松愉快&#xff0c;以下…...

中国AI独角兽资本大冒险

成立不过一年多时间&#xff0c;月之暗面已然成为中国大模型赛道上&#xff0c;最炙手可热的明星公司。 5月21日&#xff0c;华尔街见闻获悉&#xff0c;月之暗面将按照投前估值30亿美元&#xff08;合217.3亿人民币&#xff09;进行融资&#xff0c;完成后依然会是当前中国估…...

项目十二:简单的python基础爬虫训练

许久未见&#xff0c;甚是想念&#xff0c;今日好运&#xff0c;为你带好运。ok&#xff0c;废话不多说&#xff0c;希望这门案例能带你直接快速了解并运用。&#x1f381;&#x1f496; 基础流程 第一步&#xff1a;安装需要用到的requests库&#xff0c;命令如下 pip inst…...

OpenGL学习入门及开发环境搭建

最近学习OpenGL开发&#xff0c;被各种openGL库搞得晕头转向&#xff0c;什么glut, glew glfw glad等等。 可以参考这边博客:OpenGL 下面的 glut freeglut glfw 都是个啥_glx wgl的中文-CSDN博客 glfw是glut的升级版&#xff0c;跨平台的主要处理窗口 事件相关。 glad是glew…...

three.js能实现啥效果?看过来,这里都是它的菜(08)

在Three.js中实现旋转动画的原理是通过修改对象的旋转属性来实现的&#xff0c;通常使用渲染循环&#xff08;render loop&#xff09;来更新对象的旋转状态&#xff0c;从而实现动画效果。 具体的原理包括以下几个步骤&#xff1a; 创建对象&#xff1a;首先创建一个需要旋转…...

SpringBoot(九)之整合mybatis

SpringBoot&#xff08;九&#xff09;之整合mybatis 文章目录 SpringBoot&#xff08;九&#xff09;之整合mybatisSpring整合mybatis回顾1. 引入依赖2. mybatis-config.xml SpringBoot整合mybatis1.引入依赖2. 配置数据源和 MyBatis 属性3. 配置 Mapper 接口4. 配置mapper.xm…...

【实战教程】使用Spring AOP和自定义注解监控接口调用

一、背景 随着项目的长期运行和迭代&#xff0c;积累的功能日益繁多&#xff0c;但并非所有功能都能得到用户的频繁使用或实际上根本无人问津。 为了提高系统性能和代码质量&#xff0c;我们往往需要对那些不常用的功能进行下线处理。 那么&#xff0c;该下线哪些功能呢&…...

算法学习之:Raft-分布式一致性/共识算法

基础介绍 Raft是什么&#xff1f; Raft is a consensus algorithm that is designed to be easy to understand. Its equivalent to Paxos in fault-tolerance and performance. The difference is that its decomposed into relatively independent subproblems, and it clea…...

彩色进度条(C语言版本)

.h文件 #include<stdio.h> #include<windows.h>#define NUM 101 #define LOAD_UP 50 #define LOAD_DOWN 60 #define SLEEP_SLOW 300 #define SLEEP_FAST 70 版本1&#xff1a;&#xff08;初始版&#xff09; //v1 #include "progress.h" int main() …...

C#和C++有什么区别?

C#和C都是广泛使用的编程语言&#xff0c;但它们在设计理念、应用场景和语法上有许多显著的区别。以下是一些关键区别的详细介绍&#xff1a; 1. 设计理念和目的 C&#xff1a; 设计目的&#xff1a;C是一种面向系统编程和应用程序开发的语言&#xff0c;具有高效性和灵活性…...

微软PowerBI考试 PL300-选择 Power BI 模型框架【附练习数据】

微软PowerBI考试 PL300-选择 Power BI 模型框架 20 多年来&#xff0c;Microsoft 持续对企业商业智能 (BI) 进行大量投资。 Azure Analysis Services (AAS) 和 SQL Server Analysis Services (SSAS) 基于无数企业使用的成熟的 BI 数据建模技术。 同样的技术也是 Power BI 数据…...

【项目实战】通过多模态+LangGraph实现PPT生成助手

PPT自动生成系统 基于LangGraph的PPT自动生成系统&#xff0c;可以将Markdown文档自动转换为PPT演示文稿。 功能特点 Markdown解析&#xff1a;自动解析Markdown文档结构PPT模板分析&#xff1a;分析PPT模板的布局和风格智能布局决策&#xff1a;匹配内容与合适的PPT布局自动…...

在Ubuntu中设置开机自动运行(sudo)指令的指南

在Ubuntu系统中&#xff0c;有时需要在系统启动时自动执行某些命令&#xff0c;特别是需要 sudo权限的指令。为了实现这一功能&#xff0c;可以使用多种方法&#xff0c;包括编写Systemd服务、配置 rc.local文件或使用 cron任务计划。本文将详细介绍这些方法&#xff0c;并提供…...

SpringCloudGateway 自定义局部过滤器

场景&#xff1a; 将所有请求转化为同一路径请求&#xff08;方便穿网配置&#xff09;在请求头内标识原来路径&#xff0c;然后在将请求分发给不同服务 AllToOneGatewayFilterFactory import lombok.Getter; import lombok.Setter; import lombok.extern.slf4j.Slf4j; impor…...

全志A40i android7.1 调试信息打印串口由uart0改为uart3

一&#xff0c;概述 1. 目的 将调试信息打印串口由uart0改为uart3。 2. 版本信息 Uboot版本&#xff1a;2014.07&#xff1b; Kernel版本&#xff1a;Linux-3.10&#xff1b; 二&#xff0c;Uboot 1. sys_config.fex改动 使能uart3(TX:PH00 RX:PH01)&#xff0c;并让boo…...

html css js网页制作成品——HTML+CSS榴莲商城网页设计(4页)附源码

目录 一、&#x1f468;‍&#x1f393;网站题目 二、✍️网站描述 三、&#x1f4da;网站介绍 四、&#x1f310;网站效果 五、&#x1fa93; 代码实现 &#x1f9f1;HTML 六、&#x1f947; 如何让学习不再盲目 七、&#x1f381;更多干货 一、&#x1f468;‍&#x1f…...

搭建DNS域名解析服务器(正向解析资源文件)

正向解析资源文件 1&#xff09;准备工作 服务端及客户端都关闭安全软件 [rootlocalhost ~]# systemctl stop firewalld [rootlocalhost ~]# setenforce 0 2&#xff09;服务端安装软件&#xff1a;bind 1.配置yum源 [rootlocalhost ~]# cat /etc/yum.repos.d/base.repo [Base…...

NPOI Excel用OLE对象的形式插入文件附件以及插入图片

static void Main(string[] args) {XlsWithObjData();Console.WriteLine("输出完成"); }static void XlsWithObjData() {// 创建工作簿和单元格,只有HSSFWorkbook,XSSFWorkbook不可以HSSFWorkbook workbook new HSSFWorkbook();HSSFSheet sheet (HSSFSheet)workboo…...

前端开发者常用网站

Can I use网站&#xff1a;一个查询网页技术兼容性的网站 一个查询网页技术兼容性的网站Can I use&#xff1a;Can I use... Support tables for HTML5, CSS3, etc (查询浏览器对HTML5的支持情况) 权威网站&#xff1a;MDN JavaScript权威网站&#xff1a;JavaScript | MDN...

用神经网络读懂你的“心情”:揭秘情绪识别系统背后的AI魔法

用神经网络读懂你的“心情”:揭秘情绪识别系统背后的AI魔法 大家好,我是Echo_Wish。最近刷短视频、看直播,有没有发现,越来越多的应用都开始“懂你”了——它们能感知你的情绪,推荐更合适的内容,甚至帮客服识别用户情绪,提升服务体验。这背后,神经网络在悄悄发力,撑起…...