4. В массиве содержится информация о цене 10 автомобилей. Необходимо вычислить общую стоимость самого дорогого автомобиля и
Массив содержит информацию о цене 10 автомобилей. Необходимо вычислить общую стоимость самого дорогого автомобиля и выяснить его индекс. В случае наличия нескольких автомобилей с максимальной ценой, определить: а) индекс первого из них; б) индекс последнего из них.
Решение:
Для решения этой задачи нам понадобится пройтись по всем элементам массива и найти максимальную цену. Для этого используем цикл, который будет итерироваться по всем элементам массива.
1. Создаем переменную
max_price
и присваиваем ей значение 0.
2. Создаем переменную
max_index
и присваиваем ей значение -1.
3. Запускаем цикл, который будет проходить по всем элементам массива.
4. На каждой итерации проверяем, является ли текущий элемент больше значения переменной
max_price
.
5. Если текущий элемент больше
max_price
, то обновляем значения переменных
max_price
и
max_index
соответственно.
6. По завершении цикла, в переменной
max_price
будет содержаться общая стоимость самого дорогого автомобиля, а в переменной
max_index
— его индекс.
7. Если в массиве есть несколько машин с максимальной ценой, то индекс первого из них будет содержаться в переменной
max_index
.
8. Чтобы найти индекс последнего автомобиля с максимальной ценой, просто запустим еще один цикл, который будет проходить по всем элементам массива в обратном порядке, и обновим значение переменной
max_index
только если найдем машину с максимальной ценой.
9. По завершении цикла, в переменной
max_index
будет содержаться индекс последнего автомобиля с максимальной ценой.
Пример использования:
Предположим, что у нас есть массив
prices
с информацией о цене 10 автомобилей:
python prices = [15000, 25000, 35000, 45000, 35000, 55000, 65000, 75000, 85000, 95000]
Применяем алгоритм:
python max_price = 0 max_index = -1 for i in range(len(prices)): if prices[i] > max_price: max_price = prices[i] max_index = i last_max_index = -1 for i in range(len(prices)-1, -1, -1): if prices[i] == max_price: last_max_index = i break print("Общая стоимость самого дорогого автомобиля:", max_price) print("Индекс первого из самых дорогих автомобилей:", max_index) print("Индекс последнего из самых дорогих автомобилей:", last_max_index)
Совет:
В случае, если вы столкнетесь с задачей на поиск экстремума в массиве, может быть полезно использовать переменные для хранения текущего максимального значения и его индекса. Например, в данной задаче мы использовали переменные
max_price
и
max_index
для поиска самой высокой цены и ее индекса в массиве.
Задание для закрепления:
Дан массив
prices
с информацией о цене 6 автомобилей:
python prices = [30000, 20000, 40000, 20000, 50000, 30000]
Вычислите общую стоимость самого дорогого автомобиля и определите его индекс. Если есть несколько автомобилей с максимальной ценой, найдите индекс первого и последнего из них.