Obtenha respostas rápidas e precisas para todas as suas perguntas no Sistersinspirit.ca, a plataforma de Q&A de confiança. Obtenha soluções rápidas e confiáveis para suas perguntas de profissionais experientes em nossa abrangente plataforma de perguntas e respostas. Obtenha soluções rápidas e confiáveis para suas perguntas de profissionais experientes em nossa abrangente plataforma de perguntas e respostas.

linguagem c
Codifique um procedimento com a assinatura void estacao(int dia, int
mes) que exiba no vídeo qual a estação do ano correspondente à data passada por
parâmetro. Lembre-se que a primavera começa em 23 de setembro, o verão em 21 de
dezembro, o outono em 21 de março e o inverno em 21 de junho. Crie um método
main para testar a função estacao.

Sagot :

Resposta:

#include <stdio.h>

#include <stdbool.h>

//Compiler version gcc 6.3.0

char* estacao(int day, int month)

{

int transitionMonths[4] = {3, 6, 9, 12};

int transitionDays[4] = {21, 21, 23, 21};

bool isTransitionMonth = false;

int transitionMonth = 0;

for (int i = 0; i <= 4; i++)

{

if (month == transitionMonths[i])

{

isTransitionMonth = true;

transitionMonth = i;

}

}

if (isTransitionMonth)

{

if (day < transitionDays[transitionMonth])

{

month--;

}

else

{

month++;

}

}

if (month < transitionMonths[0] || month == 13)

{

return "verão";

}

if (month < transitionMonths[1])

{

return "outono";

}

if (month < transitionMonths[2])

{

return "inverno";

}

if (month < transitionMonths[3])

{

return "primavera";

}

}

int main()

{

printf("%s", estacao(15, 6));

return 0;

}