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

0 голосов
45 просмотров

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


Информатика (75 баллов) | 45 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

// 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

(142k баллов)