#include <stdio.h>
#include <stdint.h>
uint8_t rotate_left(uint8_t reg, uint8_t n) {
// Your code here
uint8_t val = reg;
uint8_t result = (val << n) | (val >> (8 - n));
result &= 0xFF; // Ensure 8-bit result
/*
uint8_t result = 0x00;
uint8_t result1 = 0x00;
uint8_t temp = reg;
uint8_t mask = 0b11111111;
int len = 0x00;
while (temp > 0)
{
temp = temp >> 1;
len++;
}
for(int i= 0; i < n; i++)
{
temp = len - n;
result = ((reg >> temp) & mask);
//printf("%d\n",result);
result1 = ((reg << n) | result);
} */
return result;
}
int main() {
uint8_t reg, n;
scanf("%hhu %hhu", ®, &n);
printf("%u", rotate_left(reg, n));
return 0;
}
Input
176 1
Expected Output
97