Solução Campeonato

Solução por Rogério Júnior

Vamos declarar os inteiros pc e pf, que serão os pontos obtidos pelo Cormengo e pelo Flaminthians, respectivamente. Assim, para calcularmos seus valores, sabemos que pc = 3*Cv + Ce e  pf = 3*Fv + FeCalculados seus valores, se pc >  pf, então o Cormengo ficou na frente e devemos imprimir uma linha com o caractere 'C'. Se pc <  pf, então Flaminthians ficou na frente e devemos imprimir uma linha com o caractere 'F'. Se as pontuações forem iguais verificamos os saldos. Se um dos times tiver saldo maior, então ele ganhou e devemos imprimir o caractere que o representa. Caso contrário, deu empate e imprimimos o caractere '='. Segue o código para melhor entendimento:


#include <cstdio>
int main(){
// declaro e leio os resultados dos times
int cv, ce, cs, fv, fe, fs, pc, pf;
scanf("%d %d %d %d %d %d", &cv, &ce, &cs, &fv, &fe, &fs);
// calculo os pontos obtidos por eles
pc=3*cv+ce;
pf=3*fv+fe;
// se algum tiver mais pontos, imprimo seu caractere
if(pc>pf) printf("C\n");
if(pc<pf) printf("F\n");
// se eles estiverem empatados nos pontos
if(pc==pf){
// se algum deles ganahr no saldo, mprimo seu caractere
if(cs>fs) printf("C\n");
if(cs<fs) printf("F\n");
// e imprimo '=' caso o empate persista
if(cs==fs) printf("=\n");
}
return 0;
}

view raw

campeonato.cpp

hosted with ❤ by GitHub

Nosso leitor Roger Benet enviou uma solução semelhante:


#include <cstdio>
int main(){
int cv,ce,cs,fv,fe,fs,pc,pf;
scanf("%d %d %d %d %d %d", &cv, &ce, &cs, &fv, &fe, &fs);
pc = cv * 3 + ce;
pf = fv * 3 + fe;
if(pc > pf)printf("C\n");
else if(pc < pf)printf("F\n");
else {
if(cs > fs)printf("C\n");
else if(cs < fs)printf("F\n");
else printf("=\n");
}
return 0;
}