Я хочу добавить степени двойки, начиная с 128 и заканчивая до 1. Добавление происходит нажатием кнопки, а при первом нажатии (1) я хочу вывести 128. Когда ононажата второй раз (2), я хочу вывести 128 + 64 = 192, и так далее, и так далее.Мое математическое применение неверно, или, может быть, что-то не так?Заранее спасибо!
Все, что я пробовал, сводится к тому, чтобы иметь два цикла for, один внутри другого, с внутренним циклом, генерирующим степень двух, и внешним, добавляющим их.
int j, k; //for-loop counters
int base = 2; //number to exponentialize
int d = 0, x = 1; //output, and exponent helper respectively
for(j=buttonpresses; j>0; j--){
for(k=0; k<8-buttonpresses; k++){
x = x*base;
}
d = d + x;
x = 1;
}
printf("%d", d);
Я ожидаю, что выход будет 128, затем 192, затем 224 и так далее.Я никогда не получаю это, но переменный вывод материала, в зависимости от мелочи, которую я изменяю.