Ir para conteúdo
Fórum Script Brasil
  • 0

Ajuda com programa C


ntzs

Pergunta

Bom dia.

Tenho um programa em C, que calculo a data da Páscoa e imprimo o calendário de tal ano, que seja igual à este:

aFz06ay.jpg?1

Eu já calculei a data da Páscoa e se o ano é bissexto ou não.

Agora, necessito obter o dia 1 de janeiro do tal ano e depois imprimir os meses na tela.

Alguma pessoa poderia me ajudar?

Editado por ntzs
Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

Você disse que tem um programa que calcula datas e disse tambem que já calculou uma data( a pascoa) e porque não calcular a segunda como calculou a primeira(pascoa)?

formule melhor sua pergunta Eu não consegui entender o seu propósito.

Se possível poste o código pra todos que lerem este post entender.

Editado por Barao
Link para o comentário
Compartilhar em outros sites

  • 0


Você disse que tem um programa que calcula datas e disse tambem que já calculou uma data( a pascoa) e porque não calcular a segunda come fez com a primeira?

formule melhor sua pergunta Eu não consegui entender o seu propósito.

Se possível poste o código pra todos que lerem este post entender.


Desculpe.
Eu tenho um pedaço do código, onde preciso fazer esse programa. Eu já calculei a data da Páscoa e também já calculei se o ano é bissexto ou não. Agora eu não consigo calcular desse dia até o dia primeiro de janeiro! Vou enviar o code.

#include <stdio.h>
int main(){
int g, c, x, z, e, n, d, y;
scanf("%d",&y);
g=(y%19)+1; //Condicao I
c=(y/100)+1; //Condicao II
x=((3*c)/4)-12; //Condicao III
z=(((8*c)+5)/25)-5; //Condicao IV
e=((11*g)+20+z-x)%30; //Condicao V
if ((e==25 && g>11)||(e==24)) //Condicao VI
e++;
n=(44-e); //Condicao VII
if(n<21)
n=n+30;
d=((5*y)/4)-(x+10); //Condicao VIII
n=(n+7)-((d+n)%7); //Condicao IX
if(n>31){
printf("A pascoa sera dia %d de abril",(n-31));
}
else
printf("A pascoa sera dia %d de marco",n);
}
(Os printf foram só para testes.)
Editado por ntzs
Link para o comentário
Compartilhar em outros sites

  • 0

Uma outra parde do meu código, só falta imprimir tudo bonitinho.

#include <stdio.h>
int main(){
int g, c, x, z, e, n, d, y, dia=1, mes=1, i, j=0, diasem=0, diasem2=0,k=0,a=0, l=0,k2=0,dia2=1;
char barra[40];
char bis;
scanf("%d",&y);
printf("Calendario do ano de %d\n",y);
g=(y%19)+1; //Condicao I
c=(y/100)+1; //Condicao II
x=((3*c)/4)-12; //Condicao III
z=(((8*c)+5)/25)-5; //Condicao IV
e=((11*g)+20+z-x)%30; //Condicao V
if ((e==25 && g>11)||(e==24)) //Condicao VI
e++;
n=(44-e); //Condicao VII
if(n<21)
n=n+30;
d=((5*y)/4)-(x+10); //Condicao VIII
n=(n+7)-((d+n)%7); //Condicao IX
if(n>31){
n=n-31;
}
else
n=n;
if (y%100==0)
y=y/100;
if (y%4==0){
bis='s';
a=(n+31+29+31+30)%7;
a--;
}
else{
bis='n';
a=(n+31+28+31+30)&7;
a--;
}
i=1;
barra[0]='|';
while (i<29){
barra='-';
i++;
}
barra='-';
switch (mes){
case 1:
printf("%s%s\n",barra,barra);
printf("|Janeiro ||Fevereiro |\n");
printf("%s%s\n",barra,barra);
printf("| dom seg ter qua qui sex sab || dom seg ter qua qui sex sab |\n");
while(j<6){
printf("|");
while(k<7){
if((k>=a)&&(dia>=1)&&(dia<=31)){
if ((dia>=1)&&(dia<=9)){
printf(" 0%d",dia);
dia++;
k++;
}
else{
printf(" %d",dia);
dia++;
k++;
}
}
else{
printf(" --");
k++;
}
}
printf(" ||\n");
a=0;
k=0;
j++;
}
}
j=0;
dia=1;
printf("%s%s\n",barra,barra);
mes++;
}
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...