INF1005 - PROGRAMAÇÃO 1
LISTA DE EXERCÍCIOS 13
1
. Considere uma tabela com os resultados de um campeonato de futebol, onde os
resultados dos times são dispostos numa ordem qualquer. Como ilustrado a seguir, para
cada time registrasse total de pontos ganhos (PG), número de vitórias (V), número de
empates (E), número de derrotas (D), número de gols pró (GP) e número de gols contra
(GC).
Considere ainda que os números da tabela são representados em uma matriz de valores
inteiros. Cada linha da matriz representa os resultados de um determinado time. Na
primeira coluna da matriz armazena-se o número de pontos ganhos, na segunda o número
de vitórias e assim por diante.
a) Escreva uma função que retorne o número do time com o melhor saldo de gols. A
função deve receber como parâmetros o número de times, n, e a tabela com os
resultados, tab, e deve obedecer ao seguinte protótipo:
int melhorsaldo(int n, int tab[][6]);
b) Escreva uma função que retorne o número do time que está na liderança. A
liderança é determinada pelo time que tiver maior número de pontos ganhos. Se
um ou mais times tiverem o mesmo número de pontos, ꢀe usado o seguinte
critério de desempate: número de vitórias e saldo de gols, nesta ordem. Se,
mesmo assim, dois ou mais times empatarem, deve-se retornar o número de um
dos times líderes. A função deve receber como parâmetros o número de times, n,
e a tabela com os resultados, tab, e deve obedecer ao seguinte protótipo:
int lider(int n, int tab[][6]);
c) Escreva uma função que retorne o número do time que está em ꢀultimo lugar na
classificação, obedecendo o mesmo critério de classificação do item anterior. Se
dois ou mais times empatarem em todos os critérios, deve-se retornar um dos
times que está em último lugar. A função deve receber como parâmetros o
número de times, n, e a tabela com os resultados, tab, e deve obedecer ao
seguinte protótipo:
int ultimo(int n, int tab[][6]);