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

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

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

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

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

textual
Листинг программы
  1. var n,i, winner: Integer;
  2.     t: array[1..100] of Real;
  3.     tmin: Real;
  4.  
  5. begin
  6.     Randomize;
  7.     Write ('Enter count of members: ');
  8.     ReadLn (n);
  9.     WriteLn;
  10.     for i := 1 to n do
  11.     begin
  12.         t[i] := Random*20;
  13.         WriteLn (i,' member: ',t[i]:0:2)
  14.     end;
  15.     tmin := t[1];
  16.     winner := 1;
  17.     for i := 2 to n do
  18.     begin
  19.         if t[i]<tmin then
  20.         begin
  21.             tmin := t[i];
  22.             winner := i
  23.         end
  24.     end;
  25.     WriteLn;
  26.     WriteLn ('Winner ',winner,' member with t = ',tmin:0:2);
  27.     ReadLn
  28. end.

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

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

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


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

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

7   голосов , оценка 4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы