Поделитесь своими знаниями, ответьте на вопрос:
Объясните ! (через pascal abc) по данному натуральному числу n выведите такое наименьшее целое число k, что 2k≥n.операцией возведения в степень пользоваться нельзя! я нашла решение в интернете : var k, n, p: integer; begin readln (n) ; p: =1; while p begin p: =p*2; k: =k+1; end; writeln (k) ; end.но я не понимаю, почему там умножают на 2 и зачем плюс 1 и вообще что за что принимается, !
объяснение:
//я так понял это :
твое решение скорее всего неверно. вот вообщем написал программу для решение данной :
var
k, n: integer;
begin
readln(n); //вводим число n
k : = 1; // k присвоил наименьшее
repeat
k : = k*2; //умножение на 2 идет из условия 2*k> =n
until k> =n ;
writeln(k)
end.