Μαθηματικά#
Εισαγωγή#
Το Math περιλαμβάνει ενσωματωμένες συναρτήσεις Python και την πλήρη ενότητα math , η οποία είναι αυτόματα διαθέσιμη στο VEXcode EXP. Αυτά τα εργαλεία σάς επιτρέπουν να εκτελείτε τα πάντα, από βασική αριθμητική έως προηγμένες τριγωνομετρίες, στρογγυλοποιήσεις και λογαριθμικές πράξεις.
Χρησιμοποιήστε αυτές τις συναρτήσεις και τις σταθερές για να υπολογίσετε θέσεις, γωνίες, αποστάσεις και άλλες αριθμητικές τιμές για το ρομπότ σας. Μπορείτε επίσης να μετατρέψετε μεταξύ μοιρών και ακτινίων, να αξιολογήσετε εκφράσεις και να εργαστείτε με ειδικές τιμές όπως το άπειρο και το NaN.
Παρακάτω είναι μια λίστα με τις διαθέσιμες μαθηματικές συναρτήσεις, σταθερές και βοηθητικά προγράμματα:
Ενσωματωμένες συναρτήσεις – Κοινά μαθηματικά εργαλεία που περιλαμβάνονται στην Python.
abs– Επιστρέφει την απόλυτη τιμή ενός αριθμού.round– Στρογγυλοποιεί έναν αριθμό σε έναν καθορισμένο αριθμό δεκαδικών ψηφίων.min– Επιστρέφει τη μικρότερη από τις τιμές εισόδου.max– Επιστρέφει τη μεγαλύτερη από τις τιμές εισόδου.sum– Αθροίζει όλες τις τιμές σε μια επαναλήψιμη τιμή.divmod– Επιστρέφει το πηλίκο και το υπόλοιπο ως πλειάδα.pow– Αυξάνει έναν αριθμό σε δύναμη, προαιρετικά με μέτρο ελαστικότητας.int– Μετατρέπει μια τιμή σε ακέραιο αριθμό.float– Μετατρέπει μια τιμή σε αριθμό κινητής υποδιαστολής.
Σταθερές – Προκαθορισμένες τιμές από την ενότητα math.
Τριγωνομετρία – Υπολογισμός γωνιών και σχέσεων μεταξύ πλευρών.
math.sin– Ημίτονο μιας γωνίας σε ακτίνια.math.cos– Συνημίτονο μιας γωνίας σε ακτίνια.math.tan– Εφαπτόμενη μιας γωνίας σε ακτίνια.math.atan– Τόξο εφαπτομένης μιας τιμής σε ακτίνια.math.atan2– Τόξο εφαπτομένης του y/x σε ακτίνια, λαμβάνοντας υπόψη το τεταρτημόριο.math.asin– Το τόξο του ημιτόνου μιας τιμής σε ακτίνια.math.acos– Αρκοημίτονο μιας τιμής σε ακτίνια.math.degrees– Μετατρέπει τα ακτίνια σε μοίρες.math.radians– Μετατρέπει μοίρες σε ακτίνια.
Στρογγυλοποίηση & Απόλυτη Τιμή – Προσαρμογή ακρίβειας ή κατεύθυνσης.
math.ceil– Στρογγυλοποιεί προς τα πάνω στον πλησιέστερο ακέραιο αριθμό.math.floor– Στρογγυλοποιεί προς τα κάτω στον πλησιέστερο ακέραιο αριθμό.math.trunc– Αφαιρεί το δεκαδικό μέρος.math.fabs– Επιστρέφει την απόλυτη τιμή ως κινητή υποδιαστολή.
Εκθέτες & Λογάριθμοι – Υπολογισμοί δύναμης, ρίζας και λογαρίθμου.
math.pow– Υψώνει έναν αριθμό σε δύναμη.math.sqrt– Επιστρέφει την τετραγωνική ρίζα.math.exp– Υπολογίζει το e στη δύναμη του x.math.log– Υπολογίστε τον λογάριθμο του x.
Πράξεις κινητής υποδιαστολής – Έλεγχος ή ανάλυση τιμών κινητής υποδιαστολής.
math.modf– Επιστρέφει τα κλασματικά και ακέραια μέρη ενός αριθμού κινητής υποδιαστολής.math.frexp– Αποσυνθέτει έναν αριθμό σε μάντισσα και εκθέτη.math.fmod– Υπόλοιπο με πρόσημο του μεριζόμενου.math.copysign– Επιστρέφει μια τιμή με το πρόσημο μιας άλλης τιμής.math.ldexp– Υπολογίζειx * (2 ** exp).
Ενσωματωμένες λειτουργίες#
Η Python παρέχει αρκετές ενσωματωμένες συναρτήσεις που σας επιτρέπουν να εκτελείτε μαθηματικές πράξεις μέσα στο έργο σας.
abs#
abs επιστρέφει την απόλυτη τιμή ενός αριθμού, αφαιρώντας οποιοδήποτε αρνητικό πρόσημο.
Usage:
abs(x)
Παράμετρος |
Περιγραφή |
|---|---|
|
Ένας ακέραιος αριθμός ή ένας αριθμός με κινητή βάση. |
# Get the absolute value of -10
abs_result = abs(-10)
brain.screen.print(abs_result)
# abs_result = 10
round#
round έναν αριθμό σε έναν καθορισμένο αριθμό δεκαδικών ψηφίων.
Usage:
round(x, ndigits)
Παράμετρος |
Περιγραφή |
|---|---|
|
Ένας ακέραιος αριθμός ή ένας αριθμός με κινητή βάση. |
|
Προαιρετικό. Ο αριθμός των δεκαδικών ψηφίων για στρογγυλοποίηση. Η προεπιλογή είναι 0. |
# Round 5.7 to the nearest integer
round_int_result = round(5.7)
brain.screen.print(round_int_result)
# round_int_result = 6
# Round 3.14159 to 2 decimal places
round_result = round(3.14159, 2)
brain.screen.print(round_result, precision=2)
# round_result = 3.14
min#
Η συνάρτηση min επιστρέφει τη μικρότερη τιμή από πολλαπλά ορίσματα ή μια επαναλήψιμη τιμή.
Usage:
min(arg1, arg2, …) or min(sequence)
Παράμετρος |
Περιγραφή |
|---|---|
|
Οι αριθμοί προς σύγκριση. |
|
Μια λίστα, πλειάδα ή άλλη ακολουθία που περιέχει αριθμούς. |
# Get the smallest number from 3, 7, and 1
min_result = min(3, 7, 1)
brain.screen.print(min_result)
# min_result = 1
# Get the smallest value from a list
min_list_result = min([10, 4, 25, 1])
brain.screen.print(min_list_result)
# min_list_result = 1
max#
max επιστρέφει τη μεγαλύτερη τιμή από πολλαπλά ορίσματα ή μια επαναλήψιμη τιμή.
Usage:
max(arg1, arg2, …) or max(sequence)
Παράμετρος |
Περιγραφή |
|---|---|
|
Οι αριθμοί προς σύγκριση. |
|
Μια λίστα, πλειάδα ή άλλη ακολουθία που περιέχει αριθμούς. |
# Get the largest number from 3, 7, and 1
max_result = max(3, 7, 1)
brain.screen.print(max_result)
# max_result = 7
# Get the largest value from a list
max_list_result = max([10, 4, 25, 1])
brain.screen.print(max_list_result)
# max_list_result = 25
sum#
sum αθροίζει όλες τις τιμές σε μια επαναλήψιμη τιμή, με μια προαιρετική τιμή έναρξης.
Usage:
sum(sequence, start)
Παράμετρος |
Περιγραφή |
|---|---|
|
Μια λίστα, πλειάδα ή άλλη ακολουθία που περιέχει αριθμούς. |
|
Προαιρετικό. Μια τιμή που θα προστεθεί στο άθροισμα. Η προεπιλογή είναι 0. |
# Calculate the sum of a list of numbers
sum_result = sum([1, 2, 3, 4, 5])
brain.screen.print(sum_result)
# sum_result = 15
# Calculate the sum of a list with a starting value of 10
sum_with_start = sum([1, 2, 3], 10)
brain.screen.print(sum_with_start)
# sum_with_start = 16
divmod#
divmod επιστρέφει μια πλειάδα που περιέχει το πηλίκο και το υπόλοιπο μιας πράξης διαίρεσης.
Usage:
divmod(a, b)
Παράμετρος |
Περιγραφή |
|---|---|
|
Το μέρισμα. |
|
Ο διαιρέτης. |
# Perform integer division and remainder of 10 / 3
divmod_result = divmod(10, 3)
brain.screen.print(divmod_result)
# divmod_result = (3, 1)
pow#
pow ανυψώνει έναν αριθμό σε δύναμη και προαιρετικά εκτελεί μια πράξη μέτρου.
Usage:
pow(x, y, mod)
Παράμετρος |
Περιγραφή |
|---|---|
|
Ο βασικός αριθμός. |
|
Ο εκθέτης. |
|
Προαιρετικό. Μια τιμή modulus. Εάν παρέχεται, επιστρέφει |
# Calculate 2 raised to the power of 3
pow_result = pow(2, 3)
brain.screen.print(pow_result)
# pow_result = 8
int#
int μετατρέπει έναν αριθμό ή μια συμβολοσειρά σε ακέραιο. Υποστηρίζει επίσης τη μετατροπή βάσεων κατά τη μετατροπή από μια συμβολοσειρά.
Usage:
int(x, base)
Παράμετρος |
Περιγραφή |
|---|---|
|
Ένας αριθμός, μια συμβολοσειρά ή άλλο αντικείμενο για μετατροπή. |
|
Προαιρετικό. Η αριθμητική βάση που θα χρησιμοποιηθεί για τη μετατροπή. Η προεπιλογή είναι 10. |
# Convert a float to an integer to get rid of decimals
price = 19.99
price_int = int(price)
brain.screen.print("{} coins".format(price_int))
# Output: 19 coins
# Convert a string into an integer to use in calculations
user_input = "55"
user_number = int(user_input)
brain.screen.print(user_number * 2)
# Output: 110
float#
float μετατρέπει έναν αριθμό ή μια συμβολοσειρά σε αριθμό κινητής υποδιαστολής.
Usage:
float(x)
Παράμετρος |
Περιγραφή |
|---|---|
|
Ένας αριθμός, μια συμβολοσειρά ή άλλο αντικείμενο για μετατροπή. |
# 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
Μαθηματικά Ενότητα#
Η ενότητα math στο MicroPython παρέχει πρόσθετες μεθόδους για την εκτέλεση κοινών μαθηματικών υπολογισμών. Αυτές οι μέθοδοι περιλαμβάνουν τριγωνομετρικές, λογαριθμικές και άλλες αριθμητικές πράξεις.
Η ενότητα math εισάγεται από προεπιλογή στο VEXcode.
Constants#
Οι σταθερές είναι προκαθορισμένες τιμές που παραμένουν σταθερές κατά τη διάρκεια ενός έργου. Μπορούν να χρησιμοποιηθούν σε υπολογισμούς χωρίς να απαιτείται ορισμός ή ανάθεση.
πι#
pi δίνει τη μαθηματική σταθερά π, την αναλογία της περιφέρειας ενός κύκλου προς τη διάμετρό του.
Usage:
math.pi
# Calculate the area of a circle with radius 5 using pi
circle_area = math.pi * 5 * 5
brain.screen.print(circle_area, precision=2)
# circle_area = 78.54
μι#
e δίνει τη βάση του φυσικού λογαρίθμου.
Usage:
math.e
# Calculate e raised to the power of 2
e_power = math.pow(math.e, 2)
brain.screen.print(e_power, precision=2)
# e_power = 7.39
Trigonometry#
αμαρτία#
Η συνάρτηση sin υπολογίζει το ημίτονο μιας γωνίας σε ακτίνια και επιστρέφει έναν αριθμό float.
Usage:
math.sin(x)
Παράμετρος |
Περιγραφή |
|---|---|
|
Ένας ακέραιος αριθμός ή ένας κινητήριος αριθμός που αντιπροσωπεύει μια γωνία σε ακτίνια. |
# Calculate the sine of
# 30 degrees in radians
result = math.sin(math.radians(30))
brain.screen.print(result, precision=2)
# result = 0.50
γιατί#
cos υπολογίζει το συνημίτονο μιας γωνίας σε ακτίνια και επιστρέφει έναν αριθμό float.
Usage:
math.cos(x)
Παράμετρος |
Περιγραφή |
|---|---|
|
Ένας ακέραιος αριθμός ή ένας κινητήριος αριθμός που αντιπροσωπεύει μια γωνία σε ακτίνια. |
# Calculate the cosine of
# 60 degrees in radians
result = math.cos(math.radians(60))
brain.screen.print(result, precision=2)
# result = 0.50
βυρσοδέψω#
Η συνάρτηση tan υπολογίζει την εφαπτομένη μιας γωνίας σε ακτίνια και επιστρέφει έναν αριθμό float.
Usage:
math.tan(x)
Παράμετρος |
Περιγραφή |
|---|---|
|
Ένας ακέραιος αριθμός ή ένας κινητήριος αριθμός που αντιπροσωπεύει μια γωνία σε ακτίνια. |
# Calculate the tangent of
# 45 degrees in radians
result = math.tan(math.radians(45))
brain.screen.print(result)
# result = 1.00
ασίν#
Η συνάρτηση asin υπολογίζει το αντίστροφο ημίτονο (τόξο ημιτόνου) ενός αριθμού και επιστρέφει έναν κινητήριο αριθμό που αντιπροσωπεύει τη γωνία σε ακτίνια.
Usage:
math.asin(x)
Παράμετρος |
Περιγραφή |
|---|---|
|
Ένας αριθμός κινητής υποδιαστολής ή ένας ακέραιος αριθμός μεταξύ -1 και 1. |
# Calculate the arc sine
# of 0.5 in degrees
result = math.degrees(math.asin(0.5))
brain.screen.print(result)
# result = 30.00
acos#
Η συνάρτηση acos υπολογίζει το αντίστροφο συνημίτονο (τοξικό συνημίτονο) ενός αριθμού και επιστρέφει έναν κινητήριο αριθμό που αντιπροσωπεύει τη γωνία σε ακτίνια.
Usage:
math.acos(x)
Παράμετρος |
Περιγραφή |
|---|---|
|
Ένας αριθμός κινητής υποδιαστολής ή ένας ακέραιος αριθμός μεταξύ -1 και 1. |
# Calculate the arc cosine
# of 0.5 in degrees
result = math.degrees(math.acos(0.5))
brain.screen.print(result)
# result = 60.00
ατάν#
Η συνάρτηση atan υπολογίζει την αντίστροφη εφαπτομένη (εφαπτομένη τόξου) ενός αριθμού και επιστρέφει έναν αριθμό κινητής υποδιαστολής που αντιπροσωπεύει τη γωνία σε ακτίνια.
Usage:
math.atan(x)
Παράμετρος |
Περιγραφή |
|---|---|
|
Ένας αριθμός κινητής υποδιαστολής ή ένας ακέραιος αριθμός. |
# Calculate the arc tangent
# of 1 in degrees
arc_tan = math.atan(1.0)
result = math.degrees(arc_tan)
brain.screen.print(result)
# result = 45.00
atan2#
atan2 υπολογίζει την κύρια τιμή της αντίστροφης εφαπτομένης του y/x και επιστρέφει έναν αριθμό float που αντιπροσωπεύει τη γωνία σε ακτίνια.
Usage:
math.atan2(y, x)
Παράμετρος |
Περιγραφή |
|---|---|
|
Ένας ακέραιος αριθμός ή ένας κινητήριος αριθμός που αντιπροσωπεύει τη συντεταγμένη y. |
|
Ένας κινητής υποδιαστολής ή ένας ακέραιος αριθμός που αντιπροσωπεύει τη συντεταγμένη x. |
# Calculate the inverse tangent
# of 1/1 in degrees
atan2 = math.atan2(1.0, 1.0)
result = math.degrees(atan2)
brain.screen.print(result)
# result = 45.00
βαθμούς#
degrees μετατρέπει μια γωνία από ακτίνια σε μοίρες και επιστρέφει έναν αριθμό κινητής υποδιαστολής.
Usage:
math.degrees(x)
Παράμετρος |
Περιγραφή |
|---|---|
|
Ένας ακέραιος αριθμός ή ένας κινητήριος αριθμός που αντιπροσωπεύει μια γωνία σε ακτίνια. |
# Convert pi radians to degrees
degrees_result = math.degrees(math.pi)
brain.screen.print(degrees_result)
# degrees_result = 180.00
ακτίνια#
radians μετατρέπει μια γωνία από μοίρες σε ακτίνια ως κινητήριος αριθμός.
Usage:
math.radians(x)
Παράμετρος |
Περιγραφή |
|---|---|
|
Ένας ακέραιος αριθμός ή ένας κινητήριος αριθμός που αντιπροσωπεύει μια γωνία σε μοίρες. |
# Convert 180 degrees to radians
radians_result = math.radians(180)
brain.screen.print(radians_result, precision=2)
# radians_result = 3.14
Rounding & Absolute Values#
οροφή#
ceil στρογγυλοποιεί έναν αριθμό προς τα πάνω στον πλησιέστερο ακέραιο αριθμό.
Usage:
math.ceil(x)
Παράμετρος |
Περιγραφή |
|---|---|
|
Ένας αριθμός με κινητή βάση ή ένας ακέραιος αριθμός που θα στρογγυλοποιηθεί προς τα πάνω. |
# Round 3.7 up to the nearest integer
ceil_result = math.ceil(3.7)
brain.screen.print(ceil_result)
# ceil_result = 4
πάτωμα#
floor στρογγυλοποιεί έναν αριθμό προς τα κάτω στον πλησιέστερο ακέραιο αριθμό.
Usage:
math.floor(x)
Παράμετρος |
Περιγραφή |
|---|---|
|
Ένας αριθμός κινητής υποδιαστολής ή ένας ακέραιος αριθμός που θα στρογγυλοποιηθεί προς τα κάτω. |
# Round 3.7 down to the nearest integer
floor_result = math.floor(3.7)
brain.screen.print(floor_result)
# floor_result = 3
κορμός#
Η συνάρτηση trunc αφαιρεί το δεκαδικό μέρος ενός αριθμού χωρίς στρογγυλοποίηση.
Usage:
math.trunc(x)
Παράμετρος |
Περιγραφή |
|---|---|
|
Μια κινητή περιοχή που θα περικοπεί. |
# Remove the decimal part of 3.7
trunc_result = math.trunc(3.7)
brain.screen.print(trunc_result)
# trunc_result = 3
υπέροχα#
fabs επιστρέφει την απόλυτη τιμή ενός αριθμού ως κινητήριος αριθμός.
Usage:
math.fabs(x)
Παράμετρος |
Περιγραφή |
|---|---|
|
Ένας αριθμός κινητής υποδιαστολής ή ένας ακέραιος αριθμός. |
# Get the absolute value of -3.7
fabs_result = math.fabs(-3.7)
brain.screen.print(fabs_result, precision=1)
# fabs_result = 3.7
Exponents & Logarithms#
κούτσουρο#
Η συνάρτηση log υπολογίζει τον λογάριθμο ενός αριθμού και επιστρέφει έναν υποδιαστολέα.
Usage:
math.log(x, base)
Παράμετρος |
Περιγραφή |
|---|---|
|
Ένας θετικός αριθμός κινητής υποδιαστολής ή ακέραιος αριθμός. |
|
Προαιρετικό. Η βάση λογαρίθμου που θα χρησιμοποιηθεί. Από προεπιλογή, αυτός είναι ο φυσικός λογάριθμος. |
# Calculate the natural logarithm
# (base e) of 7.389056
log_result = math.log(7.389056)
brain.screen.print(log_result)
# log_result = 2.00
# Calculate the log base 2 of 8
log_result = math.log(8, 2)
brain.screen.print(log_result)
# log_result = 3.00
πάου#
pow ανεβάζει το x στη δύναμη του y και επιστρέφει έναν αριθμό κινητής υποδιαστολής, ακόμα κι αν και οι δύο είσοδοι είναι ακέραιοι αριθμοί.
Usage:
math.pow(x, y)
Παράμετρος |
Περιγραφή |
|---|---|
|
Μια βάση με κινητή βάση ή ακέραιο αριθμό. |
|
Ένας κινητής υποδιαστολής ή ένας ακέραιος εκθέτης. |
# Calculate 2 raised to the power of 3
power_result = math.pow(2, 3)
brain.screen.print(power_result)
# power_result = 8.00
τετραγωνικό#
Η συνάρτηση sqrt υπολογίζει την τετραγωνική ρίζα ενός αριθμού και επιστρέφει έναν αριθμό float, ακόμη και για τέλεια τετράγωνα.
Usage:
math.sqrt(x)
Παράμετρος |
Περιγραφή |
|---|---|
|
Ένας μη αρνητικός κινητής υποδιαστολής ή ακέραιος αριθμός. |
# Calculate the square root of 16
square_root = math.sqrt(16)
brain.screen.print(square_root)
# square_root = 4.00
εμπειρία#
exp υπολογίζει την εκθετική ενός αριθμού και επιστρέφει έναν αριθμό float.
Usage:
math.exp(x)
Παράμετρος |
Περιγραφή |
|---|---|
|
Ένας αριθμός κινητής υποδιαστολής ή ένας ακέραιος αριθμός. |
# Calculate e raised to the power of 1
exp_result = math.exp(1)
brain.screen.print(exp_result, precision=2)
# exp_result = 2.72
Floating Point Operations#
τροποποίηση#
modf αποσυνθέτει έναν αριθμό στα κλασματικά και ακέραια μέρη του και επιστρέφει μια πλειάδα (fractional part, integer part), και τα δύο ως πλωτήρες.
Usage:
math.modf(x)
Παράμετρος |
Περιγραφή |
|---|---|
|
Ένας κινητής υποδιαστολής ή ένας ακέραιος αριθμός προς ανάλυση. |
# Decompose 3.14159 into fractional and integer parts
fractional_part, integer_part = math.modf(3.14159)
brain.screen.print(fractional_part, precision=2)
brain.screen.print(integer_part)
# fractional_part = 0.14
# integer_part = 3
φρέξπ#
frexp αναλύει έναν αριθμό στην mantissa και τον εκθέτη του και επιστρέφει μια πλειάδα (mantissa, exponent), όπου η mantissa είναι ένας κινητής υποδιαστολής και ο εκθέτης είναι ένας ακέραιος αριθμός.
Usage:
math.frexp(x)
Παράμετρος |
Περιγραφή |
|---|---|
|
Ένας κινητής υποδιαστολής ή ένας ακέραιος αριθμός προς ανάλυση. |
# Decompose 16 into its mantissa and exponent
mantissa, exponent = math.frexp(16)
brain.screen.print(mantissa, precision=2)
brain.screen.print(exponent)
# mantissa = 0.50
# exponent = 5
fmod#
Η συνάρτηση fmod επιστρέφει το υπόλοιπο της διαίρεσης διατηρώντας το πρόσημο του διαιρετέου (x).
Usage:
math.fmod(x, y)
Παράμετρος |
Περιγραφή |
|---|---|
|
Το μέρισμα. |
|
Ο διαιρέτης. |
# Calculate remainder of 10 / 3
# that preserves the sign of 10
fmod_result = math.fmod(10, 3)
brain.screen.print(fmod_result)
# fmod_result = 1
πνευματικό δικαίωμα#
copysign επιστρέφει x με το πρόσημο y.
Usage:
math.copysign(x, y)
Παράμετρος |
Περιγραφή |
|---|---|
|
Η τιμή που θα τροποποιηθεί. |
|
Η τιμή της οποίας το πρόσημο θα αντιγραφεί. |
# Return -10 with the sign of 3 (positive)
copysign_result = math.copysign(-10, 3)
brain.screen.print(copysign_result)
# copysign_result = 10
ldexp#
Η συνάρτηση ldexp υπολογίζει x * (2 ** exp), το οποίο ισοδυναμεί με x * 2exp.
Usage:
math.ldexp(x, exp)
Παράμετρος |
Περιγραφή |
|---|---|
|
Η βασική τιμή. |
|
Ο εκθέτης. |
# Compute 3 * (2 ** 4)
ldexp_result = math.ldexp(3, 4)
brain.screen.print(ldexp_result)
# ldexp_result = 48