Проверка результатов функции (процент от числа)
>>>>
colors = {1 : {'Желтый': 3.1, 'Красный': 96.9, 'Синий': 38.7},
2 : {'Желтый': 12.5, 'Черный': 87.5},
3 : {'Синий': 50.0, 'Черный': 50.0}}
n = int(input("Какой номер цвета? :"))
print()
print('Номер цвета:', n, 'C,U')
new_color = {}
for key in colors[n]:
print(key + ':', colors[n][key], '%')
print()
for s in colors.values():
new_color.update(colors[n])
x = float(input("Количество грамм краски?:"))
def procent(**new_color):
for key in new_color:
print(key, "->", round(x * (new_color[key] / 100), 2)) # находим процент от
числа
procent(**new_color)
>>>>
>>>>
Какой номер цвета? :1
Номер цвета: 1 C,U
Желтый: 3.1 %
Красный: 58.2 %
Синий: 38.7 %
Количество грамм краски?:567.3
Желтый -> 17.59
Красный -> 330.17
Синий -> 219.55
>>>>
Сумма всех цветов 567,31 отличается от заданной. Подскажите как устранить проблему?
Ответы (1 шт):
Автор решения: Tehnorobot
→ Ссылка
Вот один из вариантов решения:
colors = {1 : {'Желтый': 3.1, 'Красный': 96.9, 'Синий': 38.7},
2 : {'Желтый': 12.5, 'Черный': 87.5},
3 : {'Синий': 50.0, 'Черный': 50.0}}
n = int(input("Какой номер цвета? :"))
print()
print('Номер цвета:', n, 'C,U')
new_color = {}
for key in colors[n]:
print(key + ':', colors[n][key], '%')
print()
for s in colors.values():
new_color.update(colors[n])
x = float(input("Количество грамм краски?:"))
def procent(**new_color):
res = 0 # результирующая переменная
for key in new_color:
res += x * (new_color[key] / 100) # находим процент от числа
print(res)
procent(**new_color)