Operatörler#

giriiş#

VEXcode AIR’deki Operatör blokları, dronun sayılar ve kelimelerle çalışmasına yardımcı olur. Bu bloklar matematik problemlerini çözebilir, değerleri karşılaştırabilir, koşulların doğru veya yanlış olup olmadığını değerlendirebilir ve dizelerle çalışabilir. Dizeler, değerleri ve kelimeleri yazdırmak için kullanılabilir.

Aşağıda mevcut blokların listesi bulunmaktadır:

  • matematik operatörü — Toplama, çıkarma, çarpma veya bölme işlemlerini gerçekleştirir.

  • Karşılaştırma operatörü — Büyüktür, küçüktür veya eşittir operatörlerini kullanarak iki değeri karşılaştırır.

  • mantıksal operatör — Birden fazla koşulu “ve” veya “veya” kullanarak değerlendirir.

  • değil operatörü — Bir Boolean değerini tersine çevirir.

  • aralık operatörü — Bir sayının bir aralık içinde olup olmadığını kontrol eder.

  • rastgele seç — Belirtilen aralıkta rastgele bir sayı üretir.

  • sayıyı yuvarla — Bir sayıyı en yakın tam sayıya yuvarlar.

  • matematik fonksiyonları — Karekök, trigonometri, logaritma ve üs alma gibi işlemleri uygular.

  • atan2 — Y/X’in ters tanjantını hesaplar.

  • kalan — Bir bölüm operasyonunun kalanını rapor eder.

  • join – İki dizeyi tek bir dizeye birleştirir.

  • harf – Bir karakterin konumuna göre bir dizeden karakteri çıkarır.

  • length – Bir dizenin karakter sayısını bildirir.

  • içerir – Bir dizenin belirli bir kelime veya karakter içerip içermediğini kontrol eder.

  • dönüştür – Bir sayıyı metne, tam sayıya veya ondalık sayıya dönüştürür.

matematiksel operatör#

Matematiksel operatör raporlayıcı bloğu, operatörün her iki tarafına yerleştirilen değerler üzerinde temel matematiksel işlemler gerçekleştirir. Varsayılan olarak 0 ondalık basamak olan ancak ekranda yazdırma hassasiyetini ayarla veya konsolda yazdırma hassasiyetini ayarla blokları kullanılarak ayarlanabilen projenin yazdırma hassasiyetine bağlı olarak bir sonuç döndürür.

Matematik operatörü raporlayıcı bloğu.#
([0] [math_plus v] [0])

Parametreler

Tanım

değer 1

İşlemde kullanılan ilk sayı.

operatör

Kullanılacak matematiksel operatörler:

  • + - Toplama
  • - - Çıkarma
  • * - Çarpma
  • / - Bölme

değer 2

İşlemde kullanılan ikinci sayı.

Örnek

Temel toplama işlemlerini yapın ve sonucu iki ondalık basamak olarak gösterin.#
başladığında
[Perform basic addition and show two decimal places.]
konsolda yazdırma hassasiyetini [0.01 v] olarak ayarla
konsolda ([10] [math_plus v] [10.5]) yazdır ▶

karşılaştırma operatörü#

Karşılaştırma operatörü Boolean bloğu, iki değer arasındaki karşılaştırmanın Doğru veya Yanlış olduğunu bildirir.

  • Doğru – Karşılaştırma doğrudur (örneğin, 5 > 3 ifadesi Doğru sonucunu verir).

  • Yanlış – Karşılaştırma hatalı (örneğin, 2 ≥ 5 ifadesi Yanlış sonucunu verir).

Karşılaştırma operatörü Boolean bloğu.#
<[0] [math_equal v] [0]>

Parametre

Tanım

değer 1

Karşılaştırılacak ilk değer.

operatör

Kullanılacak karşılaştırma:

  • = -
  • eşit
  • < -
  • küçük
  • ≤ -
  • küçük veya eşit
  • > -
  • büyük
  • ≥ -
  • büyük veya eşit

değer 2

Karşılaştırılacak ikinci değer.

Örnek

başladığında
[Fly to position (0, 300, 500).]
[500] [mm v] yüksekliğe kalkış yap ▶
(1) saniye bekle
[ileri v] yönünde hareket et
<([y v] konumu [mm v] cinsinden) [math_greater_than v] [300]> olana kadar bekle
(1) saniye bekle
iniş yap ▶

mantıksal operatör#

Mantıksal operatör Boolean bloğu, birden fazla değer arasındaki mantıksal koşulun Doğru veya Yanlış olup olmadığını bildirir.

  • Doğru – Mantıksal koşul sağlanmıştır.

  • Yanlış – Mantıksal koşul sağlanmadı.

Mantıksal Operatör Boolean bloğu.#
<<> [ve v] <>>

Parametre

Tanım

koşul 1

Değerlendirilecek ilk Boolean koşulu.

operatör

Kullanılacak mantıksal operatör: ve operatörü, her iki koşul da doğru ise doğru değerini döndürür. veya operatörü, en az bir koşul doğru ise doğru değerini döndürür.

koşul 2

Değerlendirilecek ikinci Boolean koşulu.

Örnek

başladığında
[Display when buttons 5 and 7 are pressed together.]
<<kumanda düğmesi [5 v] basıldı mı?> [ve v] <kumanda düğmesi [7 v] basıldı mı?>> olana kadar bekle
konsolda [Both buttons pressed!] yazdır ▶

operatör değil#

Değil operatörü Boolean bloğu, bir Boolean bloğunun sonucunu tersine çevirir. Giriş Doğru ise Yanlış, giriş Yanlış ise Doğru değerini bildirir.

  • Doğru – Giriş koşulu normalde Yanlış olarak raporlanırdı.

  • Yanlış – Giriş koşulu normalde Doğru değerini bildirir.

“Değil” operatörü Boolean bloğu.#
<<> değil>

Parametre

Tanım

durum

Boolean koşulunun tersi alınacak.

Örnek

başladığında
[Move with controller while button 5 is not pressed.]
[500] [mm v] yüksekliğe kalkış yap ▶
<<kumanda düğmesi [5 v] basıldı mı?> değil> iken
kumandayla hareket et
son
iniş yap ▶

menzil operatörü#

Aralık operatörü Boolean bloğu, bir değerin belirtilen aralıkta olup olmadığını bildirir.

  • Doğru – Değer aralık içindeyse.

  • Yanlış – Değer aralığın dışındaysa.

Aralık Operatörü Boolean bloğu.#
<[0] [math_less_than v] [0] [math_less_than v] [0]>

Parametre

Tanım

ilk operatör

Kullanılacak karşılaştırma operatörleri:

  • < — 4’ten küçük
  • ≤ — küçük veya eşit
  • —
  • büyük
  • ≥ —
  • büyük veya eşit

değer

Kontrol edilecek değer.

ikinci operatör

Kullanılacak karşılaştırma operatörleri:

  • < — 4’ten küçük
  • ≤ — küçük veya eşit
  • —
  • büyük
  • ≥ —
  • büyük veya eşit

Örnek

başladığında
[Hover at approximately 1000mm then land.]
[500] [mm v] yüksekliğe kalkış yap ▶
[yukarı v] yönünde tırman
<[1000] [math_less_than v] (altitude in [mm v]) [math_less_than v] [1100]> olana kadar bekle
askıda kal
(3) saniye bekle
iniş yap ▶

rastgele seç#

Rastgele sayı seç raporlayıcı bloğu, minimum ve maksimum değerler arasında rastgele pozitif veya negatif bir sayı bildirir. Hem minimum değeri hem de maksimum değeri döndürebilir. Örneğin, 1 ile 10 arasında seçim yapmak, 1 ile 10 arasındaki herhangi bir tam sayıyı döndürebilir.

Rastgele Seç muhabir bloğu.#
[1] ile [10] arasında rastgele seç

Parametreler

Tanım

dakika

Seçilebilecek en düşük sayı.

maksimum

Seçilebilecek en yüksek sayı.

Örnekler

1 ile 10 arasında bir sayı görüntüleyin.#
başladığında
[Display a number between 1 and 10.]
konsolda ([1] ile [10] arasında rastgele seç) yazdır ▶

1 ile 10,5 arasında bir ondalık sayı görüntüleyin.#
başladığında
[Display a decimal number between 1 and 10.5.]
konsolda yazdırma hassasiyetini [Tüm Basamaklar v] olarak ayarla
konsolda ([1] ile [10.5] arasında rastgele seç) yazdır ▶

yuvarlak sayı#

Yuvarlak sayı raporlama bloğu, verilen sayıyı standart yuvarlama kurallarına göre en yakın tam sayıya yuvarlayarak rapor eder:

  • Ondalık basamak 0,5 veya daha büyükse, sayı yukarı yuvarlanır.

  • Ondalık basamak 0,5’ten küçükse, sayı aşağıya yuvarlanır.

Yuvarlak Sayı muhabir bloğu.#
([0] sayısını [0] ondalık basamağa yuvarla)

Parametre

Tanım

sayı

Yuvarlanacak sayı.

ondalık basamaklar

Yuvarlama işleminin yapılacağı ondalık basamak sayısı.

Örnek

10 / 3 işleminin yuvarlanmış sonucunu görüntüleyin.#
başladığında
[Display the rounded result of 10 / 3.]
konsolda yazdırma hassasiyetini [0.01 v] olarak ayarla
konsolda (([10] [math_division v] [3]) sayısını [1] ondalık basamağa yuvarla) yazdır ▶

matematiksel fonksiyonlar#

Matematik fonksiyonları raporlayıcı bloğu, verilen bir sayıya seçilen bir matematiksel fonksiyonu uygular ve sonucu döndürür. Mutlak değer, yuvarlama, karekök alma, trigonometrik fonksiyonlar, logaritma ve üs alma gibi işlemleri destekler.

Matematiksel Fonksiyonlar muhabir bloğu.#
[0] sayısının [abs v] değeri

Parametre

Tanım

işlev

Giriş değerine uygulanacak matematiksel işlem:

  • mutlak değer — Mutlak değer
  • taban — Aşağı yuvarlama
  • tavan — Yukarı yuvarlama
  • karekök — Karekök
  • sin — Sinüs
  • cos — Kosinüs
  • tan — Tanjant
  • asin — Ters sinüs
  • acos — Ters kosinüs
  • atan — Ters tanjant
  • ln — Doğal logaritma
  • log — 10 tabanlı logaritma
  • e^ — Euler sayısının bir kuvveti
  • 10^ — 10’un bir kuvveti
  • negatif — Sayının negatifini döndürür

sayı

Fonksiyonun uygulanacağı sayı.

Örnek

16’nın karekökünü görüntüleyin.#
başladığında
[Display the square root of 16.]
konsolda ([16] sayısının [sqrt v] değeri) yazdır ▶

atan2#

atan2 raporlayıcı bloğu, Y/X’in ters tanjantını, pozitif X ekseni ile (X, Y) noktası arasındaki açıyı temsil eden derece cinsinden bir açı olarak rapor eder.

atan2 bloğu#
(atan2 x:[4] y:[3])

Parametre

Tanım

X

Noktanın yatay konumu, orijinden (0,0) itibaren ölçülür.

y

Noktanın, orijinden (0,0) itibaren ölçülen dikey konumu.

Örnek

Mevcut konumdan (4, 3) açısını hesaplayın.#
başladığında
[Calculate the angle from current position (4, 3).]
konsolda (atan2 x:[4] y:[3]) yazdır ▶

kalan#

Kalan raporlama bloğu, iki değer arasındaki bölme işleminin kalanını rapor eder.

Geri kalan muhabir bloğu.#
[0] / [0] kalanı

Parametre

Tanım

temettü

Bölünecek sayı.

bölen

Bölme işlemi yapılacak sayı.

Örnek

10 / 3 işleminin kalanını gösterin.#
başladığında
[Display the remainder of 10 / 3.]
konsolda ([10] / [3] kalanı) yazdır ▶

katılmak#

Join raporlama bloğu, iki giriş dizesini birleştiren tek bir dizeyi raporlar.

Muhabir bloğuna katıl.#
([apple] ve [banana] birleştir)

parametre

Tanım

dize 1

Birleştirilecek ilk dize.

dize 2

Birleştirilecek ikinci dize.

Örnek

başladığında
[Display "VEXcode" on the Console.]
konsolda ([VEX] ve [code] birleştir) yazdır ▶

mektup#

Harf raporlayıcı bloğu, verilen dizenin belirtilen konumundan tek karakterlik bir dizeyi rapor eder.

Mektup muhabir bloğu.#
([apple] dizisinin [1]. harfi)

parametre

Tanım

konum

Karakterin dizedeki konumu (1’den başlayarak).

sicim

Harf ayıklamak için kullanılacak metin dizisi.

Örnek

başladığında
[Display the first letter of "drone".]
konsolda ([drone] dizisinin (1). harfi) yazdır ▶

uzunluk#

length raporlama bloğu, belirtilen dizenin boşluklar dahil karakter sayısını bildirir.

Uzunluk muhabir bloğu.#
([apple] listesinin uzunluğu)

parametre

Tanım

sicim

Uzunluğunu ölçmek için kullanılan ip.

Örnek

başladığında
[Count the number of characters in "VEX Robotics".]
konsolda ([VEX Robotics] listesinin uzunluğu) yazdır ▶

içerir#

Contains Boolean bloğu, belirtilen dizenin verilen kelimeyi veya karakteri içerip içermediğini bildirir.

  • Doğru – Dize, belirtilen kelimeyi veya karakteri içeriyor.

  • Yanlış – Dize, belirtilen kelimeyi veya karakteri içermiyor.

“İçerir” Boolean bloğu.#
<[apple] [a] içeriyor mu?>

parametre

Tanım

sicim

Arama yapılacak ana metin dizisi.

arama terimi

Dize içinde aranacak kelime veya karakter.

Örnek

başladığında
[Check if "robotics" contains "bot".]
eğer <[robotics] [bot] içeriyor mu?> ise
konsolda [The word contains "bot".] yazdır ▶
değilse
konsolda [Not found.] yazdır ▶
son

dönüştürmek#

Dönüştürme raporlama bloğu, bir sayının belirtilen türe (metin veya sayı olarak) dönüştürülmüş değerini rapor eder.

  • metin – Sayıyı bir dizeye dönüştürür. Dize Operatörü bloklarıyla çalışabilmesi için sayıların dize biçiminde olması gerekir.

  • sayı – Sayıyı ondalık değere dönüştürür.

Convert muhabir bloğu.#
([0] değerini [metin v] türüne dönüştür)

parametre

Tanım

değer

Dönüştürülecek sayı.

tip

Sayıyı dönüştürmek istediğiniz tür:

  • metin
  • sayı

Örnek

başladığında
[Add any number to 5.]
[Give me a number.] sor ve bekle
konsolda (((cevap) değerini [sayı v] türüne dönüştür) [math_plus v] [5]) yazdır ▶