#include <stdio.h>
#include <stdint.h>
int main( void ) {
// your code goes here
int32_t x = ( 0x80000000 - 3 ) ;
int i;
for ( i = 0 ; i < 5 ; ++ i )
{
int32_t y = x + 1 ; // this may cause rollover from 0x7fffffff (positive) to 0x80000000 (negative)
printf ( "\n " "x = 0x%08X, y = 0x%08X" , x
, y
) ;
if ( ( y - x ) >= 1 ) // Method 1
else
int32_t z = ( y - x ) ; // Method 2
if ( ( z ) >= 1 )
else
++ x;
}
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRpbnQuaD4KCmludCBtYWluKHZvaWQpIHsKCS8vIHlvdXIgY29kZSBnb2VzIGhlcmUKaW50MzJfdCB4ID0gKDB4ODAwMDAwMDAgLSAzKTsKCmludCBpOwpmb3IoIGkgPSAwOyBpIDwgNTsgKytpICkKewogICAgaW50MzJfdCB5ID0geCArIDE7ICAgICAgLy8gdGhpcyBtYXkgY2F1c2Ugcm9sbG92ZXIgZnJvbSAweDdmZmZmZmZmIChwb3NpdGl2ZSkgdG8gMHg4MDAwMDAwMCAobmVnYXRpdmUpCgogICAgcHJpbnRmKCJcbiIgInggPSAweCUwOFgsIHkgPSAweCUwOFgiLCB4LCB5ICk7CgogICAgaWYoICggeSAtIHggKSA+PSAxICkgICAgICAgICAgICAvLyBNZXRob2QgMQogICAgICAgIHByaW50ZigiIC0gdHJ1ZSAiKTsKICAgIGVsc2UKICAgICAgICBwcmludGYoIiAtIEZBTFNFIik7CgogICAgaW50MzJfdCB6ID0gKCB5IC0geCApOyAgICAgICAgICAvLyBNZXRob2QgMgogICAgaWYoICggeiApID49IDEgKQogICAgICAgIHByaW50ZigiIC0gdHJ1ZSAiKTsKICAgIGVsc2UKICAgICAgICBwcmludGYoIiAtIGZhbHNlIik7CgogICAgKyt4Owp9Cn0K