Ir ao conteúdo
  • Cadastre-se

C Programa que retorne qual dia da semana aquela data corresponde.


samucao82
Ir à solução Resolvido por Lucca Rodrigues,

Posts recomendados

Quero criar um programa em c no qual o usuário digite o dia do ano no formato mes/dia e o programa retorne qual dia da semana essa data cairá.

Eu pensei em resolver esse problema criando um vetor de tamanho 365, e criei uma estrutura de repetição para preencher esse vetor com 1 até 7(começando com o numero 7 pois o ano 2022 começa em um sábado). No entanto, parece que meu programa ficou em laço, e não consigo entender o porque. Aquele printf no final era só para eu tentar entender o que estava acontecendo.

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#define SUCESSO 0
#define tVetor 365

  int main(int argc, char **argv)
{
  int ano[tVetor];
  int i;
  
  for(i = 0; i < tVetor; i + 7){
      ano[i] = 7;
       if(ano[i] = 7 && i < 364){
           ano[i + 1] = 1;
           ano[i + 2] = 2;
           ano[i + 3] = 3;
           ano[i + 4] = 4;
           ano[i + 5] = 5;
           ano[i + 6] = 6;
       }
  } 
   
   printf("%d", ano[56]);
   
   
  return SUCESSO;
}

 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Solução

@samucao82

1 hora atrás, samucao82 disse:
for(i = 0; i < tVetor; i + 7)

O incremento funciona de modo a atualizar o valor do índice:

for(i = 0; i < tVetor; i = i + 7)

Ou:

for(i = 0; i < tVetor; i += 7)

 

1 hora atrás, samucao82 disse:
ano[i] = 7;
       if(ano[i] = 7 && i < 364)

ano[i] vai ser igual a 7, a atribuição vem justamente antes do if, não precisa verificar isso. Aliás, o certo é == pra comparação, = é atribuição.

  • Curtir 1
  • Obrigado 1
Link para o comentário
Compartilhar em outros sites

@samucao82

i++ é o mesmo que i += 1, que é o mesmo que i = i + 1.

Seria um pouco estranho nos depararmos com algo assim:

for(i = 0; i < x; i = i + 1)

Quando se pode simplesmente escrever i++.

Ou ainda:

for(i = 0; i < x; i -= -1)

Mais estranho ainda. 😆

Mas nenhuma forma está errada se a ideia é incrementar o valor de i, a questão é qual forma de escrever é mais conveniente.

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!