Advertisement
Guest User

Untitled

a guest
Dec 8th, 2019
113
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.90 KB | None | 0 0
  1. #!/usr/bin/env python3
  2. # -*- coding: utf-8 -*-
  3. """
  4. # =============================================================================
  5. # Created on Sat Oct 27 23:56:52 2018
  6. # =============================================================================
  7. @author: nestIH
  8. """
  9. from bankareikningur_c import Bankareikningur
  10. import pickle
  11. from IPython import get_ipython
  12. import os
  13. class Bankavidskipti:
  14. # =========================================================================
  15. #Framkvæmir:
  16. #Fyrir :
  17. #Eftir :
  18. # =========================================================================
  19. def __init__(self, reikningur, str= ' ' ):
  20. self.reikningur= reikningur
  21. self.str= str
  22. # =============================================================================
  23. #Framkvæmir:
  24. #Fyrir :
  25. #Eftir :
  26. # =============================================================================
  27. def Inn_reikning(self):
  28. while(True):
  29. self.str= input('Viltu leggja inn: Ja eða Nei?:> ')
  30. if self.str =='Ja':
  31. try:
  32. upphaed= int(input('Sláðu inn upphæð í heiltölum:> '))
  33. try:
  34. reikn_svar= self.reikningur.leggja_inn(upphaed)
  35. if reikn_svar==True: print('Innlögð upphæð er {0}: '.format(upphaed))
  36. elif reikn_svar==False and upphaed<0: print('Ekki hægt að leggja inn neikvæða upphæð!')
  37. else: print('Villa kom upp innieign á reikning er neikvæð {0}:'.format(self.reikningur.inneign))
  38. except:
  39. print('Villa 1 kom upp')
  40. break
  41. self.str= input('Ýttu á takka fyrir nýja innsetningu, N=Hættir:> ')
  42. if self.str == 'N':
  43. return
  44. except:
  45. print('Villa 2 kom upp')
  46. break
  47. elif self.str =='Nei': return
  48. self.Inn_reikning()
  49. # =============================================================================
  50. #Framkvæmir:
  51. #Fyrir :
  52. #Eftir :
  53. # =============================================================================
  54. def takaUt_reikning(self):
  55. while(True):
  56. self.str= input('Viltu taka út? Ja eða Nei:> ')
  57. if self.str =='Ja':
  58. 1
  59. try:
  60. upphaed= int(input('Sláðu inn úttektarupphæð í heiltölum:> '))
  61. if upphaed < 0:
  62. print('Ekki hægt að taka út neikvæða upphæð')
  63. break
  64. try:
  65. reikn_svar= self.reikningur.taka_ut(upphaed)
  66. if reikn_svar==True: print('Úttektar upphæð er {0}: '.format(upphaed))
  67. elif reikn_svar==False: print('Ekki næg innistæða á reikning')
  68. else: print('Villa kom upp innieign á reikning {0}:'.format(self.reikningur.inneign))
  69. except:
  70. print('Villa 1 kom upp')
  71. break
  72. self.str= input('Ýttu á takka fyrir nýja útttekt, N=Hættir:> ')
  73. if self.str == 'N':
  74. return
  75. except:
  76. print('Villa 2 kom upp')
  77. break
  78. elif self.str =='Nei': return
  79. self.takaUt_reikning()
  80.  
  81. # =========================================================================
  82. #Framkvæmir:
  83. #Fyrir :
  84. #Eftir :
  85. # =========================================================================
  86. def saekjaStodu_reikning(self):
  87. return('\n Innistæða á reikning er Kr: {0}-'.format(self.reikningur.saekja_stodu()))
  88. # =============================================================================
  89. # Athugið. Pickle skráinn 'banki.pkl' þarf að vera til áður en keyrsla hefst
  90. # =============================================================================
  91. def main():
  92. ipy = get_ipython()
  93. ipy.system('clear')
  94.  
  95. reikningur= Bankareikningur()
  96. vskipti= Bankavidskipti(reikningur)
  97.  
  98. if not os.access("banki.pkl", os.R_OK):
  99. skra= open('banki.pkl', 'wb')
  100. skra.close()
  101. pickle.dump(reikningur.inneign,open('banki.pkl', 'wb'))
  102. reikningur.inneign= pickle.load(open('banki.pkl', 'rb'))
  103. while(True):
  104. svar= input('Sláðu inn aðgerð: \n Innsetning= \t i\n Taka út= \t\t u\n Prenta stöðu= \t p\n\t')
  105. if svar == 'i': vskipti.Inn_reikning()
  106. elif svar == 'u':vskipti.takaUt_reikning()
  107. elif svar == 'p': print(vskipti.saekjaStodu_reikning())
  108. else:break
  109. pickle.dump(reikningur.inneign,open('banki.pkl', 'wb'))
  110. print(vskipti.saekjaStodu_reikning())
  111. if __name__ == '__main__':
  112. main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement