Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

66 строки
2.7 KiB
Markdown

# Индивидуальное контрольное задание
Бушманов Артём, А-01-23
## Задание:
1) Создайте список с 5 фамилиями сотрудников некоторой фирмы (фамилии придумайте сами). Создайте кортеж с 5 числовыми элементами - окладами сотрудников из списка.
2) Запросите у пользователя и введите символьную строку с названием фирмы (латиницей). Удалите из названия пробелы.
3) Создайте словарь с именем - названием фирмы, ключами - фамилиями сотрудников из списка и значениями - их окладами из кортежа. Отобразите словарь.
4) Рассчитайте среднее значение оклада сотрудников фирмы и отобразите с заголовком.
5) Запишите список, кортеж и словарь в бинарный файл с именем - названием фирмы и расширением '.bin'.
## Решение:
```python
import pickle
familii = ['Ivanov', 'Petrov', 'Sidorov', 'Smirnov', 'Kuznetsov']
okladi = (40000, 45000, 42000, 48000, 50000)
namefirmi= input("Введите название фирмы латиницей: ")
namefirmi = namefirmi.replace(' ', '')
print("Название фирмы (без пробелов):", namefirmi)
exec(namefirmi + " = {}")
i = 0
while i < len(familii):
fam = familii[i]
pay = okladi[i]
exec(namefirmi + "['" + fam + "'] = " + str(pay))
i = i + 1
print("Словарь с данными по сотрудникам:")
firm_dict = eval(namefirmi)
print(firm_dict)
summa = 0
j = 0
while j < len(okladi):
summa = summa + okladi[j]
j = j + 1
itog = summa / len(okladi)
print("Средний оклад сотрудников фирмы:", itog)
file_name = namefirmi + '.bin'
fp = open(namefirmi, 'wb')
pickle.dump(familii, fp)
pickle.dump(okladi, fp)
pickle.dump(eval(namefirmi), fp)
fp.close()
print("Данные записаны в файл:", file_name)
```
## *Проверка:*
```python
Введите название фирмы латиницей: FDSFSDv
Название фирмы (без пробелов): FDSFSDv
Словарь с данными по сотрудникам:
{'Ivanov': 40000, 'Petrov': 45000, 'Sidorov': 42000, 'Smirnov': 48000, 'Kuznetsov': 50000}
Средний оклад сотрудников фирмы: 45000.0
Данные записаны в файл: FDSFSDv.bin
```