Определить, каким по порядку стартовал лыжник, показавший лучший результат - Free Pascal (780)

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

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

Известны результаты каждого из участников соревнований по лыжным гонкам (время, затраченное на прохождение дистанции гонки). Спортсмены стартовали по одному. Результаты даны в том порядке, в каком спортсмены стартовали. Определить, каким по порядку стартовал лыжник, показавший лучший результат? Если таких спортсменов несколько, то должен быть найден первый из них.

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

textual
Листинг программы
var n,i, winner: Integer;
    t: array[1..100] of Real;
    tmin: Real;
 
begin
    Randomize;
    Write ('Enter count of members: ');
    ReadLn (n);
    WriteLn;
    for i := 1 to n do
    begin
        t[i] := Random*20;
        WriteLn (i,' member: ',t[i]:0:2)
    end;
    tmin := t[1];
    winner := 1;
    for i := 2 to n do
    begin
        if t[i]<tmin then
        begin
            tmin := t[i];
            winner := i
        end
    end;
    WriteLn;
    WriteLn ('Winner ',winner,' member with t = ',tmin:0:2);
    ReadLn
end.

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

  1. Объявлены переменные:
    • n, i, winner - целочисленные, используется для итерации по массиву и хранения результата;
    • t - массив из 100 элементов с плавающей точкой, используется для хранения времени забега каждого участника;
    • tmin - переменная для хранения минимального времени забега.
  2. Выполняется инициализация генератора случайных чисел.
  3. Запрашивается количество участников и сохраняется в переменной n.
  4. Выводится сообщение об участии в забеге и номер участника.
  5. Цикл по всем участникам:
    • Каждому участнику присваивается случайное время забега из диапазона от 0 до 40.
    • Выводится сообщение об участии в забеге и время забега участника.
  6. Минимальное время забега сохраняется в переменной tmin, а номер участника с минимальным временем - в переменной winner.
  7. Цикл по всем участникам, начиная со второго:
    • Если время забега текущего участника меньше минимального времени, то:
    • Минимальное время обновляется на время текущего участника.
    • Номер участника с минимальным временем обновляется на текущий номер.
  8. Выводится сообщение о победителе и его результат.
  9. Программа ожидает нажатия клавиши для завершения работы.

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


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

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

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