Para resolver este problema basta subtrairmos o ano final pelo ano inicial e o resultado dividirmos por quarto, após obtermos esse resultado verificamos quantas edições que devemos subtrair.
-Se o ano de início da busca menor que o ano de 1942 e o ano final da busca maior que 1946, subtraímos 2 edições.
-Se o ano de início estiver contido entre os anos de 1942 e 1946 e o ano de fim maior que 1946, subtraímos 1 edição.
-Se o ano de fim da busca estiver entre os anos de 1942 e 1946 e o ano de início menor que 1942, também subtraímos 1 edição.
-Caso os anos informado forem menor que 1942 ou maiores que 1946 só exibimos o resultado do cálculo.
#include<stdio.h>
int main(){
int ano_inicio, ano_fim, total_edicoes;
printf("A copa do mundo iniciou-se em 1930, sendo um dos maiores competicoes desportivas \ndo mundo, informe um intervalo de ano e direi quanta edicoes ja tivemos.\n");
printf("\nInforme um ano para inicio da busca: ");
scanf("%d", &ano_inicio); printf("\n");
printf("Informe um ano para fim da busca: ");
scanf("%d", &ano_fim); printf("\n");
if((ano_inicio > ano_fim) || (ano_inicio < 1930) || (ano_fim > 2018)) {
printf("Erro nos anos informados.");
return 1; //Sai do programa retornando codigo de erro
}
total_edicoes = (ano_fim - ano_inicio) / 4;
if(ano_inicio < 1942 && ano_fim > 1946){
printf("Total de Copas do Mundo: %d\n", total_edicoes - 2);
return 0; //Sai do programa
}
if(ano_inicio > 1942 && ano_inicio < 1946){
printf("Total de Copas do Mundo: %d\n", total_edicoes - 1);
return 0; //Sai do programa
}
if(ano_fim > 1942 && ano_fim < 1946){
printf("Total de Copas do Mundo: %d\n", total_edicoes - 1);
return 0; //Sai do programa
}
if((ano_fim < 1942) || (ano_inicio > 1946)){
printf("Total de Copas do Mundo: %d\n", total_edicoes);
return 0; //Sai do programa
}
return 0;
}
Para escrever sua resposta aqui, entre ou crie uma conta.
Compartilhar