早教吧 育儿知识 作业答案 考试题库 百科 知识分享

C++程序设计习题验证极限,关于输入三个数,分别代表x,a和e,其中a>1,e>0关于输出输出最小的非负整数N,使得当整数n>N时,有|x/a^n|

题目详情
C++ 程序设计习题 验证极限,
关于输入
三个数,分别代表x,a和e,其中a>1,e>0
关于输出
输出最小的非负整数N,使得当整数n>N时,有|x/a^n| < e成立
我的程序是:
#include
using namespace std;
int main()
{
double a,e,x,y;
int N;
cin>>x>>a>>e;
for (N=0;;N++)
{
y=pow(a,N);
if (abs(x/y)
▼优质解答
答案和解析
因为 abs() 这个 函数的 原因 .abs()的返回值 是INT型的也就是 说 abs(1.5)的值为1;
abs(2.5)的值为2; abs(3)值为3;
当你的 e 有小数部分 而 x/y 又不是整数的时候 abs 就会把 x/y 的小数部分扔掉 ;
所以 在判断的时候 就会比正确答案 大;
你可以 自己 编写一个 程序 验证一下 abs() 这个 函数.
看了C++程序设计习题验证极限,关...的网友还看了以下: