2.77 Multiple By Shifts
★★
#include <stdio.h>
#include <assert.h>
int A(int x) {
return x + (x << 4);
}
int B(int x) {
return x - (x << 3);
}
int C(int x) {
return (x << 6) - (x << 2);
}
int D(int x) {
return (x << 4) - (x << 7);
}
int main() {
assert(A(19) == 17 * 19);
assert(B(19) == -7 * 19);
assert(C(19) == 60 * 19);
assert(D(19) == -112 * 19);
return 0;
}Last updated