Advertisement
MeShootIn

7 laba

Nov 21st, 2017
175
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 5.29 KB | None | 0 0
  1. #---------------------------------
  2. #СПИСОК ПОКУПОК
  3. #---------------------------------
  4. def scan():
  5.     return list(input().split())
  6.  
  7.  
  8. shopping_list = []
  9.  
  10. print("Команды: add (добавление), sort (сортировка), show (показать список), stop (выход)")
  11.  
  12. while True:
  13.     query = scan()
  14.     if query[0] == "add":
  15.         shopping_list.append(query[1])
  16.     if query[0] == "sort":
  17.         shopping_list.sort()
  18.     if query[0] == "show":
  19.         for i in range(len(shopping_list)):
  20.             print(i + 1, shopping_list[i])
  21.     if query[0] == "stop":
  22.         break
  23. #---------------------------------
  24. #КОМПЛЕКСНЫЕ ЧИСЛА
  25. #---------------------------------
  26. def scan_float():
  27.     return list(map(float, input().split()))
  28.  
  29. def complex_print(a, b):
  30.     return "(" + ("%.3f" % a) + ", " + ("%.3f" % b) + ")"
  31.  
  32. def complex_abs(a, b):
  33.     return "%.3f" % (a ** 2 + b ** 2)
  34.  
  35. def complex_sum(a, b, c, d):
  36.     return complex_print(a + c, b + d)
  37.  
  38. def complex_difference(a, b, c, d):
  39.     return complex_print(a - c, b - d)
  40.  
  41. def complex_composition(a, b, c, d):
  42.     return complex_print(a * c - b * d, b * c + a * d)
  43.  
  44. def complex_quotient(a, b, c, d):
  45.     Re = (a * c + b * d) / (c ** 2 + d ** 2)
  46.     Im = (b * c - a * d) / (c ** 2 + d ** 2)
  47.     return complex_print(Re, Im)
  48.  
  49. print("Введите A: ")
  50. number1 = scan_float()
  51. print("Введите B: ")
  52. number2 = scan_float()
  53. a = number1[0]
  54. b = number1[1]
  55. c = number2[0]
  56. d = number2[1]
  57.  
  58. print("Комплексные числа:")
  59. print("A = ", complex_print(a, b))
  60. print("B = ", complex_print(c, d))
  61. print("Результаты вычислений:")
  62. print("|A| = ", complex_abs(a, b))
  63. print("|B| = ", complex_abs(c, d))
  64. print("A + B = ", complex_sum(a, b, c, d))
  65. print("A - B = ", complex_difference(a, b, c, d))
  66. print("B - A = ", complex_difference(c, d, a, b))
  67. print("A * B = ", complex_composition(a, b, c, d))
  68. print("A / B = ", complex_quotient(a, b, c, d))
  69. print("B / A = ", complex_quotient(c, d, a, b))
  70. #---------------------------------
  71. #ДАННЫЕ О ТОВАРАХ
  72. #---------------------------------
  73. def scan_int():
  74.     return list(map(int, input().split()))
  75.  
  76. def show(info):
  77.     print("Номер\tНазвание\tКоличество\tЦена")
  78.     for i in range(len(info)):
  79.         print(i + 1, end = "\t")
  80.         for j in range(len(info[i])):
  81.             print(info[i][j], end = "\t\t")
  82.         print()
  83.  
  84. def change(info, index, value):
  85.     info[index - 1][1] = value
  86.     return info
  87.  
  88. info = [["cake", 100, 40], ["banana", 50, 28], ["juice", 30, 35], ["burger", 20, 39]]
  89.  
  90. show(info)
  91.  
  92. while True:
  93.     query = scan_int()
  94.     if query[0] != 0:
  95.         info = change(info, query[0], query[1])
  96.     else:
  97.         show(info)
  98.         break
  99. #---------------------------------
  100. #СТУДЕНТЫ
  101. #---------------------------------
  102. def scan():
  103.     return list(input().split())
  104.  
  105. n = int(input())
  106.  
  107. student = []
  108. average = 0
  109.  
  110. for i in range(n):
  111.     query = scan()
  112.     query[2] = int(query[2])
  113.     average += query[2]
  114.  
  115.     student.append(query)
  116.  
  117. average /= n
  118.  
  119. for i in range(n):
  120.     if student[i][2] > average:
  121.         for info in student[i]:
  122.             print(info, end = " ")
  123.         print()
  124. #---------------------------------
  125. #ДАННЫЕ О ТОВАРАХ***********
  126. #---------------------------------
  127. def scan():
  128.     return list(input().split())
  129.  
  130. def by_name(element):
  131.     return element[0]
  132.  
  133. def by_count(element):
  134.     return element[1]
  135.  
  136. def by_price(element):
  137.     return element[2]
  138.  
  139. def add(info, product):
  140.     info.append(product)
  141.     return info
  142.  
  143. def show(info, field):
  144.     info.sort(key = field)
  145.     print("Номер\tНазвание\tКоличество\tЦена")
  146.     for i in range(len(info)):
  147.         print(i + 1, end = "\t")
  148.         for j in range(len(info[i])):
  149.             print(info[i][j], end = "\t\t")
  150.         print()
  151.  
  152. def delete(info, index):
  153.     info.pop(index)
  154.     return info
  155.  
  156. def get_price(info, index):
  157.     return info[index][1] * info[index][2]
  158.  
  159. def get_total_price(info):
  160.     total_price = 0
  161.     for i in range(len(info)):
  162.         total_price += get_price(info, i)
  163.     return total_price
  164.  
  165. def edit(info, index, name, count, price):
  166.     info[index][0] = name
  167.     info[index][1] = count
  168.     info[index][2] = price
  169.  
  170. info = [["banana", 50, 28], ["burger", 20, 39], ["cake", 100, 40], ["juice", 30, 35]]
  171. field = by_name
  172.  
  173. while True:
  174.     query = scan()
  175.     command = query[0]
  176.     if command == "show":
  177.         show(info, field)
  178.     if command == "add":
  179.         query[2] = int(query[2])
  180.         query[3] = int(query[3])
  181.         info = add(info, query[1 : ])
  182.     if command == "edit":
  183.         index = int(query[1]) - 1
  184.         edit(info, index, query[2], int(query[3]), int(query[4]))
  185.     if command == "delete":
  186.         delete(info, int(query[1]) - 1)
  187.     if command == "price":
  188.         print(get_price(info, int(query[1]) - 1))
  189.     if command == "total":
  190.         print(get_total_price(info))
  191.     if command == "sort":
  192.         field = query[2]
  193.         if field == "name":
  194.             field = by_name
  195.         if field == "count":
  196.             field = by_count
  197.         if field == "price":
  198.             field = by_price
  199.         show(info, field)
  200.     if command == "0":
  201.         break
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement