Код:
file = open("input.txt", "r") #открытие для чтения
course = list(map(float, file.readline().split())) #список из 1 строки
euro = list(map(float, file.readline().split())) # из 2
dollar = list(map(float, file.readline().split())) # из 3
file.close() #файл закрывается
sum_dollar = 0
sum_euro = 0
for i in euro: #сумма в евро
sum_euro += i
for i in dollar: #сумма в долларах
sum_dollar += i
sum = sum_euro + sum_dollar * (course[0] / course[1]) # перевод всего евро
file = open("output.txt", "w+") #открытие файла или создание нового, если нету файла с таким названием
file.write(str(round(sum, 2)) + "\n") #запись 1 строки
file.write(str(round(sum / (len(euro) + len(dollar)), 2))) #запись 2 строки
file.close()
Для работы достаточно файла input.tx с заполненными значениями (количество элементов во 2 и 3 строке может быть любое)
(функция round(x, y) округляет число Х до Y знаков после запятой)
(В примере неправильно посчитано, поэтому вывод другой при тех же значениях)
Здесь ничего не написано про случай, если максимум = минимуму, поэтому его не учитываем.
Идея программы: просто ищем индекс первого максимального и первого минимального, а затем сравниваем их
Фрагмент кода:
int max = a[0], min = a[0];
int i_max = 0, i_min = 0;
for (int i = 1; i < n; i++) {
if (a[i] > max) {
max = a[i];
i_max = i;
}
if (a[i] < min) {
min = a[i];
i_min = min;
if (i_max > i_min)
cout << "MAX";
else if (i_min > i_max)
cout << "MIN";
Код:
file = open("input.txt", "r") #открытие для чтения
course = list(map(float, file.readline().split())) #список из 1 строки
euro = list(map(float, file.readline().split())) # из 2
dollar = list(map(float, file.readline().split())) # из 3
file.close() #файл закрывается
sum_dollar = 0
sum_euro = 0
for i in euro: #сумма в евро
sum_euro += i
for i in dollar: #сумма в долларах
sum_dollar += i
sum = sum_euro + sum_dollar * (course[0] / course[1]) # перевод всего евро
file = open("output.txt", "w+") #открытие файла или создание нового, если нету файла с таким названием
file.write(str(round(sum, 2)) + "\n") #запись 1 строки
file.write(str(round(sum / (len(euro) + len(dollar)), 2))) #запись 2 строки
file.close()
Для работы достаточно файла input.tx с заполненными значениями (количество элементов во 2 и 3 строке может быть любое)
(функция round(x, y) округляет число Х до Y знаков после запятой)
(В примере неправильно посчитано, поэтому вывод другой при тех же значениях)
Здесь ничего не написано про случай, если максимум = минимуму, поэтому его не учитываем.
Идея программы: просто ищем индекс первого максимального и первого минимального, а затем сравниваем их
Фрагмент кода:
int max = a[0], min = a[0];
int i_max = 0, i_min = 0;
for (int i = 1; i < n; i++) {
if (a[i] > max) {
max = a[i];
i_max = i;
}
if (a[i] < min) {
min = a[i];
i_min = min;
}
}
if (i_max > i_min)
cout << "MAX";
else if (i_min > i_max)
cout << "MIN";