Advertisement
Guest User

Untitled

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