#include <cmath>
#include <iostream>
using namespace std;

class Val {
	int a;
	float b;
public:
	Val& operator= (const int _a) {a = _a; b = _a + fmod(b, 1.0F); return *this;}
	Val& operator= (const float _b) {b = _b; a = trunc(_b); return *this;}
	operator int() {return a;}
	operator float() {return b;}
};

int main() {
	Val foo;
	
	foo = 1.3F;
	
	cout << static_cast<int>(foo) << endl << static_cast<float>(foo) << endl;
	
	foo = 13;
	
	cout << static_cast<int>(foo) << endl << static_cast<float>(foo) << endl;
}