Xin chào, em có đoạn code để so sánh giữa hai hàm với nhau mặc dù chúng trả về cùng kết quả nhưng khi so sánh lại cho ra kết quả là không bằng nhau , tại sao lại cho ra kết quả như vậy ạ ?
#include<iostream>
#include <math.h>
using namespace std;
void tinh(double &xn, double &ketqua, double &N){
xn = (N+1)/2;
while(fabs(xn - ketqua) > 0.0001){
ketqua = xn;
xn = 0.5 * (xn + N/xn);
}
}
int main(){
double N, xn, ketqua;
cout<<"Nhap vao so muon tinh can bac hai : ";
cin>>N;
tinh(xn, ketqua, N);
if(ketqua == sqrt(N))
cout<<"Bang nhau voi ham pow(N, 0.5)"<<endl;
else
cout<<"Khong bang nhau voi ham pow(N, 0.5)"<<endl;
return 0;
}