- #include <iostream> 
- #include <limits> 
- using namespace std; 
-   
- int main()  
- { 
- 	float a, s{}; 
-   
- 	bool p{}; 
-   
- 	while((p = static_cast<bool>(std::cin >> a)) && a!=0) s+=a; 
- 	std::cout << "a = " << a << "\tsum = " << s << '\n'; 
-   
- 	if(!p) 
- 	{ 
- 		std::cout << "Input error. Repeat:> "; 
-   
- 		std::cin.clear(); 
-   
- 		// clear till next possible number: 
- 		//while(!std::isspace(std::cin.get())); 
-   
- 		// clear till end of string: 
- 		//while(std::cin.get() != '\n'); 
-   
- 		// clear till end of string (variant 2): 
- 		//std::cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n'); 
-   
- 		// should be same as previous, but it's not: 
- 		std::cin.ignore(std::cin.rdbuf()->in_avail());		// why 0? 
-   
- 		// syncronize i. e. drop till next possible number   
- 		//std::cin.sync(); 
-   
- 		std::cin >> a;	s+=a; 
- 		std::cout << "a = " << a << "\tsum = " << s << '\n'; 
- 	} 
-   
- 	return 0; 
- } 
				I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8bGltaXRzPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IG1haW4oKSAKewoJZmxvYXQgYSwgc3t9OwoJCglib29sIHB7fTsKCQoJd2hpbGUoKHAgPSBzdGF0aWNfY2FzdDxib29sPihzdGQ6OmNpbiA+PiBhKSkgJiYgYSE9MCkgcys9YTsKCXN0ZDo6Y291dCA8PCAiYSA9ICIgPDwgYSA8PCAiXHRzdW0gPSAiIDw8IHMgPDwgJ1xuJzsKCQoJaWYoIXApCgl7CgkJc3RkOjpjb3V0IDw8ICJJbnB1dCBlcnJvci4gUmVwZWF0Oj4gIjsKCQkKCQlzdGQ6OmNpbi5jbGVhcigpOwoJCQoJCS8vIGNsZWFyIHRpbGwgbmV4dCBwb3NzaWJsZSBudW1iZXI6CgkJLy93aGlsZSghc3RkOjppc3NwYWNlKHN0ZDo6Y2luLmdldCgpKSk7CgkJCgkJLy8gY2xlYXIgdGlsbCBlbmQgb2Ygc3RyaW5nOgoJCS8vd2hpbGUoc3RkOjpjaW4uZ2V0KCkgIT0gJ1xuJyk7CgkJCgkJLy8gY2xlYXIgdGlsbCBlbmQgb2Ygc3RyaW5nICh2YXJpYW50IDIpOgoJCS8vc3RkOjpjaW4uaWdub3JlKHN0ZDo6bnVtZXJpY19saW1pdHM8c3RkOjpzdHJlYW1zaXplPjo6bWF4KCksICdcbicpOwoJCgkJLy8gc2hvdWxkIGJlIHNhbWUgYXMgcHJldmlvdXMsIGJ1dCBpdCdzIG5vdDoKCQlzdGQ6OmNpbi5pZ25vcmUoc3RkOjpjaW4ucmRidWYoKS0+aW5fYXZhaWwoKSk7CQkvLyB3aHkgMD8KCQoJCS8vIHN5bmNyb25pemUgaS4gZS4gZHJvcCB0aWxsIG5leHQgcG9zc2libGUgbnVtYmVyICAKCQkvL3N0ZDo6Y2luLnN5bmMoKTsKCQkKCQlzdGQ6OmNpbiA+PiBhOwlzKz1hOwoJCXN0ZDo6Y291dCA8PCAiYSA9ICIgPDwgYSA8PCAiXHRzdW0gPSAiIDw8IHMgPDwgJ1xuJzsKCX0KCQoJcmV0dXJuIDA7Cn0=