#include <iostream>
#include <cmath>
using namespace std;
void show( int a, int b)
{
int q = a / b;
int r = a % b;
int addend = r > 0 ;
int result = q + addend;
int quotient_ceiling = ( int ) ceil ( ( double ) a / b) ;
cout << "a = " << a << ", b = " << b <<
", division a/b produced " << q <<
", remainder = " << r <<
", result = " << result <<
" (quotient ceiling = " << quotient_ceiling << ")" <<
endl;
}
int main( )
{
show( 11 , 5 ) ;
show( 11 , - 5 ) ;
show( - 11 , 5 ) ;
show( - 11 , - 5 ) ;
return 0 ;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y21hdGg+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKdm9pZCBzaG93KGludCBhLCBpbnQgYikKewoJaW50IHEgPSBhIC8gYjsKCWludCByID0gYSAlIGI7CglpbnQgYWRkZW5kID0gciA+IDA7CglpbnQgcmVzdWx0ID0gcSArIGFkZGVuZDsKCQoJaW50IHF1b3RpZW50X2NlaWxpbmcgPSAoaW50KWNlaWwoKGRvdWJsZSlhIC8gYik7CgkKCWNvdXQgPDwgImEgPSAiIDw8IGEgPDwgIiwgYiA9ICIgPDwgYiA8PAoJICAgICAgICAiLCBkaXZpc2lvbiBhL2IgcHJvZHVjZWQgIiA8PCBxIDw8CgkgICAgICAgICIsIHJlbWFpbmRlciA9ICIgPDwgciA8PAoJICAgICAgICAiLCByZXN1bHQgPSAiIDw8IHJlc3VsdCA8PAoJICAgICAgICAiIChxdW90aWVudCBjZWlsaW5nID0gIiA8PCBxdW90aWVudF9jZWlsaW5nIDw8ICIpIiA8PAoJICAgICAgICBlbmRsOwp9CgppbnQgbWFpbigpCnsKCXNob3coMTEsIDUpOwoJc2hvdygxMSwgLTUpOwoJc2hvdygtMTEsIDUpOwoJc2hvdygtMTEsIC01KTsKCXJldHVybiAwOwp9
stdout
a = 11, b = 5, division a/b produced 2, remainder = 1, result = 3 (quotient ceiling = 3)
a = 11, b = -5, division a/b produced -2, remainder = 1, result = -1 (quotient ceiling = -2)
a = -11, b = 5, division a/b produced -2, remainder = -1, result = -2 (quotient ceiling = -2)
a = -11, b = -5, division a/b produced 2, remainder = -1, result = 2 (quotient ceiling = 3)