Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Приклад 7.3






У деяких видах спортивних змагань виступ спортсмена оцінюється декількома суддями. Із сукупності виставлених ними балів вилучаються найвищий та найнижчий бали. На основі решти балів обчислюється середнє арифметичне, яке і зараховується спортсмену як оцінка його виступу. Необхідно за виставленими суддівськими оцінками визначити середню оцінку виступу спортсмена. Кількість суддів не перевищує десяти.

Оцінки суддів вважатимемо елементами масиву дійсних чисел. Кількість суддів, а значить, і кількість оцінок вводитимемо до змінної n. Якщо знайдено максимальний та мінімальний бал (змінні max і min) та накопичено суму балів у змінній sum, то за формулою res = (sum - min - max)/(n - 2) можна обчислити шукане значення. Цю задачу розв'язує програма ех7_3. Результати її роботи зображено на рис. 7.1.

Program ex7_3;
var
mark: array [1..10] of real;
i, n: integer;
min, max, sum, result: real;
begin
writeln('grade defining');
writeln('enter numbers of arbiters (< =10)');
read(n);
writeln('enter ', n, ' grades');
for i: =1 to n do
read(mark[i]);
min: =mark[1];
max: =mark[1];
sum: =mark[1];
for i: =2 to n do
begin
if min> mark[i] then min: =mark[i];
if max< mark[i] then max: =mark[i];
sum: =sum+mark[i];
end;
writeln('margin grades');
writeln('max=', max: 3: 2, ' min=', min: 3: 2);
result: =(sum-min-max)/(n-2);
writeln('rezult grade=', result: 3: 2);
end.

Рис. 7.1. Результати роботи програми ех7_3. Обчислення середньої оцінки виступу спортсмена

Демонстрація прикладу

Під час пошуку найбільшого або найменшого елемента масиву може виникнути потреба у визначенні його індексу. Значення індексу, як правило, використовується при подальшій перестановці елементів масиву, їх видаленні тощо. Для розв'язання цієї задачі застосований у прикладі 7.3 алгоритм потрібно модифікувати. А саме, окрім змінної max (min) слід використати змінну, в якій зберігатимуться значення індексів. Припустимо, це буде змінна nom. Цій змінній спочатку присвоюється індекс першого елемента масиву, а в тілі циклу вона змінює значення тоді, коли і змінна max (min). Отже, змінній nom присвоюється значення індексу того елемента, який виявився більшим за поточне значення max (меншим за поточне значення min).






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.