Untitled

 avatar
unknown
plain_text
2 months ago
1.5 kB
5
Indexable
def parse_data(data):
    res = []
    num = ""
    line = []
    for i, item in enumerate(data):
        if item != "\n":
            num += item
            continue

        if num:
            f_num = float(num)
            line.append(f_num)
            num = ""
        if data[i + 1] == "\n":
            res.append(line)
            line = []
    return res

data = []
with open("physics_data.txt", "r") as file:
    data = [i for i in file.read().strip()]


sorted_data = parse_data(data)

for i, trial in enumerate(sorted_data):
    print(f"Trial: {i + 1}")
    m1, vi1, vf1, m2, vi2, vf2 = trial
    print(f"Initial Momentum Cart 1: {round(m1 * vi1, 2)} kg m/s")
    print(f"Initial Momentum Cart 2: {round(m2 * vi2, 2)} kg m/s")
    print(f"Final Momentum Cart 1: {round(m1 * vf1, 2)} kg m/s")
    print(f"Final Momentum Cart 2: {round(m2 * vf2, 2)} kg m/s")
    print(f"Initial KE Cart 1: {round(0.5 * m1 * (vi1 ** 2), 2)} J")
    print(f"Initial KE Cart 2: {round(0.5 * m2 * (vi2 ** 2), 2)} J")
    print(f"Final KE Cart 1: {round(0.5 * m1 * (vf1 ** 2), 2)} J")
    print(f"Final KE Cart 2: {round(0.5 * m2 * (vf2 ** 2), 2)} J")
    print(f"Initial Total Momentum: {round(m1 * vi1 + m2 * vi2, 2)} kg m/s")
    print(f"Final Total Momentum: {round(m1 * vf1 + m2 * vf2, 2)} kg m/s")
    print(f"Initial Total KE : {round(0.5 * m1 * (vi1 ** 2) + 0.5 * m2 * (vi2 ** 2), 2)} J")
    print(f"Final Total KE : {round(0.5 * m1 * (vf1 ** 2) + 0.5 * m2 * (vf2 ** 2), 2)} J")
    print()
Editor is loading...
Leave a Comment