Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- int esFechaValida (int, int, int);
- int esBisiesto (int);
- int verDia (int);
- int verMes (int);
- int sumarundia(int, int, int);
- int sumarmes(int, int, int);
- int sumaranio(int, int, int);
- int main()
- {
- int d,m,a;
- do{
- printf ("Ingrese una fecha valida y le sumare un dia: ");
- scanf("%d", &d);
- scanf("%d", &m);
- scanf("%d", &a);
- }while (esFechaValida(d,m,a)==0);
- d=sumarundia(d,m,a);
- m=sumarmes(d,m,a);
- a=sumaranio(d,m,a);
- printf ("\n%d/%d/%d", d,m,a);
- return 0;
- }
- int esFechaValida(int dia, int mes, int anio){
- int aux;
- if (verMes(mes)==1){
- if (mes==1 || mes==3 || mes==5 || mes==7 || mes==8 || mes==10 || mes==12 ){
- aux=verDia(dia);
- }
- else {
- if (mes!=2){
- if (verDia(dia)==1 && dia<=30){
- aux=1;
- }else{aux=0;}
- }else{
- if (esBisiesto(anio)==1){
- if(verDia(dia)==1 && dia<=29){
- aux=1;
- }else{aux=0;}
- }else{
- if (verDia(dia)==1&&dia<=28){
- aux=1;
- }else{aux=0;}
- }
- }
- }
- }
- else{aux=0;}
- return aux;
- }
- int esBisiesto(int anio){
- int aux;
- if (anio%4==0 && anio%100!=0 || anio%400==0){
- aux=1;
- }else{aux=0;}
- return aux;
- }
- int verDia(int dia){
- int aux;
- if (dia<=31 && dia>=1){
- aux=1;
- }else{aux=0;}
- return aux;
- }
- int verMes(int mes){
- int aux;
- if (mes<=12 && mes>=1){
- aux=1;
- }else{aux=0;}
- return aux;
- }
- int sumarundia(int dia, int mes, int anio){
- int ndia;
- if (mes==1 || mes==3 || mes==5 || mes==7 || mes==8 || mes==10 || mes==12 ){
- if (dia!=31){
- ndia=dia+1;
- }else{ndia=1;}
- }else{
- if (mes!=2){
- if(dia!=30){
- ndia=dia+1;
- }else {ndia=1;}
- }else{
- if (esBisiesto(anio)==1){
- if (dia!=29){
- ndia=dia+1;
- }else{ndia=1;}
- }else {
- if (dia!=28){
- ndia=dia+1;
- }else{ndia=1;}
- }
- }
- }
- return ndia;
- }
- int sumarmes(int dia, int mes, int anio){
- int nmes;
- if (dia==1){
- nmes=mes+1;
- if (nmes>12){
- nmes=1;
- }
- }else {nmes=mes;
- }
- return nmes;
- }
- int sumaranio(int dia, int mes, int anio){
- int nanio;
- if (dia==1 && mes==1){
- nanio=anio+1;
- }else{nanio=anio;}
- return nanio;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement