Advertisement
Guest User

anao qa veja isto

a guest
Sep 22nd, 2019
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.92 KB | None | 0 0
  1.  
  2. def its_ok_months(calculo_meses):
  3. if int(calculo_meses[1]) <= 12:
  4. return calculo_meses
  5. else:
  6. calculo_meses[1] = calculo_meses[1] - 12
  7. calculo_meses[2] += 1
  8. return calculo_meses
  9.  
  10.  
  11. def calcula_dias(it, j):
  12.  
  13. if it == 2:
  14. if is_bissexto(j):
  15. return 29
  16. else:
  17. return 28
  18. elif it < 7 and it % 2 != 0 or it >= 7 and it % 2 == 0:
  19. return 31
  20. else:
  21. return 30
  22.  
  23.  
  24. def is_bissexto(j):
  25. if j % 400 == 0 or j % 4 == 0 and j % 100 != 0:
  26. return True
  27. else:
  28. return False
  29.  
  30.  
  31. def main():
  32. data_inicial = input('insira a data inicial \n');
  33. data_final = input('insira a data final \n')
  34.  
  35. data_final = data_final.split("/")
  36. data_inicial = data_inicial.split("/")
  37.  
  38. calculo_data = [0, 0, 0]
  39.  
  40. for index in range(0, len(data_final)):
  41. data_inicial[index] = int(data_inicial[index])
  42. data_final[index] = int(data_final[index])
  43.  
  44. print(data_inicial)
  45. print(data_final)
  46.  
  47. for j in range(data_inicial[2], data_final[2] + 1):
  48. mes = data_inicial[1] + 1 if j == data_final[2] else 0
  49. for it in range(mes, 12):
  50. if(j == data_final[2] and it == data_final[1]):
  51. if data_final[0] > data_inicial[0]:
  52. calculo_data[0] = data_final[0] - data_inicial[0]
  53. calculo_data[1] += 1
  54. calculo_data = its_ok_months(calculo_data)
  55. elif data_final[0] > data_inicial[0]:
  56. calculo_data[1] += 1
  57. calculo_data = its_ok_months(calculo_data)
  58. else:
  59. calculo_data[0] = calcula_dias(it + 1, data_final[2]) - data_inicial[0] + data_final[0]
  60. break
  61. else:
  62. calculo_data[1] += 1
  63. calculo_data = its_ok_months(calculo_data)
  64.  
  65. print(calculo_data)
  66.  
  67. main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement