Estou começando a aprender a linguagem C. Tenho que fazer um um exercício que pede:
"Escreva um programa que peça três inteiros, correspondentes a dia , mês e ano. Peça os números até conseguir valores que estejam na faixa correta (dias entre 1 e 31, mês entre 1 e 12 e ano entre 1900 e 2100). Verifique se o mês e o número de dias batem (incluindo verificação de anos bissextos). Se estiver tudo certo imprima o número que aquele dia corresponde no ano. Comente seu programa.
PS: Um ano é bissexto se for divisível por 4 e não for divisível por 100, exceto para os anos divisíveis por 400, que também são bissextos."
Pesquisando até encontrei em alguns fóruns a solução para o exercício, mas eu não gostaria de simplesmente copiar e colar para tirar a nota, por isso estou tentando fazer o exercício sem cola. Mas como esse e o primeiro programa que faço, estou tento muitas dificuldades. Por isso conta a ajuda do pessoal do fórum.
Ainda estou no começo, até agora eu só fiz esse pedaço:
#include <stdio.h>
int main()
{
int dia;
int mes;
int ano;
{
do
{
printf ("Digite um dia do mes no formato dd: \n");
scanf ("%d", &dia);
if (dia>31||dia<1)
printf ("Dia invalido, digite novamente!\n\n");
}while (dia>31||dia<1);
printf ("Digite um mes do ano no formato mm: \n");
scanf ("%d", &mes);
if((mes>12)||(mes<1))
printf ("Mes invalido!");
printf ("Digite um ano entre 1900 e 2100; \n");
scanf ("%d", &ano);
}
return(0);
}
No primeiro trecho funcionou belezinha:
do
{
printf ("Digite um dia do mes no formato dd: \n");
scanf ("%d", &dia);
if (dia>31||dia<1)
printf ("Dia invalido, digite novamente!\n\n");
}while (dia>31||dia<1);
Mas agora eu quero fazer o mesmo com o mês e ano, mas não estou conseguindo. Pensei que se repetisse a mesma estrutura do "dia", funcionaria com "mes" e "ano", mas não deu certo:
Pergunta
Emerson111
Olá,
Estou começando a aprender a linguagem C. Tenho que fazer um um exercício que pede:
"Escreva um programa que peça três inteiros, correspondentes a dia , mês e ano. Peça os números até conseguir valores que estejam na faixa correta (dias entre 1 e 31, mês entre 1 e 12 e ano entre 1900 e 2100). Verifique se o mês e o número de dias batem (incluindo verificação de anos bissextos). Se estiver tudo certo imprima o número que aquele dia corresponde no ano. Comente seu programa.
PS: Um ano é bissexto se for divisível por 4 e não for divisível por 100, exceto para os anos divisíveis por 400, que também são bissextos."
Pesquisando até encontrei em alguns fóruns a solução para o exercício, mas eu não gostaria de simplesmente copiar e colar para tirar a nota, por isso estou tentando fazer o exercício sem cola. Mas como esse e o primeiro programa que faço, estou tento muitas dificuldades. Por isso conta a ajuda do pessoal do fórum.
Ainda estou no começo, até agora eu só fiz esse pedaço:
#include <stdio.h>
int main()
{
int dia;
int mes;
int ano;
{
do
{
printf ("Digite um dia do mes no formato dd: \n");
scanf ("%d", &dia);
if (dia>31||dia<1)
printf ("Dia invalido, digite novamente!\n\n");
}while (dia>31||dia<1);
printf ("Digite um mes do ano no formato mm: \n");
scanf ("%d", &mes);
if((mes>12)||(mes<1))
printf ("Mes invalido!");
printf ("Digite um ano entre 1900 e 2100; \n");
scanf ("%d", &ano);
}
return(0);
}
No primeiro trecho funcionou belezinha:
do
{
printf ("Digite um dia do mes no formato dd: \n");
scanf ("%d", &dia);
if (dia>31||dia<1)
printf ("Dia invalido, digite novamente!\n\n");
}while (dia>31||dia<1);
Mas agora eu quero fazer o mesmo com o mês e ano, mas não estou conseguindo. Pensei que se repetisse a mesma estrutura do "dia", funcionaria com "mes" e "ano", mas não deu certo:
#include <stdio.h>
int main()
%0
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
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.