数列计算I(整理四舍五入)
问题 C: 数列计算I(点击)
时间限制: 1 Sec 内存限制: 128 MB
提交: 496 解决: 250
[提交] [状态] [讨论版] [命题人:admin]
题目描述
有一列数是:4/7, 7/11, 11/18, 18/29, 29/47, 47/76 „„请找出这个数列的规律,编写程序计算并输出这个数列的第 N 项(要求是分数形式),并计算这个数列的前 N 项和(结果四舍五入保留两位小数)。(其中:3≤N≤30)。
输入
只有一行,包含1个符合题目要求的正整数N。
输出
共有两行。
第一行如样例中的一个特定格式的分数表示这个数列的第N项;
第二行仅包含一个数表示这个数列的前N项的和。
样例输入
复制样例数据
6
样例输出
47/76
3.68
思路:
主要是四舍五入问题 当时编译器还有问题 刚才才刚刚发现 明明强制转换了变四舍五入 运行后还是错误的答案 但是提交了就正确
浪费了不少时间。
代码:
#include<stdio.h>
int main()
{
int a[35],i,n;
double sum[35];
a[1]=4,a[2]=7;
for(i=3;i<=31;i++){
a[i]=a[i-1]+a[i-2]; //打表把每个分数的分子保存进数组 其实还可以更简单:将分母保
} //存下来每次都直接计算sum 但是开始没想起来 就在下面多加了个
sum[1]=4.0/7.0; //for循环
for(i=2;i<=30;i++){
sum[i]=sum[i-1]+(a[i]/(a[i+1]*1.0));
}
scanf("%d",&n);
printf("%d/%d\n",a[n],a[n+1]);
printf("%.2lf\n",(int)(sum[n]*100+0.5)/100.0); //四舍五入方法(小数位)
return 0;
}
方法总结:
1.不保留小数的四舍五入:
加头文件:#include<math.h>
int a=round(a1) //a代表转换后的值 a1代表转换前的浮点型数
2.保留一位小数的四舍五入:
a=(int)(a1*10+0.5)/10.0; //a 和a1 的含义同上
3.保留两位小数的四舍五入:
a=(int)(a1*100+0.5)/100.0; //a 和a1 的含义同上
注意:最后所除的一定是浮点型的10.0 和100.0 不然就会错误
其他小数点后位数的转换可以以此类推
测试:
#include<stdio.h>
#include<math.h>
int main()
{
double a1=1.5,a2=1.44,b1=1.44,b2=1.46,c1=1.445,c2=1.444;
int a11=round(a1);
int a12=round(a2);
double b11=(int)(b1*10+0.5)/10.0;
double b12=(int)(b2*10+0.5)/10.0;
double c11=(int)(c1*100+0.5)/100.0;
double c12=(int)(c2*100+0.5)/100.0;
printf("%d %d %.1lf %.1lf %.2lf %.2lf\n",a11,a12,b11,b12,c11,c12);
return 0;
}
结果:
数列计算I(整理四舍五入)的更多相关文章
- 【转载】 C#使用Math.Round方法对计算结果进行四舍五入操作
在C#的数值运算中,有时候需要对计算结果进行四舍五入操作,此时就可使用内置方法Math.Round方法来实现四舍五入操作,Math.Round方法有多个重载函数,支持设置有效位数进行四舍五入,如果没有 ...
- 斐波那契数列计算html代码
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 题目1442:A sequence of numbers(数列计算以及二分求幂运用)
题目链接:http://ac.jobdu.com/problem.php?pid=1442 详解链接:https://github.com/zpfbuaa/JobduInCPlusPlus 参考代码: ...
- JS数字计算精度误差的解决方法
本篇文章主要是对javascript避免数字计算精度误差的方法进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助. 如果我问你 0.1 + 0.2 等于几?你可能会送我一个白眼,0.1 + 0. ...
- double四舍五入,商品金额大小写转换,设置货币的小数位数跟格式输出,进制转化
1:计算double值四舍五入的方法 对小数数值进行四舍五入,首先应该确认保留小数位, 如果数值的小数精度大于保留小数位,那么开始四舍五入计算.四舍五入的方法非常简单,在所有要丢失精度的小数位中加 ...
- 不要在精确计算中使用float和double类型
http://blog.csdn.net/androiddevelop/article/details/8478879 一 问题描述 float和double类型不能用于精确计算,其主要目的是为了科 ...
- 保留n位四舍五入小数
一:可选择保留位数,注释很解释的很详细,上图 二:全部代码 using System; using System.Collections.Generic; using System.Component ...
- 关于C/C++的四舍五入方向
今天在刷题过程中发现了一个特别奇怪的现象,printf() 的精度控制不是按照4舍5入,而是按照5舍6入, 例如: printf("%.2f\n",0.145) printf(&q ...
- python numpy 科学计算通用函数汇总
import numpy as np #一元函数 #绝对值计算 a = -1b = abs(a)print(b)输出: 1 #开平方计算 a = 4b = np.sqrt(a)print(b)输出: ...
随机推荐
- python—day03_函数
1,参数 普通参数 # ######### 定义函数 ######### # name 叫做函数func的形式参数,简称:形参 def func(name): print(name) # ###### ...
- BZOJ1078 斜堆
http://hzwer.com/5790.html 代码 http://www.cppblog.com/MatoNo1/archive/2013/03/03/192131.html //原理讲解 ...
- 一文读懂Java注解
什么是注解 Java官方文档上说,注解是元数据的一种形式,它提供不属于程序一部分的数据,注解对被注解的代码没有直接的影响. 准确上说,注解只不过是一种特殊的注释而已,如果没有解析它的代码,它可能连注释 ...
- tomcat启动失败怎么回事?
1.系统环境没有配置好 2.web.xml文件里有错误拼写
- 自己写的vue底导航
<template> <div id="app"> <div class="tabbar"> <div class=& ...
- Vue中计算属性(computed)和监听属性函数watch的比较
1.计算属性适用的情形我们可能会有这样的需求,一个数据属性在它所依赖的属性发生变化时,也要发生变化,这种情况下,我们最好使用计算属性.例如在下面这个例子中,如果我们使用监听函数,代码就会变得有点冗余. ...
- 前端开发Chrome调试工具
Chrome浏览器提供了一个非常好用的调试工具,可以用来调试我们的HTML结构和CSS样式. 1.的打开调试工具 打开Chrome浏览器,按下F12键或点击页面空白,点击检查 2.使用调试工具 (1) ...
- 项目工程化之git提交规范以及 CHANGELOG生成
事先声明,本文是参考了其他大神的博客之后自己尝试的记录,具体可以参考如下 链接 先说说git 提交规范把,这里基本都是这个工具 cz-customizable 1,安装 npm install cz- ...
- Java的字节流,字符流和缓冲流对比探究
目录 一.前言 二.字节操作和字符操作 三.两种方式的效率测试 3.1 测试代码 3.2 测试结果 3.3 结果分析 四.字节顺序endian 五.综合对比 六.总结 一.前言 所谓IO,也就是Inp ...
- Rocket - diplomacy - NodeHandle相关类
https://mp.weixin.qq.com/s/GWL41P1G1BXm2sTeLmckdA 介绍NodeHandle相关的类. 1. NoHandle 顶层类(tra ...
