Advertisement
Guest User

Untitled

a guest
Jun 16th, 2019
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.21 KB | None | 0 0
  1. import random
  2. import sys
  3.  
  4. N = random.randint(1, 8)
  5. print("Количество типов изделий:", N)
  6. I = [] # заводим пустой список
  7. for w in range(N):
  8. I.append(random.randint(1, 10))
  9. print("Количество изделий каждого типа \n", I)
  10. IT = [] # заводим пустой список
  11. for w in range(N):
  12. IT.append(random.randint(5, 50))
  13. print("Время на изготовление всех деталей каждого из типов изделий \n", IT)
  14. D = [] # заводим пустой список
  15. for w in range(N):
  16. D.append(random.randint(1, 10))
  17. print("Количество деталей в каждом изделии\n", D)
  18. P = [] # заводим пустой список
  19. for w in range(N):
  20. P.append(random.randint(5, 50))
  21. print("Время переналадки конвейера на каждый тип изделий \n", P)
  22. delta = 0
  23. # T = [] # заводим пустой список
  24. # for w in range(N):
  25. # T.append(IT[w]*I[w])
  26. # print("Время изготовления деталей изделий \n",T)
  27. tpr = IT[0] * I[0]
  28. tok = IT[0] * I[0]
  29. T = []
  30. T.append(IT[0] * I[0])
  31. for w in range(1, N):
  32. T.append(IT[w] * I[w] - delta)
  33. Tu = []
  34. for j in range(D[w - 1]):
  35. Tu.append(random.randint(5, 50)) # время установки каждой детали
  36. tcurr = max(Tu) + 2 * sum(Tu) + P[w]
  37. while tcurr < (95 * T[w] / 100):
  38. ms = sys.maxsize
  39. m = 0
  40. for k in range(D[w - 1]):
  41. if Tu[k] + Tu[k + 1] < ms:
  42. ms = Tu[k] + Tu[k + 1]
  43. m = k
  44. Tu[m] = ms
  45. for e in range(m + 1, D[w - 1] - 1):
  46. Tu[e] = Tu[e + 1]
  47. D[w - 1] = D[w - 1] - 1
  48. if tcurr < T[w]:
  49. tok = tok + T[w]
  50. tpr = tpr + T[w] - tcurr
  51. if tcurr >= T[w]:
  52. tok = tok + tcurr
  53. delta = tcurr - T[w]
  54. tok = tok + 2 * sum(T) + max(T)
  55. print("Количество мест в конвейере для каждого изделия", D)
  56. print("Общее время работы конвейера", tok)
  57. print("Производительность конвейера", (tok + tpr) / tok)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement