Advertisement
Guest User

6 fecha.cpp

a guest
Jul 18th, 2018
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.31 KB | None | 0 0
  1. #include <iostream>
  2. #include <conio.h>
  3. #include <windows.h>
  4.  
  5. using namespace std;
  6.  
  7.  
  8.  
  9. void mostrarFecha(int minuto,int hora,int dia,int mes,int anio){
  10.     cout<<"anio: "<<anio<<"   mes : "<<mes<<"     dia: "<<dia<<"    hora: "<<hora<<"     minuto: "<<minuto<<endl;
  11. }
  12.  
  13. int diferenciaAnios(int anioInicial,int anioFinal){
  14.     int suma=0;
  15.     for(int i=anioInicial;i<anioFinal;i++){
  16.         if(anioInicial%4==0){
  17.             suma=suma+366;
  18.         }else{
  19.             suma=suma+365;
  20.         }
  21.     }
  22.     return suma;
  23. }
  24.  
  25. int diferenciaMeses(int mesInicial,int mesFinal,int anio){
  26.     int suma=0;
  27.     int meses[12]={31,28,31,30,31,30,31,31,30,31,30,31};
  28.  
  29.     if(anio%4==0){
  30.         meses[1]=29;
  31.     }
  32.  
  33.     for(int i=mesInicial;i<mesFinal;i++){
  34.         suma=suma+meses[i-1];
  35.     }
  36.     return suma;
  37. }
  38.  
  39. int cantidadHoras(int minutos){
  40.     return minutos/60;
  41. }
  42.  
  43. void buscandoFecha(int vAnio,int vMes,int vDia,int vHora,int vMinuto){
  44.  
  45.  
  46.     int anio=2018;
  47.     int mes=1;
  48.     int dia=1;
  49.     int hora=0;
  50.     int minuto=0;
  51.  
  52.  
  53. if(vAnio>=anio && vMes>=mes && vDia>=dia){
  54.  
  55.         // OBTENER LA CANTIDAD DE MINUTOS EN TOTAL
  56.  
  57.         int diasDeAnios=diferenciaAnios(anio,vAnio);
  58.         int diasMeses=diferenciaMeses(mes,vMes,vAnio);
  59.         int diasRestantes=vDia-dia;
  60.         int auxHoras=vHora-hora;
  61.         int auxMinutos=vMinuto-minuto;
  62.  
  63.         int minutosTotales=diasDeAnios*24*60+diasMeses*24*60+diasRestantes*24*60+auxHoras*60+auxMinutos;
  64.         minutosTotales=minutosTotales-cantidadHoras(minutosTotales);
  65.  
  66.         // REDICIENDO A ANIOS
  67.         for(int i=2018;i<vAnio;i++){
  68.             if(i%4==0){
  69.                 if(minutosTotales>=366*24*60){
  70.                     minutosTotales=minutosTotales-366*24*60;
  71.                     anio++;
  72.                 }else{
  73.                     break;
  74.                 }
  75.             }else{
  76.                 if(minutosTotales>=365*24*60){
  77.                     minutosTotales=minutosTotales-365*24*60;
  78.                     anio++;
  79.                 }else{
  80.                     break;
  81.                 }
  82.             }
  83.         }
  84.  
  85.         // REDUCIENDO A MESES
  86.         int meses[12]={31,28,31,30,31,30,31,31,30,31,30,31};
  87.         if(vAnio%4==0){
  88.             meses[1]=29;
  89.         }
  90.         int aux;
  91.         for(int i=1;i<12;i++){
  92.             aux=meses[i-1]*24*60;
  93.             if(minutosTotales>=aux){
  94.                 minutosTotales=minutosTotales-aux;
  95.                 mes++;
  96.             }else{
  97.                 break;
  98.             }
  99.         }
  100.         // REDUCIENDO A DIAS
  101.         aux=minutosTotales/(24*60);
  102.         minutosTotales=minutosTotales-aux*24*60;
  103.         dia+=(aux);
  104.  
  105.         // REDUCIENDO A HORAS
  106.         aux=minutosTotales/(60);
  107.         minutosTotales=minutosTotales-aux*60;
  108.         hora+=(aux);
  109.  
  110.         // MINUTOS RESTANTES
  111.         minuto=minutosTotales;
  112.         mostrarFecha(vMinuto,vHora,vDia,vMes,vAnio);
  113.         mostrarFecha(minuto,hora,dia,mes,anio);
  114.  
  115.     }
  116. }
  117.  
  118. int main()
  119. {
  120.  
  121.  
  122.  
  123.     int anio;
  124.     int mes;
  125.     int dia;
  126.     int hora;
  127.     int minuto;
  128.  
  129.     cout<<" Anio: ";
  130.     cin>>anio;
  131.  
  132.     cout<<" Mes : ";
  133.     cin>>mes;
  134.  
  135.     cout<<" Dia : ";
  136.     cin>>dia;
  137.  
  138.     cout<<" Hora: ";
  139.     cin>>hora;
  140.  
  141.     cout<<" Minuto: ";
  142.     cin>>minuto;
  143.  
  144.     cout<<endl;
  145.  
  146.     buscandoFecha(anio,mes,dia,hora,minuto);
  147.  
  148.     return 0;
  149. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement