Дам 100 балів!
Pascal!
Створювати проект не потрібно, лише докладно описати послідовність дій, які треба зробити!
Створіть проєкт для розв’язування задачі: У багаторядковому текстовому полі міститься час, який показав кожен з учасників/учасниць змагань вашого закладу освіти з бігу на дистанцію 60 метрів. Визначте найбільший і найменший час. Визначте, скільки спортсменів/спортсменок показали найкращий час. Чи оновлено на цих змаганнях рекорд вашого закладу освіти?
2. Збережіть проєкт у папці з іменем Практична 9, створеній у вашій папці.
Ответы на вопрос
Ответ:
Для розв’язування цієї задачі в Pascal потрібно виконати наступні кроки:
1. Відкрити середу розробки Pascal та створити новий проєкт.
2. Створити багаторядкове текстове поле або списковий об’єкт для введення часу.
3. Запропонувати користувачеві ввести час кожного учасника/учасниці змагань відповідно до послідовності їхнього виступу. Для цього можна використати цикл `for`.
4. Порівняти всі введені значення часу, знайти максимальне та мінімальне значення та вивести їх на екран.
5. Підрахувати, скільки спортсменів/спортсменок показали найкращий час та вивести це число на екран.
6. Якщо на цих змаганнях було побито рекорд вашого закладу освіти, вивести повідомлення на екран.
Наприклад, код може мати наступний вигляд:
uses crt;
var
timeList: TStringList; // список для зберігання часів учасників
i, count, maxIndex, minIndex: integer; // лічильник, лічильник найкращого часу, лічильник найгіршого часу
maxTime, minTime, time: real; // максимальний, мінімальний та поточний час
begin
timeList := TStringList.Create;
// зчитування часів учасників
writeln('Введіть час кожного учасника:');
for i := 1 to 10 do
begin
write('Учасник ', i, ': ');
readln(time);
timeList.Add(FloatToStr(time));
end;
// пошук максимального та мінімального часу
maxTime := StrToFloat(timeList[0]);
minTime := StrToFloat(timeList[0]);
maxIndex := 1;
minIndex := 1;
count := 0;
for i := 1 to 9 do
begin
time := StrToFloat(timeList[i]);
if time > maxTime then
begin
maxTime := time;
maxIndex := i + 1;
end;
if time < minTime then
begin
minTime := time;
minIndex := i + 1;
end;
end;
// підрахунок кількості найкращих часів
for i := 0 to timeList.Count - 1 do
begin
time := StrToFloat(timeList[i]);
if time = minTime then
count := count + 1;
end;
// виведення результатів
writeln('Максимальний час: ', maxTime:0:2, ' s, учасник ', maxIndex);
writeln('Мінімальний час: ', minTime:0:2, ' s, учасник ', minIndex);
writeln('Кількість учасників з найкращим результатом: ', count);
// перевірка рекорду
if minTime < 10.6 then
writeln('Рекорд вашого закладу освіти побито!');
readln;
end.
Объяснение: