C nedir

Blokları sürüklerken aslında C adında bir dilde program yazıyorsun. Bu sayfa, kodlama hiç bilmeyen biri için o kodu okunur kılar.

Kod da bir dil

Robot Türkçe anlamaz. Ona ne yapacağını söylemek için bir dile ihtiyacımız var; C o dillerden biri. Bloklar, C’yi senin yerine yazar, ama yazdığı şey gerçek bir programdır, oyuncak değil. Aynı dil uçaklarda, arabalarda ve telefonlarda çalışıyor.

Bir satırı okumak

Bu blok:

CPALBlok karşılığı
ileri git hız ⟨55

C’de şöyle yazılır:

CC karşılığı
cpal_forward(55);

Üç parçası var:

ParçaNe işe yarar
cpal_forwardYapılacak işin adı: “ileri git”.
(55)İşe verilen değer: hız 55.
;Cümlenin sonu. Türkçedeki nokta gibi.
Parantez içindekiler

Bloklardaki doldurulacak kutular (⟨sayı⟩) C’de parantezin içine yazılır. İki kutu varsa aralarına virgül konur:cpal_drive(50, -50), sol tekerlek 50, sağ tekerlek -50.

Sık göreceğin kelimeler

CBlok karşılığıAnlamı
void cpal_setup(void)başlangıçtaBir kez çalışan bölüm.
void cpal_loop(void)sürekli tekrarlaDurmadan çalışan bölüm.
ifeğer … iseKoşul: doğruysa içerisi çalışır.
elsedeğilseKoşul yanlışsa çalışan bölüm.
for⟨sayı⟩ kez tekrarlaSayarak tekrar.
intdeğişkenBir sayı saklamak için yer.
{ }bloğun içiBirlikte çalışan satırlar.

Tam bir program

CBasit program
void cpal_setup(void)
{
    cpal_led_all(0, 255, 0);   "kod-yorum">// ışıkları yeşil yap
}

void cpal_loop(void)
{
    cpal_forward(55);          "kod-yorum">// ileri git
    cpal_wait(500);            "kod-yorum">// yarım saniye bekle
    cpal_stop();               "kod-yorum">// dur
    cpal_wait(500);
}
  • // ile başlayan satırlar nottur; robot onları okumaz.
  • Süslü parantezler { } bir bölümün başını ve sonunu gösterir.
  • İçerideki satırlar biraz sağdan başlar, göz nerede olduğunu kolay bulsun diye.

Kod neden salt okunur

Editörde kodu görürsün ama yazamazsın. Kod bloklardan üretilir; elle yazdığın bir satır, bir sonraki blok değişikliğinde kaybolurdu. Kodu değiştirmek istersen bloğu değiştir, kod da onunla değişir.

Korkma, dene

Sayıları büyütüp küçültmek hiçbir şeyi bozmaz. Robot havadayken motorlar zaten kesilir, ışık ve ses güvenli sınırlarda kalır.