Bài 6
Đề bài: Nhập có số a (a > 0, a != 1) và giá trị x > 0.
Tính log_a(x) bằng công thức doi có so: log_a(x) = ln(x) / ln(a).
Kiểm tra: a^(log_a(x)) = x.
In các lôgarit có số khac nhau: log2, log10, ln.
Ví dụ: a = 3, x = 81
Kết quả:
log_3(81) = 4.0
Kiểm tra: 3^4 = 81.0 OK
log2(81) = 6.3399
log10(81) = 1.9085
ln(81) = 4.3944
Đăng nhập để giáo viên có thể giao bài và nhận bài nộp của bạn.
Câu trả lời
import math
a = float(input("Co so a (a>0, a!=1): "))
x = float(input("Gia tri x (x>0): "))
if a <= 0 or a == 1 or x <= 0:
print("Gia tri nhap khong hop le!")
else:
log_ax = math.log(x) / math.log(a)
print(f"\nlog_{a}({x}) = {round(log_ax, 6)}")
kiem_tra = a**log_ax
print(f"Kiem tra: {a}^{round(log_ax,6)} = {round(kiem_tra,6)} {'OK' if abs(kiem_tra-x)<1e-9 else 'Sai'}")
print(f"\nlog2({x}) = {round(math.log2(x), 6)}")
print(f"log10({x}) = {round(math.log10(x), 6)}")
print(f"ln({x}) = {round(math.log(x), 6)}")