Предмет: Информатика, автор: shagapova14aisily

Напишите программу, которая добавит в похлебку несколько случайных ингредиентов из списка и подсчитает калорийность.

Формат ввода
Вводится строка имеющихся ингредиентов через запятую и пробел.

Затем вводится целое число n – сколько их предполагается взять.

Затем два целых числа через пробел – диапазон количества для каждого ингредиента.

Затем вещественное число – максимальное значение калорийности для продуктов.

Формат вывода
Нужно сформировать строки по заданному количеству в виде:

of pieces, calorie content kkal, total caloric

Name – выбранный случайным образом ингредиент (с большой буквы), они не должны повторяться,

number – случайное число из введенного диапазона, повторения возможны,

calorie value – случайное число от 0 до максимальной калорийности с точностью до 2 знаков после запятой, повторения возможны;

full_value – общая калорийность продукта: количество * калорийность 1 штуки, точность – не более 2 знаков после запятой.

помогите пожалуйста


yotyb0177: Какой язык программирования?

Ответы

Автор ответа: ugurabbasov65
0

Пример решения на языке Python:

python

Copy code

import random

ingredients = input("Введите список ингредиентов через запятую: ").split(", ")

n = int(input("Сколько ингредиентов нужно добавить в похлебку? "))

min_qty, max_qty = map(int, input("Введите диапазон количества для каждого ингредиента (минимум максимум): ").split())

max_cal = float(input("Введите максимальное значение калорийности для продуктов: "))

# Создаем пустой список для хранения выбранных ингредиентов

chosen_ingredients = []

# Добавляем случайные ингредиенты из списка в соответствии с заданным количеством

for i in range(n):

   # Выбираем случайный ингредиент, который еще не был выбран

   ingredient = random.choice(list(set(ingredients) - set(chosen_ingredients)))

   chosen_ingredients.append(ingredient)

   # Выбираем случайное количество ингредиента из заданного диапазона

   qty = random.randint(min_qty, max_qty)

   # Выбираем случайное значение калорийности из диапазона от 0 до максимального

   calorie_value = round(random.uniform(0, max_cal), 2)

   # Вычисляем общую калорийность для данного ингредиента

   full_value = round(qty * calorie_value, 2)

   # Выводим информацию о выбранном ингредиенте

   print(f"{qty} pieces, calorie content {calorie_value} kkal, total caloric {full_value} kkal")

   print(ingredient.capitalize())

Пример ввода:

Copy code

Введите список ингредиентов через запятую: морковь, картофель, лук, сливки

Сколько ингредиентов нужно добавить в похлебку? 3

Введите диапазон количества для каждого ингредиента (минимум максимум): 50 100

Введите максимальное значение калорийности для продуктов: 200

Пример вывода:

css

Copy code

74 pieces, calorie content 123.77 kkal, total caloric 9146.98 kkal

Морковь

62 pieces, calorie content 37.88 kkal, total caloric 2347.56 kkal

Лук

54 pieces, calorie content 138.64 kkal, total caloric 7475.36 kkal

Картофель

Атрибуты:

ingredients - список доступных ингредиентов

n - количество случайных ингредиентов, которые нужно добавить в похлебку

min_qty - минимальное количество ингредиента для выбора

max_qty - максимальное количество ингредиента для выбора

max_cal - максимальное значение калорийности для продуктов

Методы:

нет дополнительных методов, только стандарт

Автор ответа: pupkinll2016
0

Ответ:

Для решения данной задачи можно использовать модуль random для выбора случайных ингредиентов и параметров их количества и калорийности. Для хранения информации об ингредиентах и их калорийности можно использовать словарь.

Вот пример решения на языке Python:

Объяснение:

import random

# словарь с ингредиентами и их калорийностью

ingredients = {'carrots': 41, 'potatoes': 77, 'onions': 40, 'cabbage': 25, 'beets': 49}

# ввод данных

ingredient_list = input().split(', ')

n = int(input())

min_qty, max_qty = map(int, input().split())

max_cal = float(input())

# выбор случайных ингредиентов

chosen_ingredients = random.sample(ingredients.keys(), n)

# вывод данных

for ing in chosen_ingredients:

qty = random.randint(min_qty, max_qty)

cal = round(random.uniform(0, max_cal), 2)

full_cal = round(qty * ingredients[ing] * cal / 100, 2)

print(f"{qty} pieces, calorie content {cal} kkal, total caloric {full_cal}")

Похожие вопросы