Найти первое из чисел 1, 1/2, 1/4, 1/6 и тд, меньшее заданного дробного числа из...

0 интересует 0 не интересует
88 просмотров

Найти первое из чисел 1, 1/2, 1/4, 1/6 и тд, меньшее заданного дробного числа из промежутка [0;1]


спросил от (75 баллов) в категории Информатика
1 Ответ
0 интересует 0 не интересует
ответил от Архангел (142k баллов)
 
Лучший ответ

// PascalABC.NET 3.1, сборка 1195 от 09.03.2016
begin
  var p:=ReadReal('p(0..1]=');
  if (p<=0) or (p>=1) then Writeln('Неверное значение')
  else begin
    var d:=Ceil(1/p);
    if Odd(d) then Inc(d);
    if 1/d >= p then Inc(d,2);
    Writeln('1/',d,' = ',1/d,' < ',p)
    end
end.

Тестовое решение:
p(0..1]= 0.005001
1/200 = 0.005 < 0.005001

...