Operatorzy#
Wstęp#
Bloki operatora w VEXcode 123 pomagają robotowi pracować z liczbami i słowami. Bloki te mogą rozwiązywać zadania matematyczne, porównywać wartości, oceniać, czy warunki są prawdziwe, czy fałszywe, oraz pracować z ciągami znaków. Ciągi znaków można wykorzystać do drukowania wartości i słów w Konsoli w VEXcode 123.
Poniżej znajduje się lista dostępnych bloków:
operator matematyczny – wykonuje dodawanie, odejmowanie, mnożenie lub dzielenie.
operator porównania – porównuje dwie wartości za pomocą operatorów większy niż, mniejszy niż lub równy.
operator logiczny – ocenia wiele warunków za pomocą operatorów and lub or.
nie operator – Odwraca wartość logiczną.
operator zakresu – sprawdza, czy liczba mieści się w zakresie.
wybierz losowo – Generuje liczbę losową w określonym zakresie.
liczba zaokrąglona – zaokrągla liczbę do najbliższej liczby całkowitej.
funkcje matematyczne – Stosuje działania takie jak pierwiastek kwadratowy, trygonometria, logarytmy i potęgowanie.
pozostałość – Raportuje resztę z operacji dzielenia.
join – łączy dwa ciągi znaków w jeden.
letter – Wyodrębnia znak z ciągu według pozycji.
length – Raportuje liczbę znaków w ciągu.
contains – Sprawdza, czy ciąg zawiera określone słowo lub znak.
convert – Konwertuje liczbę na tekst, liczbę całkowitą lub liczbę dziesiętną.
operator matematyczny#
Blok raportujący operator matematyczny wykonuje podstawowe operacje matematyczne na wartościach umieszczonych po obu stronach operatora. Raportuje wynik na podstawie precyzji wydruku projektu, która domyślnie wynosi 0 miejsc po przecinku, ale można ją dostosować za pomocą bloku ustaw precyzję wydruku.
([0] [math_plus v] [0])
Parametry |
Opis |
|---|---|
wartość 1 |
Pierwsza liczba użyta w operacji. |
operator |
Operator matematyczny, którego należy użyć:
|
wartość 2 |
Druga liczba użyta w operacji. |
Przykład
gdy uruchomiony
[Perform basic addition and show two decimal places.]
ustaw precyzję drukowania na [0.01 v]
wydrukuj ([10] [math_plus v] [10.5]) ▶
operator porównania#
Blok logiczny operatora porównania informuje, czy porównanie dwóch wartości daje wynik Prawda czy Fałsz.
Prawda – porównanie jest poprawne (np. 5 > 3 zwraca Prawda).
Fałsz – Porównanie jest niepoprawne (np. 2 ≥ 5 zwraca Fałsz).
<[0] [math_equal v] [0]>
Parametr |
Opis |
|---|---|
wartość 1 |
Pierwsza wartość do porównania. |
operator |
Porównanie do użycia:
|
wartość 2 |
Druga wartość do porównania. |
Przykład
gdy uruchomiony
[Turn right until the heading reaches 90 degrees.]
skręć [w prawo v]
czekaj [0.5] sekund
czekaj dopóki <(kurs jazdy w stopniach) [math_greater_than v] [90]>
zatrzymaj jazdę
operator logiczny#
Blok logiczny operatora informuje, czy warunek logiczny między wieloma wartościami to Prawda czy Fałsz.
Prawda – Warunek logiczny jest spełniony.
Fałsz – Warunek logiczny nie jest spełniony.
<<> [i v] <>>
Parametr |
Opis |
|---|---|
stan 1 |
Pierwszy warunek Boole’a do sprawdzenia. |
operator |
Operator logiczny, którego należy użyć: and zwraca Prawda, jeśli oba warunki są Prawda. or zwraca Prawda, jeśli przynajmniej jeden warunek jest Prawda. |
stan 2 |
Drugi warunek Boole’a do sprawdzenia. |
Przykład
gdy uruchomiony
[Display if a red object is detected.]
zawsze
wyczyść wszystkie wiersze
jeśli <<oko znalazło obiekt?> [i v] <oko wykrywa [czerwony v]?>> to
wydrukuj [Red object found!] ▶
koniec
koniec
nie operator#
Blok logiczny operator not odwraca wynik bloku logicznego. Jeśli dane wejściowe to Prawda, zwraca Fałsz, a jeśli dane wejściowe to Fałsz, zwraca Prawda.
Prawda – warunek wejściowy normalnie zwróciłby wartość Fałsz.
Fałsz – warunek wejściowy normalnie zwróciłby wartość Prawda.
<nie <>>
Parametr |
Opis |
|---|---|
stan |
Warunek boolowski, który należy odwrócić. |
Przykład
gdy uruchomiony
[Turn until the robot is facing left. ]
zawsze
jeśli <nie <(kurs jazdy w stopniach) [math_greater_than v] [270]>> to
skręć [w prawo v]
w przeciwnym razie
zatrzymaj jazdę
operator zakresu#
Blok logiczny operatora zakresu informuje, czy wartość mieści się w określonym zakresie.
Prawda – jeśli wartość mieści się w zakresie.
Fałsz – jeśli wartość jest poza zakresem.
<[0] [math_less_than v] [0] [math_less_than v] [0]>
Parametr |
Opis |
|---|---|
pierwszy operator |
Operator porównania, którego należy użyć:
|
wartość |
Wartość do sprawdzenia. |
drugi operator |
Operator porównania, którego należy użyć:
|
Przykład
gdy uruchomiony
[Turn and display when facing forward or back. ]
skręć [w prawo v]
zawsze
wyczyść wszystkie wiersze
jeśli <[270] [math_greater_than v] (kurs jazdy w stopniach) [math_less_than v] [90]> to
wydrukuj [Facing forward] ▶
w przeciwnym razie
wydrukuj [Facing backward] ▶
wybierz losowo#
Blok reportera pick random raportuje losową liczbę dodatnią lub ujemną z przedziału od minimum do maksimum. Może zwrócić zarówno wartość minimalną, jak i maksymalną. Na przykład, komenda picking od 1 do 10 może zwrócić dowolną liczbę całkowitą z przedziału od 1 do 10.
losuj od [1] do [10]
Parametry |
Opis |
|---|---|
min |
Najniższa możliwa liczba, jaką można wybrać. |
maks |
Najwyższa liczba, jaką można wylosować. |
Przykłady
gdy uruchomiony
[Display a number between 1 and 10.]
wydrukuj (losuj od [1] do [10]) ▶
liczba okrągła#
Blok raportujący liczby zaokrąglone raportuje podaną liczbę zaokrągloną do najbliższej liczby całkowitej, zgodnie ze standardowymi zasadami zaokrąglania:
Jeżeli liczba dziesiętna jest równa 0,5 lub większa, liczba jest zaokrąglana w górę.
Jeżeli liczba dziesiętna jest mniejsza niż 0,5, liczba jest zaokrąglana w dół.
(zaokrąglij [0] do [0] miejsc dziesiętnych)
Parametr |
Opis |
|---|---|
numer |
Liczba do zaokrąglenia. |
miejsca dziesiętne |
Liczba miejsc dziesiętnych, do których należy zaokrąglić liczby. |
Przykład
gdy uruchomiony
[Display the rounded result of 10 / 3.]
ustaw precyzję drukowania na [0.01 v]
wydrukuj (zaokrąglij ([10] [math_division v] [3]) do [1] miejsc dziesiętnych) ▶
funkcje matematyczne#
Blok reportera funkcji matematycznych stosuje wybraną funkcję matematyczną do podanej liczby i zwraca wynik. Obsługuje operacje takie jak wartość bezwzględna, zaokrąglanie, pierwiastki kwadratowe, funkcje trygonometryczne, logarytmy i potęgowanie.
[abs v] z [0]
Parametr |
Opis |
|---|---|
funkcjonować |
Operacja matematyczna stosowana do wartości wejściowej:
|
numer |
Liczba, do której ma zostać zastosowana funkcja. |
Przykład
gdy uruchomiony
[Display the square root of 16.]
wydrukuj ([sqrt v] z [16]) ▶
reszta#
Blok reportera remainder raportuje resztę z operacji dzielenia pomiędzy dwiema wartościami.
(reszta z [0] / [0])
Parametr |
Opis |
|---|---|
dywidenda |
Liczba do podzielenia. |
dzielnik |
Liczba, przez którą należy podzielić. |
Przykład
gdy uruchomiony
[Display the remainder of 10 / 3.]
wydrukuj (reszta z [10] / [3]) ▶
dołączyć#
Blok reportera join raportuje pojedynczy ciąg łączący dwa ciągi wejściowe.
(połącz [apple] [banana])
parametr |
opis |
|---|---|
ciąg 1 |
Pierwszy ciąg do połączenia. |
ciąg 2 |
Drugi ciąg do połączenia. |
gdy uruchomiony
[Display "VEXcode" on the Console.]
wydrukuj (połącz [VEX] [code]) ▶
list#
Blok reportera letter raportuje ciąg pojedynczego znaku z określonej pozycji w danym ciągu.
(litera [1] z [apple])
parametr |
opis |
|---|---|
pozycja |
Pozycja znaku w ciągu (począwszy od 1). |
smyczkowy |
Ciąg znaków, z którego ma zostać wyodrębniona litera. |
gdy uruchomiony
[Display the first letter of "Robot".]
wydrukuj (litera (1) z [Robot]) ▶
długość#
Blok reportera length raportuje liczbę znaków w określonym ciągu, łącznie ze spacjami.
(długość [apple])
parametr |
opis |
|---|---|
smyczkowy |
Sznurek do pomiaru długości. |
Przykład
gdy uruchomiony
[Count the number of characters in "VEX Robotics".]
wydrukuj (długość [VEX Robotics]) ▶
zawiera#
Blok logiczny contains informuje, czy określony ciąg zawiera podane słowo lub znak.
Prawda – ciąg zawiera określone słowo lub znak.
Fałsz – ciąg nie zawiera danego konkretnego słowa lub znaku.
<[apple] zawiera [a]?>
parametr |
opis |
|---|---|
smyczkowy |
Główny ciąg znaków, w którym należy szukać. |
termin wyszukiwania |
Słowo lub znak, który należy sprawdzić w ciągu. |
Przykład
gdy uruchomiony
[Check if "robotics" contains "bot".]
jeśli <[robotics] zawiera [bot]?> to
wydrukuj [The word contains "bot".] ▶
w przeciwnym razie
wydrukuj [Not found.] ▶
koniec
konwertować#
Blok reportera convert raportuje wartość liczby przekonwertowanej na określony typ, jako tekst lub liczbę.
tekst – Konwertuje liczbę na ciąg znaków. Aby liczby działały z blokami Operator ciągu znaków, muszą być w formacie ciągu znaków.
liczba – Konwertuje liczbę na wartość dziesiętną.
(konwertuj [0] na [tekst v])
parametr |
opis |
|---|---|
wartość |
Liczba do przeliczenia. |
typ |
Typ konwersji liczby: tekst konwertuje wartość na ciąg, a liczba konwertuje wartość na liczbę dziesiętną. |
Przykład
gdy uruchomiony
[Display the heading.]
wydrukuj (połącz [Heading: ] (konwertuj (kurs jazdy w stopniach) na [tekst v])) ▶