日常踩坑——Dev C++ pow()函数的坑
坑
Dev C++ pow()函数
那年冬天,显示屏前坐着如喽啰,那时候我含泪发誓,再也不用Dev。
一个小题目,在Dev上就是跑不出正确答案,不信邪,就在vs上跑,完全正确。
#include <iostream>
#include <math.h>
using namespace std; int main() {
int x;
int sign = true;
cin >> x;
for (int i = ; i <= sqrt(x) && sign; i++) {
int I = pow(i, );
for (int j = i; j <= sqrt(x) && sign; j++) {
int J = pow(j, );
for (int k = j; k <= sqrt(x) && sign; k++) {
int K = pow(k, );
double L =sqrt( x - I - J - K);
if (L==int(L)) {
cout << i <<" "<< j <<" "<< k<<" " << L<<endl;
sign = false;
}
}
}
}
return ;
}
经过我的穷举调试大法,
#include <iostream>
#include <math.h>
using namespace std; int main(){
for(int i=;i<;i++){
int L=pow(i,);
if(L!=i*i){
cout<<i*i<<" "<<L<<endl;
}
}
return ;
}
运行结果: 
我可以理解,因为pow形参,结果都为浮点数,形参转换的时候,24.99999999成了24,但是别的编译器里从来没碰到过这种情况,真的坑啊,根本想不到。
日常踩坑——Dev C++ pow()函数的坑的更多相关文章
- 汇编语言计算Sin,Cos,Pow函数
填了一下之前的坑.首先是一个题外话,在VS2015中默认汇编代码会使用SSE生成,如果想用FPU编译出FLD,FSTP这些指令,需要设置一下. 项目 >> 属性 >> C/C+ ...
- C语言pow函数编写
C语言pow函数编写 #include<stdio.h> double chaoba(double f,double q); //声明自定义函数 void main(void) { dou ...
- C语言pow()函数的计算精度问题
编程计算 a+aa+aaa+-+aa-a(n个a)的值,n和a的值由键盘输入.例如,当n=4,a=2,表示计算2+22+222+2222的值. 程序运行结果示例: Input a,n: 2,4↙ su ...
- pow()函数结果强制转化为int造成误差的分析
开发环境:codeblocks,编译器gcc 在计算102时调用pow(10, 2),再强制类型转换为int类型后输出: printf(,)); 得到的结果却是:99 这是因为 double pow( ...
- C语言--pow()函数实现
为什么自己实现一个pow()函数呢?昨天在Linux操作系统中调用这一个函数时,一直报错,也没有查找到具体的原因.故心血来潮实现这一函数功能. 函数所在头文件: 在"math.h&q ...
- Python3 pow() 函数
Python3 pow() 函数 Python3 数字 描述 pow() 方法返回 xy(x的y次方) 的值. 语法 以下是 math 模块 pow() 方法的语法: import math mat ...
- pow函数(数学次方)在c语言的用法,两种编写方法实例( 计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值)
关于c语言里面pow函数,下面借鉴了某位博主的一篇文章: 头文件:#include <math.h> pow() 函数用来求 x 的 y 次幂(次方),x.y及函数值都是double型 , ...
- pow() 函数
pow() 函数用来求 x 的 y 次幂(次方),其原型为: double pow(double x, double y); #include<iostream> #include< ...
- pow函数
pow函数如果直接强制类型转换成int,会导致精度的损失.如果是int的幂计算,建议重写函数.或者用double型进行计算.
随机推荐
- 字符串匹配问题(lfyzoj)
问题描述 字符串中只含有括号 (),[],<>,{},判断输入的字符串中括号是否匹配.如果括号有互相包含的形式,从内到外必须是<>,(),[],{},例如.输入: [()] 输 ...
- shortcut icon和icon代码的区别介绍
语句一: <link rel="shortcut icon" href="favicon.ico" /> 语句二: <link rel=&qu ...
- [编程] C语言Linux系统编程-等待终止的子进程(僵死进程)
1.等待终止的子进程(僵死进程): 如果一个子进程在父进程之前结束,内核会把子进程设置为一个特殊的状态,处于这种状态的进程称为僵死进程 当父进程获取了子进程的信息后,子进程才会消失. pid_t wa ...
- Ubuntu14.04默认cmake升级为3.x
由于Ubuntu14.04的cmake版本为2.8.x,而如果需要cmake3.x版本时,无法生成makefile,有两种方法可以安装cmake3.4.1: sudo apt-get install ...
- Lua脚本语言基础知识
注释 在Lua中,你可以使用单行注释和多行注释. 单行注释中,连续两个减号"--"表示注释的开始,一直延续到行末为止.相当于C++语言中的"//". 多行注 ...
- 创建Web项目运行时出小错误及解决方法
1.目录结构 2.各文件内容 index.jsp <%@ page contentType="text/html;charset=UTF-8" language=" ...
- 浅谈ul布局以及table布局
我个人对于某些言论说要注重html语义化在布局中的应用,我反而不怎么感冒,试试兼容IE7&&项目期相对较赶的情况下,我还是推荐快速开发为主,兼容性强为主. 如果布局中需要用户边框,推荐 ...
- UOJ#55. 【WC2014】紫荆花之恋
传送门 暴力思路就是每次点分治计算答案 点分治之后,条件可以变成 \(dis_i-r_i\le r_j-dis_j\) 每次只要查找 \(r_j-dis_j\) 的排名然后插入 \(dis_j-r_j ...
- Fast Walsh-Hadamard Transform——快速沃尔什变换(二)
上次的博客有点模糊的说...我把思路和算法实现说一说吧... 思路 关于快速沃尔什变换,为了方便起见,我们采用线性变换(非线性变换不会搞). 那么,就会有一个变化前各数值在变换后各处的系数,即前一篇博 ...
- js 数据监听--对象的变化
class Observer { constructor(data) { this.data = data; this.filterObj(data); } static isObject(obj) ...