信息学奥赛一本通 2067:【例2.5】圆
【题目链接】
ybt 2067:【例2.5】圆
【题目考点】
1. 算术表达式
2. 输出浮点数a保留x位小数
printf(%.xf, a);
cout<<fixed<<setprecision(x)<<a;
3. 符号常量声明
const 常量类型 常量名 = 常量值;
#define 常量名 常量值
4. π\piπ的定义方法
- 可以用反余弦函数acos或反正切函数atan求π\piπ,也可以自己写出π\piπ小数点后15位。写更多位没有用,因为double类型最多表示16位有效数字。
#define PI acos(-1)
#define PI 4*atan(1)
#define PI 3.141592653589793
<cmath>中有定义常量M_PI
,调用前必须在引入<cmath>前定义宏#define _USE_MATH_DEFINES
- 各种方法定义PI示例,各种方法得到的结果完全相同。
#define _USE_MATH_DEFINES
#include<bits/stdc++.h>
using namespace std;
int main()
{const double PI1 = 3.1415926535897932;const double PI2 = acos(-1);const double PI3 = 4*atan(1);const double PI4 = M_PI;//<cmath>中的常量,必须在第一行加上#define _USE_MATH_DEFINES才可以使用 printf("PI:\t\t%.16f\nacos(-1):\t%.16f\n4*atan(1):\t%.16f\nM_PI:\t\t%.16f", PI1, PI2, PI3, PI4); //输出的最后一位是1,是错误的,只有小数点后15位是正确的。因为double类型最多只能表示16位有效数字,包括个位和小数点后15位。return 0;
}
【题解代码】
解法1:用cin, cout
#include<bits/stdc++.h>
using namespace std;
const double PI = acos(-1);
int main()
{double r;cin >> r;cout << fixed << setprecision(4) << 2*r << ' ' << 2*PI*r << ' ' << PI*r*r; return 0;
}
解法2:用scanf, printf
#include<bits/stdc++.h>
using namespace std;
#define PI 4*atan(1)
int main()
{double r;scanf("%lf", &r);printf("%.4f %.4f %.4f", 2*r, 2*PI*r, PI*r*r);return 0;
}
信息学奥赛一本通 2067:【例2.5】圆相关推荐
- 信息学奥赛一本通(1014:与圆相关的计算)
1014:与圆相关的计算 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 85541 通过数: 40714 [题目描述] 给出圆的半径,求圆的直径.周长和面 ...
- 信息学奥赛一本通试题 1014:与圆相关的计算
#include<cstdio> #include<iostream> using namespace std; const double PI=3.14159; int ma ...
- 【例1】 0/1背包《信息学奥赛一本通》【解法一】 02
/* [例1] 0/1背包<信息学奥赛一本通>[解法一] 02 http://ybt.ssoier.cn:8088/problem_show.php?pid=1267 */ #includ ...
- 【例8】合唱队形(《信息学奥赛一本通第五版》)
/* [例8]合唱队形(<信息学奥赛一本通第五版>) http://ybt.ssoier.cn:8088/problem_show.php?pid=1264 [问题描述] N位同学站成一排 ...
- 信息学奥赛一本通 2021:【例4.6】最大公约数
[题目链接] ybt 2021:[例4.6]最大公约数 [题目考点] 1. while循环 2. 求最大公约数 辗转相减法 辗转相除法 [解题思路] 解法1:枚举 取较小数字,从该数字的值开始从大到小 ...
- 信息学奥赛一本通(2032:【例4.18】分解质因数)
2032:[例4.18]分解质因数 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 582 通过数: 376 [题目描述] 把一个合数分解成若干个质因数乘积 ...
- 信息学奥赛一本通——2062:【例1.3】电影票
2062:[例1.3]电影票 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 57341 通过数: 34230 [题目描述] 已知一位小朋友的电影票价是10 ...
- 信息学奥赛一本通 1278:【例9.22】复制书稿(book) | 洛谷 P1281 书的复制
[题目链接] ybt 1278:[例9.22]复制书稿(book) 洛谷 P1281 书的复制 [题目考点] 1. 动态规划:线性动规 [解题思路] 该题可以抽象为:将由m个数字构成的序列分成k个子段 ...
- 信息学奥赛一本通1267:【例9.11】01背包问题(二维dp与滚动数组优化)
[题目描述] 一个旅行者有一个最多能装 MM 公斤的背包,现在有 nn 件物品,它们的重量分别是W1,W2,...,WnW1,W2,...,Wn,它们的价值分别为C1,C2,...,CnC1,C2,. ...
最新文章
- Java项目:植物大战僵尸(java+swing)
- python打印类的属性
- gtp6 linux 启动_Win10更新后导致双系统(LinuxWindows)开机引导失败出现grub rescue的修复办法...
- vm虚拟机系统界面无法全屏
- java导出excel_纯干货:Java开源报表工具JasperReport使用
- 再造轮子之网易彩票-第一季(IOS 篇 by sixleaves)
- CAN、CAN FD
- ubuntu键盘突然失灵怎么办?
- WebSocket 是什么原理?为什么可以实现持久连接?
- iphone的致命硬伤
- UE4.虚幻4.简单介绍和学习视频推荐
- Python 爬虫 批量下载论坛图片
- 例25:求1+2!+3!+...+20!的和。
- python谷歌地图查找附近地铁站_Google地图实现查找指定地点1公里范围之内的地铁站...
- 三、使用buildroot制作mke2fs (mkfs.ext2、mkfs.ext3、mkfs.ext4)
- 中间件---Binlog传输同步---Canal
- 三种爱心代码html(文本文档即可实现)
- linux 系统硬件信息检测工具,美国Linux服务器查看硬件信息工具
- crm系统是什么很棒ec实力_CRM系统好用的四个原因
- 软件测试|Python帮手残党写出漂亮签名