Set Multiple Bits in 8-bit Register

Code

#include <stdio.h>
#include <stdint.h> 

uint8_t set_range(uint8_t reg, uint8_t start, uint8_t end){
    for(uint8_t i=start; i<=end; i++)
    {
        reg = reg | (1u << i);
    }
    return reg; 
}

int main(){
    uint8_t reg, start, end; 
    scanf("%hhu %hhu %hhu",&reg,&start,&end); 
    printf("%hhu",set_range(reg,start,end)); 
    return 0;
} 

Solving Approach

 

 

 

Upvote
Downvote
Loading...

Input

0 1 3

Expected Output

14