浮点型和零的比较
来源:互联网 发布:知乎为什么打不开了 编辑:程序博客网 时间:2024/05/21 12:57
浮点型变量和零的比较:因为浮点数在内存的存储方式使得,有些浮点数在内存中无法精确的存储,
这样就必然有精度的缺失,一旦丢失就可能计算不够准确。无法用==直接判断两个浮点数相等。
不能直接比较,需要设置一个0的精度范围
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#define EXP 0.0000000001//设置0的精度
int main()
{
float a = 1.0;
if (a >= -EXP&&a <= EXP)//判断a是否在0的精度范围内
就意味着a是无限接近0的数字,就约等于0。
printf("yes\n");
else
printf("no\n");
system("pause");
return 0;
}
计算一元二次方程组根
int main()
{
float a = 0.0;
float b = 0.0;
float c = 0.0;
printf("请输入a b c 的值:\n");
scanf("%f%f%f", &a, &b, &c);
if (a >= -EXP&&a <= EXP)
printf("不是一元二次方程!\n");
else
{
float d = 0.0;
d = b*b - 4 * a*c;
if (d >= -EXP&&d <= EXP)
{
printf("方程有一个根:%f\n",(-b)/2*a);
}
else
{
printf("方程有两个实根:%f %f\n", ((-b) +sqrt( d)) / (2 * a), ((-b) - sqrt(d)) / (2 * a));
}
}
system("pause");
return 0;
}
判断一个浮点数是否等于20
int main()
{
float f = 0.0;
scanf("%f", &f);
if ((f - 20.0) >= -EXP && (f - 20.0) <= EXP)
printf("yes\n");
else
printf("no\n");
system("pause");
return 0;
}
这样就必然有精度的缺失,一旦丢失就可能计算不够准确。无法用==直接判断两个浮点数相等。
不能直接比较,需要设置一个0的精度范围
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#define EXP 0.0000000001//设置0的精度
int main()
{
float a = 1.0;
if (a >= -EXP&&a <= EXP)//判断a是否在0的精度范围内
就意味着a是无限接近0的数字,就约等于0。
printf("yes\n");
else
printf("no\n");
system("pause");
return 0;
}
计算一元二次方程组根
int main()
{
float a = 0.0;
float b = 0.0;
float c = 0.0;
printf("请输入a b c 的值:\n");
scanf("%f%f%f", &a, &b, &c);
if (a >= -EXP&&a <= EXP)
printf("不是一元二次方程!\n");
else
{
float d = 0.0;
d = b*b - 4 * a*c;
if (d >= -EXP&&d <= EXP)
{
printf("方程有一个根:%f\n",(-b)/2*a);
}
else
{
printf("方程有两个实根:%f %f\n", ((-b) +sqrt( d)) / (2 * a), ((-b) - sqrt(d)) / (2 * a));
}
}
system("pause");
return 0;
}
判断一个浮点数是否等于20
int main()
{
float f = 0.0;
scanf("%f", &f);
if ((f - 20.0) >= -EXP && (f - 20.0) <= EXP)
printf("yes\n");
else
printf("no\n");
system("pause");
return 0;
}
阅读全文
0 0
- 浮点型和零的比较
- 指针与零的比较以及浮点型与零的比较
- 浮点数和零值得比较
- 浮点数与零的比较
- 浮点数与零的比较
- 浮点型变量与零值比较
- 浮点型数据和0的比较
- 写一段程序,比较浮点数和零的值得大小
- 浮点数与零比较
- 浮点数与零比较
- 浮点型数据和0进行比较的探究
- 【程序设计】浮点数有效位数,与零值的比较,两两比较的问题。
- 浮点变量与零值比较
- 浮点数与零值比较
- float型变量和“零值”比较的方法
- float型变量和“零值”比较的方法
- 和零值比较:布尔变量、整型变量、浮点变量、指针变量(转)
- C语言布尔、整形、浮点、指针变量与”零值”比较的if语句
- [坚毅:释放激情与坚持的力量].(美).安杰拉·达克沃思.扫描版.pdf 免费下载
- 多态与虚函数(虚表)
- Matlab中窗函数的简单使用
- 并查集(路径压缩)
- SpringMVC常用获取传递参数的方法
- 浮点型和零的比较
- Retrofit+RxJava 封装
- leetcode-563. Binary Tree Tilt
- (转)知乎-区块链技术:如何赋能供应链创新
- ijkPlayer播放器快速集成使用
- 视频播放
- springboot开发笔记(3.web层http、异常)
- 2012第三届--2017第八届 蓝桥杯省赛真题汇总
- 标准ICP算法原理总结及基于二维的ICP算法原理