//Феномен минус нуля
#include <iostream>
using namespace std;

void safeprint(double x)
{
	if(x==-0) {
        printf("Пытаемся напечатать -0 как 0: %lg\n", x*-1);
    }
    else {
    	printf("Обычная печать: %lg\n", x);
    }
}

int main() {
	double x=1;
	printf("Работаем с числом x= %lg\n",x);
	safeprint(x);
	x=-1*0.0;
	printf("Работаем с числом x= %lg\n",x);
	safeprint(x);
	x=0;
	printf("Работаем с числом x= %lg\n",x);
	safeprint(x);
	printf("Неужели safeprint подумала, что работает с -0???\n");
	if (0.0==-0.0) {
		printf("А вот и причина 0.0==-0.0 истинно!\n");
	}
	return 0;
}