funkcja sin()

0

Witam. Mam drobne pytania odnośnie funkcji sinus. Dlaczego przy takim kodzie, dla y = 180, funkcja zwraca x = 1.22461e-016? Wg mnie powinna chyba zwrócić zero. Z góry dziękuję za odpowiedź.

#include <iostream>
#include <math.h>
using namespace std;

int main(int argc, char** argv) {
	
	
	double x, y, z; 
	cin >> y;
	z =y*M_PI/180;
	
	x = sin(z);
	cout << "x = " << x << endl;
	return 0;
}

 
3

1.22461e-016 to jest wartość bardzo bliska 0. Takie są uroki obliczeń na liczbach zmiennoprzecinkowych.

0

OK. Dzięki, myślałem, że gdzieś jest jakiś myk.

1 użytkowników online, w tym zalogowanych: 0, gości: 1