UTS Fakhri Saputra
3. A
from numpy import *
g = 9.82 a = 0 m1 = eval(input("massa benda 1 (kg): ")) m2 = eval(input("massa benda 2 (kg): ")) m3 = eval(input("massa benda 3 (kg): ")) u1 = eval(input("koefisien gesek benda 1: ")) u2 = eval(input("koefisien gesek benda 2: ")) u3 = eval(input("koefisien gesek benda 3: ")) alphadeg = eval(input("sudut kemiringan (degrees): ")) alpha = (alphadeg / 180) * pi sina = sin(alpha) cosa = cos(alpha) b1 = m1 * g * (sina + u1 * cosa) + m1 * a b2 = m2 * g * (sina + u2 * cosa) + m2 * a b3 = m3 * g * (sina + u3 * cosa) + m3 * a
b = array([b1, b2, b3], float)
kt = array([[1, 0, 0], [-1, 1, 0], [0, -1, 1]], float)
t = linalg.solve(kt, b) t1 = t[0] t2 = t[1] t3 = t[2]
print(f't1 = {t1}, t2 = {t2}, t3 = {t3}')
B.
from math import *
g = 9.81 m = eval(input("massa mobil (kg): ")) cd = eval(input("koefisien drag: ")) ut = eval(input("koefisien gesek roda: ")) amobil = eval(input("percepatan mobil (m/s^2): ")) vmax = eval(input("kecepatan yang dicapai (km/h): ")) v = vmax * (1000 / 3600) vo = 0 to = 0 h = 0.01
fmob = m * a fges = ut * m * g fdr = cd * v ** 1.5 atot = (fmob - fges - fdr) / m
def f(v, t): return (v / atot) - t
def rungekutta(vo, to, v, h):
n = int((v - vo)/h) t = to for i in range(1, n + 1): k1 = h * f(vo, t) k2 = h * f(vo + 0.5 * h, t + 0.5 * k1) k3 = h * f(vo + 0.5 * h, t + 0.5 * k2) k4 = h * f(vo + h, t + k3) t = t + (1 / 6) * (k1 + 2 * k2 + 2 * k3 + k4) vo = vo + h return t
print(f'waktu yang dibutuhkan untuk mencapai {vmax} km/h adalah {rungekutta(vo, to, v, h)}')