Explicit conversion to long long returns 0 : When I multiply a long long value with a double value, I get a double value. To convert it back to long long, I use (long long). But the output I get is 0, when it should be 10.    

    #include <bits/stdc++.h>
    using namespace std;
    int main()
    {
    	long long n = 100;
    	printf("%lld",(long long)0.1*n);
    
    	return 0;
    }