Курсовая работа: Синтаксический анализатор полиномов

{

s1 = 0;

s0 = 0;

//ставим закрывающий 0 в начало,

//чтоб потом можно было цеплять к концу 1 или 0

str[0]='\0';

//цикл по битам числа b[k]

for (int i = sizeof (b[k])*8-1; i >= 0; i--)

{

//b[k]>>i - побитовый сдвиг вправо на i бит

//0x1 - число 1 в бинарном представлении

//((b[k]>>i) & 0x1) == 1 - позволяет определить бинарный вид числа

if (((b[k]>>i) & 0x1) == 1)

{

s1++;//увелич. кол-во единиц

strcat(str,"1");//цепляем "1"

}

else

{

s0++; //увелич. кол-во нулей

strcat(str,"0");//цепляем "0"

}

}

cout<<b[k]<<" "<<str<<" kol-vo '1'="<<s1<<" kol-vo '0'="<<s0<<endl;

//поиск макс. числа единиц

if (s1>s1max)

{

s1max=s1;

//массив bmax заполняется числами по возрастанию кол-ва единиц

К-во Просмотров: 222
Бесплатно скачать Курсовая работа: Синтаксический анализатор полиномов