64 - это два в шестой степени, следовательно в двоичной записи будет единица и шесть нулей. 16 - это два в четвертой степени, следовательно в двоичной записи будет единица и четыре нуля. 1 - это два в нулевой степени, следовательно в двоичной записи будет единица и "ноль" нулей. Сложение производится поразрядно. И если сначала было шесть нулей, то один из них (в пятом разряде) заменится на единицу из числа 16, а еще один (в первом разряде) - на единицу из числа 1. Итого останется четыре нуля. ответ: четыре нуля.
Natacha3636672
05.10.2020
#include <iostream> #include <cmath> using namespace std;
long Amt(int *hours) { long p=1; for(int i=0;i<*hours/3;i++) p*=2; return(p); }
int main() { setlocale(LC_ALL, "RUS"); int i,T; cout<<"Введите предельное количество часов: "; cin>>T; for(i=3;i<=T;i+=3) {cout<<"Время, час "<<i<<", амеб: "<<Amt(&i)<<endl;} system("PAUSE"); }
Тестовое решение: Введите предельное количество часов: 60 Время, час: 3, амеб: 2 Время, час: 6, амеб: 4 Время, час: 9, амеб: 8 Время, час: 12, амеб: 16 Время, час: 15, амеб: 32 Время, час: 18, амеб: 64 Время, час: 21, амеб: 128 Время, час: 24, амеб: 256 Время, час: 27, амеб: 512 Время, час: 30, амеб: 1024 Время, час: 33, амеб: 2048 Время, час: 36, амеб: 4096 Время, час: 39, амеб: 8192 Время, час: 42, амеб: 16384 Время, час: 45, амеб: 32768 Время, час: 48, амеб: 65536 Время, час: 51, амеб: 131072 Время, час: 54, амеб: 262144 Время, час: 57, амеб: 524288 Время, час: 60, амеб: 1048576 Для продолжения нажмите любую клавишу . . .
Конечно же не являеться Б нет