Postingan lainnya
Buku Ini Koding!
Baru!
Buku ini akan jadi teman perjalanan kamu belajar sampai dapat kerjaan di dunia programming!
Hasil kodingan python none
halo kak saya sedang membuat tugas komputasi menggunakan algoritma bisection, tp pada saat input nilai toleransi, hasil yg keluar adalah none. berikut kodingan saya
#Definisikan Fungsi
def bisection (eq, a, b, tol):
fa, fb = eq(a), eq(b)
if fa*fb>0:
raise Exception ("coba angka lain")
while (abs(a-b)>tol):
c=(a+b)/2
f=eq(c)
if f*fa > 0:
a = c
else:
b = c
return c
#persamaan satu#
import math
def fn(x):
return math.exp(0.2*x)-math.exp(-0.8*x)-2
#Meminta user masukan nilai tebakan awal
while True:
a = float(input('masukkan nilai a1: '))
b = float(input('masukkan nilai b1: '))
#cek apakah nilai akar ada diantara a dan b
if fn(a)*fn(b) > 0:
print ('tidak ada akar diantara a dan b')
else:
break
#meminta user masukan nilai toleransi
tol = float(input('masukkan nilai toleransi: '))
print(bisection (fn, a, b, tol))
#persamaan dua#
def fn(x):
return x*math.sin(x)-math.cos(x)
#meminta user masukan nilai tebakan awal
while True:
a = float(input('masukkan nilai a2: '))
b = float(input('masukkan nilai b2: '))
#cek apakah nilai akar ada diantara a dan b
if fn(a)*fn(b) > 0:
print('tidak ada akar diantara a dan b')
else:
break
#meminta user masukan nilai toleransi
tol = float(input('masukkan nilai toleransi2: '))
print (bisection (fn, a, b, tol))
#persamaan tiga#
def fn(x):
return 1/((x-0.3)**2+(0.01))-1/((x-0.8)**2+(0.04))
#meminta user masukan nilai tebakan awal
while True:
a = float(input('masukkan nilai a3: '))
b = float(input('masukkan nilai b3: '))
#cek apakah nilai akar ada diantara a dan b
if fn(a)*fn(b) > 0:
print('tidak ada akar diantara a dan b')
else:
break
#meminta user masukkan nilai toleransi
tol = float(input('masukkan nilai toleransi3: '))
print (bisection(fn, a, b, tol))
#persamaan empat#
def fn(x):
return math.cos(x)-2*math.sin(x)
while True:
a = float(input('masukkan nilai a4: '))
b = float(input('masukkan nilai b4: '))
#cek apakah nilai akar ada diantara a dan b
if fn(a)*fn(b) > 0:
print('tidak ada akar diantara a dan b')
else:
break
#meminta user masukkan nilai toleransi
tol = float(input('masukkan nilai toleransi4: '))
print(bisection(fn, a, b, tol))
0