
Составить программу на Паскале. На турнире соревновались два спортсмена – А и В. Всего было
проведено N туров. Результаты каждого спортсмена по турам записаны в два массива А и В. Победителем в каждом туре считается тот, кто в этом туре набрал больше очков. Победителем соревнования считается тот, кто победил в большем количестве туров. Определить, кто победил в соревновании. Если А и В победили одинаковое число раз, то засчитывается ничья.

Ответы на вопрос

var
a: array of real;
b: array of real;
a_sum, b_sum, i, n: integer;
a_values, b_values: real;
begin
randomize;
writeln('Введите количество туров: ');
readln(n);
a := new real[n];
b := new real[n];
a_sum := 0;
b_sum := 0;
writeln('Введите результаты первого спортсмена: ');
for i := 0 to n - 1 do
begin
readln(a_values);
a[i] := a_values;
end;
writeln('Введите результаты второго спортсмена: ');
for i := 0 to n - 1 do
begin
readln(b_values);
b[i] := b_values;
end;
writeln('Результаты первого спортсмена: ');
for i := 0 to n - 1 do
write(a[i], ' ');
writeln(#10);
writeln('Результаты второго спортсмена: ');
for i := 0 to n - 1 do
write(b[i], ' ');
writeln(#10);
for i := 0 to n - 1 do
if (a[i] > b[i]) then inc(a_sum) else
if a[i] = b[i] then begin inc(a_sum);inc(b_sum); end else
if (a[i] < b[i]) then inc(b_sum);
writeln('Первый спортсмен победил в ', a_sum, ' турах.', #10, 'Второй спортсмен победил в ', b_sum, ' турах.');
if (a_sum = b_sum) then writeln('В общем зачёте ничья!') else
if (a_sum > b_sum) then writeln('В общем зачёте побеждает первый спортсмен!') else
if (a_sum < b_sum) then writeln('В общем зачёте побеждает второй спортсмен!');
end.



Приведенная ниже программа на языке Pascal сравнивает результаты А и В в каждом туре и определяет победителя соревнования.
pascalprogram Tournament; const MAX_TOURS = 100; var A, B: array[1..MAX_TOURS] of Integer; N, i, countA, countB: Integer; begin { Ввод количества туров } write('Введите количество туров: '); readln(N); { Ввод результатов А } writeln('Введите результаты А:'); for i := 1 to N do begin write('Тур ', i, ': '); readln(A[i]); end; { Ввод результатов В } writeln('Введите результаты В:'); for i := 1 to N do begin write('Тур ', i, ': '); readln(B[i]); end; { Подсчет побед А и В } countA := 0; countB := 0; for i := 1 to N do begin if A[i] > B[i] then countA := countA + 1 else if B[i] > A[i] then countB := countB + 1; end; { Вывод результата } writeln('Результаты:'); writeln('Спортсмен А победил в ', countA, ' турах.'); writeln('Спортсмен В победил в ', countB, ' турах.'); if countA > countB then writeln('Победитель соревнования: А') else if countB > countA then writeln('Победитель соревнования: В') else writeln('Соревнование закончилось вничью'); readln; end.
Программа запрашивает у пользователя количество туров (N), а затем просит ввести результаты каждого тура для спортсмена А и В. После этого она подсчитывает количество побед А и В в каждом туре и выводит их результаты. Затем программа определяет победителя соревнования или объявляет ничью, основываясь на количестве побед каждого спортсмена.


Похожие вопросы
Топ вопросов за вчера в категории Информатика








Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili