Q:

Rust program to find the total number of leading zeros in a binary number

belongs to collection: Rust Basic Programs

0

Here, we will create a 32-bit integer number and then we will read the number from the user and then print its binary number and count the total number of leading zero.

All Answers

need an explanation for this answer? contact us directly to get an explanation for this answer

Program/Source Code:

The source code to find the total number of leading zeros in a binary number is given below. The given program is compiled and executed successfully.

// Rust program to find the total number of 
// leading zeros in a binary number

use std::io;

fn main() {
    let mut num:i32 = 0;
    let mut cnt:i32 = 31;
    let mut tmp:i32 = 0;
    
    let mut input = String::new();
    
    println!("Enter number: ");
    io::stdin().read_line(&mut input).expect("Not a valid string");
    num = input.trim().parse().expect("Not a valid number");
    
    println!("Binary number: ");
    while cnt >= 0 
    {
        tmp = num & (1 << cnt);
        if tmp>0
        {
            print!("1");
        }
        else
        {
            print!("0");
        }
        cnt=cnt-1;
    }

    cnt = 0;
    tmp = num & (1 << 31);
    while tmp==0 
    {
        num = (num << 1);
        cnt=cnt+1;
        tmp = num & (1 << 31);
    }

    println!("\nNumber of leading zero's are: {}", cnt);
}

Output:

RUN 1:
Enter number: 
17
Binary number: 
00000000000000000000000000010001
Number of leading zero's are: 27

RUN 2:
Enter number: 
65535
Binary number: 
00000000000000001111111111111111
Number of leading zero's are: 16

Explanation:

Here, we created an integer variable num with an initial value of 0. Then we read the value of the variable from the user. Then we printed the corresponding binary number and counted the total number of leading zeros in the binary number. After that, we printed the result on the console screen.

need an explanation for this answer? contact us directly to get an explanation for this answer

total answers (1)

Rust Basic Programs

This question belongs to these collections

Similar questions


need a help?


find thousands of online teachers now
Rust program to read a number and print bits betwe... >>
<< Rust program to round off an integer number to the...