Задача ** языке питон: Прочитать из файла “diag3.txt” последовательность пар вещественных...

0 голосов
29 просмотров

Задача на языке питон:
Прочитать из файла “diag3.txt” последовательность пар вещественных чисел, где первое число соответствует углу поворота коленчатого вала, а второе - давлению в цилиндре дизеля. Определить среденее, максимальное и минимальное давление, наибольшую скорость нарастания давления и угол поворота коленчатого вала, при котором она зафиксирована.


Информатика (18 баллов) | 29 просмотров
0

Скорость нарастания давления зависит от длительности интервалов отсчетов, а где в задаче задана длительность интервалов отсчетов ?

Дан 1 ответ
0 голосов

1. Код на Python3 (!)
2. Файл в одной папке со скриптом

--- КОД ПРОГРАММЫ НИЖЕ ---


# -*- coding: utf-8 -*-
import sys, os

file = open(os.path.join(sys.argv[0], "diag3.txt"))
a = {}
for line in file.readlines():
pair = line.split()
a[float(pair[0])] = float(pair[1])
file.close()
keys = list(a.keys())
vals = list(a.values())
avg_p = sum(vals) / float(len(vals))
max_p = max(vals)
min_p = min(vals)
deltas = [vals[m]-vals[m-1] for m in range(1, len(vals))]
max_d = max(deltas)
min_d = min(deltas)
min_d_i = deltas.index(min_d)
near_d_0 = (keys[min_d_i-1], keys[min_d_i])
print("Среднее давление: {}".format(avg_p))
print("Максимальное давление: {}".format(max_p))
print("Минимальное давление: {}".format(min_p))
print("Наибольшая скорость нарастания давления: {}".format(max_d))
print("Угол поворота при зафиксированной скорости нарастания: {} <= a <= {}".format(near_d_0[0], near_d_0[1]))

(7.2k баллов)