Guest User

Untitled

a guest
Mar 19th, 2018
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.17 KB | None | 0 0
  1. #Импорт библиотек
  2. import scipy, math, cmath, sympy, mpmath, numpy, pandas, matplotlib, sys, matplotlib.pyplot as plt, os
  3.  
  4. #Импорт из библиотек
  5. from sympy import *
  6. from math import *
  7. from cmath import *
  8. from mpmath import *
  9. from scipy import *
  10. from numpy import *
  11. from pandas import *
  12. from matplotlib import *
  13. from sys import *
  14. from os import *
  15.  
  16. #Для сохранения графика в файл
  17. def save(name='', fmt='png'):
  18. pwd = os.getcwd()
  19. iPath = './'.format(fmt)
  20. if not os.path.exists(iPath):
  21. os.mkdir(iPath)
  22. os.chdir(iPath)
  23. plt.savefig('{}.{}'.format(name, fmt), fmt='png')
  24. os.chdir(pwd)
  25.  
  26. def start():
  27. print ('----------------------------')
  28. value = int(input(" Выберите нужное действие: \n \n 1) Сложение \n 2) Вычитание \n 3) Деление \n 4) Умножение \n 5) Найти синус \n 6) Найти косинус \n 7) Найти тангенс \n 8) Найти котангенс \n 9) Построить график по 2 точкам \n ---------------------------- \n "))
  29.  
  30. #Запрос на выбор операций
  31. print ('----------------------------')
  32. value = int(input(" Выберите нужное действие: \n \n 1) Сложение \n 2) Вычитание \n 3) Деление \n 4) Умножение \n 5) Найти синус \n 6) Найти косинус \n 7) Найти тангенс \n 8) Найти котангенс \n 9) Построить график по 2 точкам \n ---------------------------- \n "))
  33.  
  34. #Сложение
  35. if (value == 1):
  36. x = float(input(" Введите первое число: "))
  37. print ('----------------------------')
  38. y = float(input(" Введите второе число: "))
  39. print ('----------------------------')
  40. print ('{} + {}'.format(x, y))
  41. print ('----------------------------')
  42. print (x + y)
  43. print ('----------------------------')
  44. value = input(" Вы хотите продолжить? \n \n Если да, введите 1. \n \n Если нет, введите 0. \n \n " )
  45. if (value == 0):
  46. print ('----------------------------')
  47. print (" Спасибо за использование!")
  48. print ('----------------------------')
  49. sys.exit()
  50. elif (value == 1):
  51. start()
  52. #Вычитание
  53. if (value == 2):
  54. x = float(input(" Введите первое число: "))
  55. print ('----------------------------')
  56. y = float(input(" Введите второе число: "))
  57. print ('----------------------------')
  58. print ('{} - {}'.format(x, y))
  59. print ('----------------------------')
  60. print (x - y)
  61. print ('----------------------------')
  62. value = input(" Вы хотите продолжить? \n \n Если да, введите 1. \n \n Если нет, введите 0. \n \n " )
  63. if (value == 0):
  64. print ('----------------------------')
  65. print (" Спасибо за использование!")
  66. print ('----------------------------')
  67. sys.exit()
  68. elif (value == 1):
  69. start()
  70. #Деление
  71. if (value == 3):
  72. x = float(input(" Введите первое число: "))
  73. print ('----------------------------')
  74. y = float(input(" Введите второе число: "))
  75. print ('----------------------------')
  76. print ('{} / {}'.format(x, y))
  77. print ('----------------------------')
  78. print (x / y)
  79. print ('----------------------------')
  80. value = input(" Вы хотите продолжить? \n \n Если да, введите 1. \n \n Если нет, введите 0. \n \n " )
  81. if (value == 0):
  82. print ('----------------------------')
  83. print (" Спасибо за использование!")
  84. print ('----------------------------')
  85. sys.exit()
  86. elif (value == 1):
  87. start()
  88. #Умножение
  89. if (value == 4):
  90. x = float(input(" Введите первое число: "))
  91. print ('----------------------------')
  92. y = float(input(" Введите второе число: "))
  93. print ('----------------------------')
  94. print ('{} * {}'.format(x, y))
  95. print ('----------------------------')
  96. print (x * y)
  97. print ('----------------------------')
  98. value = input(" Вы хотите продолжить? \n \n Если да, введите 1. \n \n Если нет, введите 0. \n \n " )
  99. if (value == 0):
  100. print ('----------------------------')
  101. print (" Спасибо за использование!")
  102. print ('----------------------------')
  103. sys.exit()
  104. elif (value == 1):
  105. start()
  106. #Найти синус
  107. if (value == 5):
  108. x = float(input(" Введите число: "))
  109. print ('----------------------------')
  110. print (sin(x))
  111. print ('----------------------------')
  112. value = input(" Вы хотите продолжить? \n \n Если да, введите 1. \n \n Если нет, введите 0. \n \n " )
  113. if (value == 0):
  114. print ('----------------------------')
  115. print (" Спасибо за использование!")
  116. print ('----------------------------')
  117. sys.exit()
  118. elif (value == 1):
  119. start()
  120. #Найти косинус
  121. if (value == 6):
  122. x = float(input(" Введите число: "))
  123. print ('----------------------------')
  124. print (cos(x))
  125. print ('----------------------------')
  126. value = input(" Вы хотите продолжить? \n \n Если да, введите 1. \n \n Если нет, введите 0. \n \n " )
  127. if (value == 0):
  128. print ('----------------------------')
  129. print (" Спасибо за использование!")
  130. print ('----------------------------')
  131. sys.exit()
  132. elif (value == 1):
  133. start()
  134. #Найти тангенс
  135. if (value == 7):
  136. x = float(input(" Введите число: "))
  137. print ('----------------------------')
  138. print (tan(x))
  139. print ('----------------------------')
  140. value = input(" Вы хотите продолжить? \n \n Если да, введите 1. \n \n Если нет, введите 0. \n \n " )
  141. if (value == 0):
  142. print ('----------------------------')
  143. print (" Спасибо за использование!")
  144. print ('----------------------------')
  145. sys.exit()
  146. elif (value == 1):
  147. start()
  148. #Найти котангенс
  149. if (value == 8):
  150. x = float(input(" Введите число: "))
  151. tan = tan(x)
  152. print ('----------------------------')
  153. print (1/tan)
  154. print ('----------------------------')
  155. value = input(" Вы хотите продолжить? \n \n Если да, введите 1. \n \n Если нет, введите 0. \n \n " )
  156. if (value == 0):
  157. print ('----------------------------')
  158. print (" Спасибо за использование!")
  159. print ('----------------------------')
  160. sys.exit()
  161. elif (value == 1):
  162. start()
  163.  
  164. if (value == 9):
  165.  
  166. fig = plt.figure()
  167.  
  168. ax = fig.add_subplot(111)
  169. rect = ax.patch
  170. rect.set_facecolor('white')
  171. rect.set_alpha(0)
  172. print("")
  173. x = np.arange(input(" Введите точку x: "))
  174. y = input(" Введите выражение y: ")
  175.  
  176. ax.plot(x, y, 'black')
  177.  
  178. xax = ax.xaxis
  179.  
  180. xlocs = xax.get_ticklocs()
  181. xlabels = xax.get_ticklabels()
  182. xlines = xax.get_ticklines()
  183.  
  184. # вспомогательная сетка для главных делений
  185. ax.grid(True, which=u'major', color='w', linewidth=2., linestyle='solid')
  186.  
  187. # вспомогательная сетка для вспомогательных делений
  188. ax.grid(True, which=u'minor', color='w')
  189.  
  190.  
  191. # Ось абсцисс
  192. for label in ax.xaxis.get_ticklabels():
  193. # label - это экземпляр текста Text
  194. label.set_color('black')
  195. label.set_rotation(-45)
  196. label.set_fontsize(15)
  197.  
  198. # Ось ориднат
  199. for line in ax.yaxis.get_ticklines():
  200. # line - это экземпляр плоской линии Line2D
  201. line.set_color('black') # задаём цвет линии деления
  202. line.set_markersize(14) # задаём длину линии деления
  203. line.set_markeredgewidth(1.5) # задаём толщину линии деления
  204.  
  205. save('pic_8_1_1', fmt='png')
  206.  
  207. for label in xlabels:
  208. # цвет подписи деленений оси OX
  209. label.set_color('black')
  210. # поворот подписей деленений оси OX
  211. label.set_rotation(45)
  212. # размер шрифта подписей делений оси OX
  213. label.set_fontsize(12)
  214.  
  215. plt.show()
  216. print ('----------------------------')
  217. value = input(" Вы хотите продолжить? \n \n Если да, введите 1. \n \n Если нет, введите 0. \n \n " )
  218. if (value == 0): # FIXME: Выходит не с первого раза..
  219. print ('----------------------------')
  220. print (" Спасибо за использование!")
  221. print ('----------------------------')
  222. sys.exit()
  223. elif (value == 1):
  224. start()
Add Comment
Please, Sign In to add comment