#include <stdio.h>
#include <stdint.h>
void add_with_carry(uint8_t a, uint8_t b, uint8_t* result, uint8_t* carry) {
// Your logic here
// uint8_t Cin = 0;
// uint8_t Cout = 0;
// uint8_t Abit = 0;
// uint8_t Bbit = 0;
// uint8_t Rbit = 0;
// uint8_t Res = 0;
// for(int i=0; i<8; i++)
// {
// Abit = (a>>i) & 0x01;
// Bbit = (b>>i) & 0x01;
// Rbit = (Abit^Bbit)^Cin;
// Cout = (Abit&Bbit)|(Cin&(Abit^Bbit));
// Res = Res | (Rbit<<i);
// Cin = Cout;
// }
*result = a+b;
*carry = (*result < a);
}
int main() {
uint8_t a, b, result, carry;
scanf("%hhu %hhu", &a, &b);
add_with_carry(a, b, &result, &carry);
printf("%u ", result);
printf("%u", carry);
return 0;
}
Input
100 50
Expected Output
150 0