Определите номер дня, на который пробег спортсмена составит не менее y километров - Pascal

Узнай цену своей работы

Формулировка задачи:

В первый день спортсмен пробежал x километров, а затем он каждый день увеличивал пробег на 70% от предыдущего значения. По данному числу y определите номер дня, на который пробег спортсмена составит не менее y километров. Входные данные На вход программа получает два действительных числа x и y . Числа положительные, действительные, не превосходят 1000, заданы с точностью до шести знаков после запятой. Выходные данные Программа должна вывести единственное целое число.
var x1,x,y:real;k:integer;
begin
k:=1;
read(x,y);
while (x<y) and (x-y<0.00000001) do begin
x:=x+x*0.7;
k:=k+1;
end;
writeln (k);
end.
ПОДСКАЖИТЕ что в данном решение не учтено , тк не проходит 3 теста на сайте(

Решение задачи: «Определите номер дня, на который пробег спортсмена составит не менее y километров»

textual
Листинг программы
const
    coef = 1.70;
    eps = 0.000001;
var
    x, y: Single;
    i: Word;
begin
    repeat
        Write('Input x=');
        ReadLn(x);
    until ((x > 0) And (x < 1000));
    repeat
        Write('Input y=');
        ReadLn(y);
    until ((y > 0) And (y < 1000));
    i := 1; //x - значение первого дня.
    while (y - x > eps) do
    begin
        Inc(i);
        x := coef * x;
    end;
    Write('Result: ', i);
end.

Объяснение кода листинга программы

В данном коде объявлены следующие переменные:

  • coef - коэффициент, равный 1.70;
  • eps - малая точность, равная 0.000001;
  • x - переменная типа Single для хранения значения пробега спортсмена в первом дне;
  • y - переменная типа Single для хранения значения пробега спортсмена во втором дне;
  • i - переменная типа Word для хранения номера дня, когда пробег спортсмена составит не менее y километров. В цикле repeat-until выполняется чтение значений x и y с помощью функции ReadLn. Затем, в цикле while выполняется увеличение значения i на единицу и обновление значения x с помощью умножения на коэффициент coef. Цикл while продолжается до тех пор, пока разница между y и x не станет больше eps. После завершения цикла while выводится результат - номер дня, когда пробег спортсмена составит не менее y километров.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4 из 5
Похожие ответы