Advertisement
Guest User

Untitled

a guest
Jan 20th, 2018
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.59 KB | None | 0 0
  1. y1l=[]
  2. y2l=[]
  3. y3l=[]
  4. ml=[]
  5.  
  6.  
  7. xs = float(input('Введите начальное значение: '))
  8. xst = float(input('Введите шаг: '))
  9. xe = float(input('Введите конечено значение: '))
  10. x=xs
  11. maxy1=0
  12. mixy1=(x**3) - 14.5*(x**2) + 60.7*x - 71
  13.  
  14. print('┌────────┬────────┬────────┬────────┐')
  15. print('│ X │ Y1 │ Y2 │ Y3 │')
  16. print('├────────┼────────┼────────┼────────┤')
  17.  
  18. while round(x, 8)<=xe:
  19. y1l.append( (x**3) - 14.5*(x**2) + 60.7*x - 71 )
  20. y2l.append( x - 1.4**x )
  21. y3l.append( y1l[-1]+y2l[-1] )
  22.  
  23. if y1l[-1] > maxy1:
  24. maxy1=y1l[-1]
  25. elif y1l[-1] < mixy1:
  26. mixy1=y1l[-1]
  27.  
  28. print('│{:8.4f}│{:8.4f}│{:8.4f}│{:8.4f}│'.format(x,y1l[-1],y2l[-1],y3l[-1]))
  29. x+=xst
  30.  
  31. print ('└────────┴────────┴────────┴────────┘')
  32.  
  33. rz = maxy1 - mixy1
  34.  
  35.  
  36. print('Разность между максимальным и минимальным значением y1: {:4.4f}'\
  37. .format(rz))
  38. print('График функции y1')
  39. x=0
  40. my=80
  41. middle = round( (my/2)*((abs(mixy1) - mixy1)/(rz) ))
  42. print(' xxx xxx xxx xxx xxx xxx xxx xxx')
  43. y=0
  44. print(' ',end='')
  45. styy=round((rz/7)+1.686)
  46. yy=-140
  47. while y < my:
  48. if (middle-abs(y))%12==0:
  49. print('{2.4f}',end='')
  50. yy+=styy
  51. else:
  52. print(' ',end='')
  53. y+=1
  54. print()
  55. if xs>0 and xe>0:
  56. print(' ',end='')
  57. y=0
  58. while y < my:
  59. if y == my-1:
  60. print('─→Y',end='')
  61. elif y==middle:
  62. print('┼',end='')
  63. elif (middle-abs(y))%12==0 :
  64. print('┴',end='')
  65. else:
  66. print('─',end='')
  67. y+=1
  68. print()
  69. while x < len(y1l):
  70. y=0
  71. rx = (x*xst)+xs
  72. curm = (my*( y1l[x] - mixy1)/( maxy1 - mixy1 ))
  73. print('{:7.2f}'.format(rx),end='')
  74. while y <= my:
  75. if round(curm) < middle and rx!=0 and x!=len(y1l)-2 and x!=len(y1l)-1:
  76. print(' '*round(curm) + '*' + ' '*round(middle-curm-1)+'│',end='')
  77. break
  78. elif round(curm) > middle and rx!=0 and x!=len(y1l)-2 and x!=len(y1l)-1:
  79. print(' '*middle+'│'+' '*round((curm-middle)-1)+'*',end='')
  80. break
  81. elif round(curm) == middle and rx != 0 and x!=len(y1l)-2 and x!=len(y1l)-1:
  82. print(' '*middle+'*',end='')
  83. break
  84. if y == round(curm):
  85. print('*',end='')
  86. elif rx == 0 and y == middle:
  87. print('┼',end='')
  88. elif rx == 0 and y == my:
  89. print('→Y',end='')
  90. elif x == len(y1l)-2 and y == middle:
  91. print('↓',end='')
  92. elif x == len(y1l)-1 and y == middle:
  93. print('X',end='')
  94. elif round(rx,2) == 0 and (middle-abs(y))%12==0:
  95. print('┴',end='')
  96. elif y == middle:
  97. print('│',end='')
  98. elif rx ==0:
  99. print('─',end='')
  100. else:
  101. print(' ',end='')
  102. y+=1
  103. x+=1
  104. print()
  105. if xs<0 and xe<0:
  106. print(' ',end='')
  107. y=0
  108. while y < my:
  109. if y == my-1:
  110. print('─→Y',end='')
  111. elif y==middle:
  112. print('┼',end='')
  113. elif (middle-abs(y))%12==0:
  114. print('┴',end='')
  115. else:
  116. print('─',end='')
  117. y+=1
  118. print()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement