Matematika#
Perkenalan#
Fitur matematika mencakup fungsi bawaan Python dan modul math lengkap, yang secara otomatis tersedia di VEXcode GO. Alat-alat ini memungkinkan Anda untuk melakukan segala hal mulai dari aritmatika dasar hingga trigonometri tingkat lanjut, pembulatan, dan operasi logaritma.
Gunakan fungsi dan konstanta ini untuk menghitung posisi, sudut, jarak, dan nilai numerik lainnya untuk robot Anda. Anda juga dapat mengkonversi antara derajat dan radian, mengevaluasi ekspresi, dan bekerja dengan nilai khusus seperti tak terhingga dan NaN.
Berikut adalah daftar fungsi matematika, konstanta, dan utilitas yang tersedia:
Fungsi Bawaan – Alat matematika umum yang disertakan dalam Python.
abs– Mengembalikan nilai absolut dari suatu angka.round– Membulatkan angka ke sejumlah tempat desimal yang ditentukan.min– Mengembalikan nilai terkecil dari nilai input.max– Mengembalikan nilai terbesar dari nilai input.sum– Menjumlahkan semua nilai dalam iterable.divmod– Mengembalikan hasil bagi dan sisa sebagai tuple.pow– Memangkatkan suatu angka, opsional dengan modulus.int– Mengonversi nilai menjadi bilangan bulat.float– Mengonversi nilai menjadi bilangan floating-point.
Konstanta – Nilai yang telah ditentukan sebelumnya dari modul math.
math.pi– Konstanta π (pi).math.tau– Konstanta tau (2π).math.e– Bilangan Euler, basis logaritma natural.
Trigonometri – Menghitung sudut dan hubungan antar sisi.
math.sin– Sinus suatu sudut dalam radian.math.cos– Kosinus sudut dalam radian.math.tan– Tangen sudut dalam radian.math.atan– Arctangen dari suatu nilai dalam radian.math.atan2– Arctangen y/x dalam radian, dengan mempertimbangkan kuadran.math.asin– Arcsin dari suatu nilai dalam radian.math.acos– Arccosine dari suatu nilai dalam radian.math.degrees– Mengonversi radian ke derajat.math.radians– Mengonversi derajat ke radian.
Pembulatan & Nilai Mutlak – Sesuaikan presisi atau arah.
math.ceil– Membulatkan ke bilangan bulat terdekat.math.floor– Membulatkan ke bawah ke bilangan bulat terdekat.math.trunc– Menghapus bagian desimal.math.fabs– Mengembalikan nilai absolut sebagai float.
Eksponen & Logaritma – Perhitungan pangkat, akar, dan logaritma.
math.pow– Memangkatkan suatu angka.math.sqrt– Mengembalikan akar kuadrat.math.exp– Menghitung e pangkat x.math.log– Hitung logaritma dari x.math.log10– Menghitung logaritma basis 10 dari x.
Operasi Bilangan Titik Mengambang – Memeriksa atau menguraikan nilai bilangan titik mengambang.
math.modf– Mengembalikan bagian pecahan dan bilangan bulat dari sebuah float.math.frexp– Menguraikan sebuah angka menjadi mantissa dan eksponen.math.fmod– Sisa dengan tanda dividen.math.copysign– Mengembalikan nilai dengan tanda yang lain.math.ldexp– Menghitungx * (2 ** exp).
Fungsi Bawaan#
Python menyediakan beberapa fungsi bawaan yang memungkinkan Anda melakukan operasi matematika di dalam proyek Anda.
abs#
abs mengembalikan nilai absolut dari suatu angka, dengan menghilangkan tanda negatif.
Usage:
abs(x)
Parameter |
Keterangan |
|---|---|
|
Bilangan bulat atau bilangan pecahan. |
def main():
# Get the absolute value of -10
abs_result = abs(-10)
console.print(abs_result)
# abs_result = 10
# Start threads — Do not delete
start_thread(main)
round#
round membulatkan angka ke sejumlah tempat desimal yang ditentukan.
Usage:
round(x, ndigits)
Parameter |
Keterangan |
|---|---|
|
Bilangan bulat atau bilangan pecahan. |
|
Opsional. Jumlah tempat desimal yang akan dibulatkan. Nilai default adalah 0. |
def main():
# Round 5.7 to the nearest integer
round_int_result = round(5.7)
console.print(round_int_result)
# round_int_result = 6
# Start threads — Do not delete
start_thread(main)
def main():
# Round 3.14159 to 2 decimal places
round_result = round(3.14159, 2)
console.print(round_result, precision=2)
# round_result = 3.14
# Start threads — Do not delete
start_thread(main)
min#
min mengembalikan nilai terkecil dari beberapa argumen atau sebuah iterable.
Usage:
min(arg1, arg2, …) or min(sequence)
Parameter |
Keterangan |
|---|---|
|
Angka-angka untuk perbandingan. |
|
Daftar, tuple, atau urutan lain yang berisi angka. |
def main():
# Get the smallest number from 3, 7, and 1
min_result = min(3, 7, 1)
console.print(min_result)
# min_result = 1
# Start threads — Do not delete
start_thread(main)
def main():
# Get the smallest value from a list
min_list_result = min([10, 4, 25, 1])
console.print(min_list_result)
# min_list_result = 1
# Start threads — Do not delete
start_thread(main)
max#
max mengembalikan nilai terbesar dari beberapa argumen atau sebuah iterable.
Usage:
max(arg1, arg2, …) or max(sequence)
Parameter |
Keterangan |
|---|---|
|
Angka-angka untuk perbandingan. |
|
Daftar, tuple, atau urutan lain yang berisi angka. |
def main():
# Get the largest number from 3, 7, and 1
max_result = max(3, 7, 1)
console.print(max_result)
# max_result = 7
# Start threads — Do not delete
start_thread(main)
def main():
# Get the largest value from a list
max_list_result = max([10, 4, 25, 1])
console.print(max_list_result)
# max_list_result = 25
# Start threads — Do not delete
start_thread(main)
sum#
sum menjumlahkan semua nilai dalam sebuah iterable, dengan nilai awal opsional.
Usage:
sum(sequence, start)
Parameter |
Keterangan |
|---|---|
|
Daftar, tuple, atau urutan lain yang berisi angka. |
|
Opsional. Nilai yang akan ditambahkan ke jumlah total. Nilai default adalah 0. |
def main():
# Calculate the sum of a list of numbers
sum_result = sum([1, 2, 3, 4, 5])
console.print(sum_result)
# sum_result = 15
# Start threads — Do not delete
start_thread(main)
def main():
# Calculate the sum of a list with a starting value of 10
sum_with_start = sum([1, 2, 3], 10)
console.print(sum_with_start)
# sum_with_start = 16
# Start threads — Do not delete
start_thread(main)
divmod#
divmod mengembalikan tuple yang berisi hasil bagi dan sisa dari operasi pembagian.
Usage:
divmod(a, b)
Parameter |
Keterangan |
|---|---|
|
Dividen. |
|
Pembagi. |
def main():
# Perform integer division and remainder of 10 / 3
divmod_result = divmod(10, 3)
console.print(divmod_result)
# divmod_result = (3, 1)
# Start threads — Do not delete
start_thread(main)
pow#
pow memangkatkan suatu angka dan secara opsional melakukan operasi modulus.
Usage:
pow(x, y, mod)
Parameter |
Keterangan |
|---|---|
|
Angka dasar. |
|
Eksponen. |
|
Opsional. Nilai modulus. Jika diberikan, mengembalikan |
def main():
# Calculate 2 raised to the power of 3
pow_result = pow(2, 3)
console.print(pow_result)
# pow_result = 8
# Start threads — Do not delete
start_thread(main)
int#
int mengkonversi angka atau string menjadi bilangan bulat. Fungsi ini juga mendukung konversi basis saat mengkonversi dari string.
Usage:
int(x, base)
Parameter |
Keterangan |
|---|---|
|
Angka, string, atau objek lain yang akan dikonversi. |
|
Opsional. Basis angka yang digunakan untuk konversi. Nilai default adalah 10. |
def main():
# Convert a float to an integer to get rid of decimals
price = 19.99
price_int = int(price)
console.print("{} coins".format(price_int))
# Output: 19 coins
# Start threads — Do not delete
start_thread(main)
def main():
# Convert a string into an integer to use in calculations
user_input = "55"
user_number = int(user_input)
console.print(user_number * 2)
# Output: 110
# Start threads — Do not delete
start_thread(main)
float#
float mengubah angka atau string menjadi bilangan floating-point.
Usage:
float(x)
Parameter |
Keterangan |
|---|---|
|
Angka, string, atau objek lain yang akan dikonversi. |
# Convert division result to a float
num_apples = 6
num_people = 2
apples_per_person = float(num_apples) / num_people
robot.screen.print(apples_per_person)
# Output: 3.00
# Convert a string into a float to use in calculations
user_input = "23.4"
user_number = float(user_input)
robot.screen.print(user_number * 3)
# Output: 70.20
Modul Matematika#
Modul math di MicroPython menyediakan metode tambahan untuk melakukan perhitungan matematika umum. Metode-metode ini meliputi operasi trigonometri, logaritma, dan operasi numerik lainnya.
Modul math diimpor secara default di VEXcode.
Constants#
Konstanta adalah nilai yang telah ditentukan sebelumnya dan tetap konstan selama proyek berlangsung. Konstanta dapat digunakan dalam perhitungan tanpa memerlukan definisi atau penugasan apa pun.
pi#
pi memberikan konstanta matematika π, yaitu perbandingan antara keliling lingkaran dan diameternya.
Usage:
math.pi
def main():
# Calculate the area of a circle with radius 5 using pi
circle_area = math.pi * 5 * 5
console.print(circle_area, precision=2)
# circle_area = 78.54
# Start threads — Do not delete
start_thread(main)
tau#
tau memberikan nilai 2π.
Usage:
math.tau
def main():
# Calculate the circumference of a circle with radius
circumference = math.tau * 5
console.print(circumference, precision=2)
# circumference = 31.42
# Start threads — Do not delete
start_thread(main)
e#
e memberikan basis logaritma natural.
Usage:
math.e
def main():
# Calculate e raised to the power of 2
e_power = math.pow(math.e, 2)
console.print(e_power, precision=2)
# e_power = 7.39
# Start threads — Do not delete
start_thread(main)
Trigonometry#
dosa#
sin menghitung sinus suatu sudut dalam radian dan mengembalikan nilai float.
Usage:
math.sin(x)
Parameter |
Keterangan |
|---|---|
|
Bilangan desimal atau bilangan bulat yang mewakili sudut dalam radian. |
def main():
# Calculate the sine of
# 30 degrees in radians
result = math.sin(math.radians(30))
console.print(result, precision=2)
# result = 0.50
# Start threads — Do not delete
start_thread(main)
karena#
cos menghitung kosinus suatu sudut dalam radian dan mengembalikan nilai float.
Usage:
math.cos(x)
Parameter |
Keterangan |
|---|---|
|
Bilangan desimal atau bilangan bulat yang mewakili sudut dalam radian. |
def main():
# Calculate the cosine of
# 60 degrees in radians
result = math.cos(math.radians(60))
console.print(result, precision=2)
# result = 0.50
# Start threads — Do not delete
start_thread(main)
cokelat muda#
tan menghitung tangen suatu sudut dalam radian dan mengembalikan bilangan bulat.
Usage:
math.tan(x)
Parameter |
Keterangan |
|---|---|
|
Bilangan desimal atau bilangan bulat yang mewakili sudut dalam radian. |
def main():
# Calculate the tangent of
# 45 degrees in radians
result = math.tan(math.radians(45))
console.print(result)
# result = 1
# Start threads — Do not delete
start_thread(main)
asin#
asin menghitung invers sinus (arc sinus) dari suatu angka dan mengembalikan bilangan bulat yang mewakili sudut dalam radian.
Usage:
math.asin(x)
Parameter |
Keterangan |
|---|---|
|
Bilangan desimal atau bilangan bulat antara -1 dan 1. |
def main():
# Calculate the arc sine
# of 0.5 in degrees
result = math.degrees(math.asin(0.5))
console.print(result)
# result = 30
# Start threads — Do not delete
start_thread(main)
acos#
acos menghitung kosinus invers (kosinus busur) dari suatu angka dan mengembalikan bilangan bulat yang mewakili sudut dalam radian.
Usage:
math.acos(x)
Parameter |
Keterangan |
|---|---|
|
Bilangan desimal atau bilangan bulat antara -1 dan 1. |
def main():
# Calculate the arc cosine
# of 0.5 in degrees
result = math.degrees(math.acos(0.5))
console.print(result)
# result = 60
# Start threads — Do not delete
start_thread(main)
atan#
atan menghitung invers tangen (arc tangen) dari suatu angka dan mengembalikan bilangan bulat yang mewakili sudut dalam radian.
Usage:
math.atan(x)
Parameter |
Keterangan |
|---|---|
|
Bilangan desimal atau bilangan bulat. |
def main():
# Calculate the arc tangent
# of 1 in degrees
arc_tan = math.atan(1.0)
result = math.degrees(arc_tan)
console.print(result)
# result = 45
# Start threads — Do not delete
start_thread(main)
atan2#
atan2 menghitung nilai utama dari invers tangen y/x dan mengembalikan nilai float yang mewakili sudut dalam radian.
Usage:
math.atan2(y, x)
Parameter |
Keterangan |
|---|---|
|
Bilangan floating point atau integer yang mewakili koordinat y. |
|
Bilangan floating point atau integer yang mewakili koordinat x. |
def main():
# Calculate the inverse tangent
# of 1/1 in degrees
atan2 = math.atan2(1.0, 1.0)
result = math.degrees(atan2)
console.print(result)
# result = 45
# Start threads — Do not delete
start_thread(main)
derajat#
degrees mengkonversi sudut dari radian ke derajat dan mengembalikan bilangan bulat.
Usage:
math.degrees(x)
Parameter |
Keterangan |
|---|---|
|
Bilangan desimal atau bilangan bulat yang mewakili sudut dalam radian. |
def main():
# Convert pi radians to degrees
degrees_result = math.degrees(math.pi)
console.print(degrees_result)
# degrees_result = 180
# Start threads — Do not delete
start_thread(main)
radian#
radians mengubah sudut dari derajat ke radian.
Usage:
math.radians(x)
Parameter |
Keterangan |
|---|---|
|
Bilangan desimal atau bilangan bulat yang mewakili sudut dalam derajat. |
def main():
# Convert 180 degrees to radians
radians_result = math.radians(180)
console.print(radians_result, precision=2)
# radians_result = 3.14
# Start threads — Do not delete
start_thread(main)
Rounding & Absolute Values#
langit-langit#
ceil membulatkan angka ke atas ke bilangan bulat terdekat.
Usage:
math.ceil(x)
Parameter |
Keterangan |
|---|---|
|
Bilangan desimal atau bilangan bulat yang akan dibulatkan ke atas. |
def main():
# Round 3.7 up to the nearest integer
ceil_result = math.ceil(3.7)
console.print(ceil_result)
# ceil_result = 4
# Start threads — Do not delete
start_thread(main)
lantai#
floor membulatkan angka ke bawah ke bilangan bulat terdekat.
Usage:
math.floor(x)
Parameter |
Keterangan |
|---|---|
|
Bilangan desimal atau bilangan bulat yang akan dibulatkan ke bawah. |
def main():
# Round 3.7 down to the nearest integer
floor_result = math.floor(3.7)
console.print(floor_result)
# floor_result = 3
# Start threads — Do not delete
start_thread(main)
memotong#
trunc menghilangkan bagian desimal dari suatu angka tanpa pembulatan.
Usage:
math.trunc(x)
Parameter |
Keterangan |
|---|---|
|
Angka desimal yang akan dipotong. |
def main():
# Remove the decimal part of 3.7
trunc_result = math.trunc(3.7)
console.print(trunc_result)
# trunc_result = 3
# Start threads — Do not delete
start_thread(main)
fabs#
fabs mengembalikan nilai absolut suatu angka sebagai bilangan float.
Usage:
math.fabs(x)
Parameter |
Keterangan |
|---|---|
|
Bilangan desimal atau bilangan bulat. |
def main():
# Get the absolute value of -3.7
fabs_result = math.fabs(-3.7)
console.print(fabs_result, precision=1)
# fabs_result = 3.7
# Start threads — Do not delete
start_thread(main)
Exponents & Logarithms#
catatan#
log menghitung logaritma suatu angka dan mengembalikan nilai float.
Usage:
math.log(x, base)
Parameter |
Keterangan |
|---|---|
|
Bilangan desimal atau bilangan bulat positif. |
|
Opsional. Basis logaritma yang akan digunakan. Secara default, ini adalah logaritma natural. |
def main():
# Calculate the natural logarithm
# (base e) of 7.389056
log_result = math.log(7.389056)
console.print(log_result)
# log_result = 2
# Start threads — Do not delete
start_thread(main)
def main():
# Calculate the log base 2 of 8
log_result = math.log(8, 2)
console.print(log_result)
# log_result = 3
# Start threads — Do not delete
start_thread(main)
log10#
log10 menghitung logaritma basis 10 dari suatu angka dan mengembalikan nilai float.
Usage:
math.log10(x)
Parameter |
Keterangan |
|---|---|
|
Bilangan desimal atau bilangan bulat positif. |
def main():
# Calculate the base-10 logarithm of 100
log10_result = math.log10(100)
console.print(log10_result)
# log10_result = 2
# Start threads — Do not delete
start_thread(main)
daya#
pow memangkatkan x dengan y dan mengembalikan nilai float, bahkan jika kedua inputnya adalah bilangan bulat.
Usage:
math.pow(x, y)
Parameter |
Keterangan |
|---|---|
|
Basis bilangan pecahan atau bilangan bulat. |
|
Eksponen berupa bilangan pecahan atau bilangan bulat. |
def main():
# Calculate 2 raised to the power of 3
power_result = math.pow(2, 3)
console.print(power_result)
# power_result = 8
# Start threads — Do not delete
start_thread(main)
akar kuadrat#
sqrt menghitung akar kuadrat dari suatu angka dan mengembalikan nilai float, bahkan untuk bilangan kuadrat sempurna.
Usage:
math.sqrt(x)
Parameter |
Keterangan |
|---|---|
|
Bilangan floating point atau integer non-negatif. |
def main():
# Calculate 2 raised to the power of 3
power_result = math.pow(2, 3)
console.print(power_result)
# power_result = 8
# Start threads — Do not delete
start_thread(main)
pengalaman#
exp menghitung eksponen dari suatu angka dan mengembalikan nilai float.
Usage:
math.exp(x)
Parameter |
Keterangan |
|---|---|
|
Bilangan desimal atau bilangan bulat. |
def main():
# Calculate e raised to the power of 1
exp_result = math.exp(1)
console.print(exp_result, precision=2)
# exp_result = 2.72
# Start threads — Do not delete
start_thread(main)
Floating Point Operations#
modf#
modf menguraikan sebuah angka menjadi bagian pecahan dan bagian bilangan bulatnya dan mengembalikan sebuah tuple (fractional part, integer part), keduanya berupa bilangan float.
Usage:
math.modf(x)
Parameter |
Keterangan |
|---|---|
|
Bilangan desimal atau bilangan bulat yang akan diuraikan. |
def main():
# Decompose 3.14159 into fractional and integer parts
fractional_part, integer_part = math.modf(3.14159)
console.print(fractional_part, precision=2)
console.new_line()
console.print(integer_part)
# fractional_part = 0.14
# integer_part = 3
# Start threads — Do not delete
start_thread(main)
frexp#
frexp menguraikan sebuah angka menjadi mantissa dan eksponennya dan mengembalikan sebuah tuple (mantissa, exponent), di mana mantissa adalah bilangan float dan eksponen adalah bilangan bulat.
Usage:
math.frexp(x)
Parameter |
Keterangan |
|---|---|
|
Bilangan desimal atau bilangan bulat yang akan diuraikan. |
def main():
# Decompose 16 into its mantissa and exponent
mantissa, exponent = math.frexp(16)
console.print(mantissa, precision=2)
console.new_line()
console.print(exponent)
# mantissa = 0.50
# exponent = 5
# Start threads — Do not delete
start_thread(main)
fmod#
fmod mengembalikan sisa pembagian sambil mempertahankan tanda dividen (x).
Usage:
math.fmod(x, y)
Parameter |
Keterangan |
|---|---|
|
Dividen. |
|
Pembagi. |
def main():
# Calculate remainder of 10 / 3
# that preserves the sign of 10
fmod_result = math.fmod(10, 3)
console.print(fmod_result)
# fmod_result = 1
# Start threads — Do not delete
start_thread(main)
tanda tangan hak cipta#
copysign mengembalikan x dengan tanda y.
Usage:
math.copysign(x, y)
Parameter |
Keterangan |
|---|---|
|
Nilai yang akan dimodifikasi. |
|
Nilai yang tandanya akan disalin. |
def main():
# Return -10 with the sign of 3 (positive)
copysign_result = math.copysign(-10, 3)
console.print(copysign_result)
# copysign_result = 10
# Start threads — Do not delete
start_thread(main)
ldexp#
ldexp menghitung x * (2 ** exp), yang setara dengan x * 2exp.
Usage:
math.ldexp(x, exp)
Parameter |
Keterangan |
|---|---|
|
Nilai dasar. |
|
Eksponen. |
def main():
# Compute 3 * (2 ** 4)
ldexp_result = math.ldexp(3, 4)
console.print(ldexp_result)
# ldexp_result = 48
# Start threads — Do not delete
start_thread(main)