VivaTychina / PROFE-ALGORITMS.

0 stars 0 forks source link

бинарность #2

Open VivaTychina opened 1 year ago

VivaTychina commented 1 year ago

Написать метод который принимает число, в качестве параметра, а возвращает кол-во единиц этого числа в бинарном виде. Например: число 255 в бинарном виде выглядит как 11111111. Тогда func(int a) { если а = 255 то result = 8 (тк 8 единиц) } Использовать при решении побитовые операторы

    System.out.print("Ввести нужно целое число: ");
    int Number = scanner.nextInt();

    System.out.println("Число  " + Number);
    System.out.println("Бинарное  число: " + Integer.toBinaryString(number));

    int result = countOnes(number);
    System.out.println("Подсчет единиц в бинарном представлении числа...");

    for (int i = 0; i < 32; i++) {
        int bit = (number >> i) & 1;
        System.out.println("Бит " + i + ": " + bit);
    }

    System.out.println("Количество единиц в бинарном представлении числа " + number + ": " + result);

    scanner.close();
}

public static int countOnes(int number) {
    int count = 0;
    while (number != 0) {
        count += number & 1;
        number >>= 1;
    }
    return count;
}

}

Shonmikl commented 1 year ago

отлично)