--- baslik: Sözdizimi ve girinti bolum: Giriş ozet: Satırlar, iki nokta, girintili bloklar ve büyük/küçük harf --- Her dilin bir yazım kuralı vardır. KabaLang'de kurallar az ve sade: her komut kendi satırında durur, bloklar süslü parantezle değil **girintiyle** belirtilir. ## Her satır bir komut Satır sonuna noktalı virgül koymazsın. Satır bitince komut da biter. ```kbl yazdir("Ankara") yazdir("İzmir") ``` ```cikti Ankara İzmir ``` ## Bloklar: iki nokta ve girinti Bazı satırlar bir **blok** açar: `eger`, `dongu`, `fonksiyon` gibi. Bu satırlar `:` ile biter. Altındaki satırlar 4 boşluk içeriden başlar; o satırlar bloğa aittir. ```kbl sicaklik = 32 eger sicaklik > 30: yazdir("Hava çok sıcak.") yazdir("Bol su iç.") yazdir("Bu satır her zaman çalışır.") ``` ```cikti Hava çok sıcak. Bol su iç. Bu satır her zaman çalışır. ``` Girintisi biten satır, bloğun dışına çıkmış olur. Yukarıdaki son satır `eger`'e bağlı değildir. Sıcaklığı 20 yapıp **Dene** ile çalıştır: ilk iki satır kaybolur, son satır yine görünür. ## İç içe bloklar Bir bloğun içinde başka bir blok açabilirsin. Her düzey 4 boşluk daha içeride başlar. ```kbl sicaklik = 32 yagmur = yanlis eger sicaklik > 25: yazdir("Hava sıcak.") eger degil yagmur: yazdir("Pikniğe gidebilirsin.") ``` ```cikti Hava sıcak. Pikniğe gidebilirsin. ``` > **Dikkat:** `:`'dan sonraki satırı girintisiz yazmak hatadır. Aşağıdaki kod derlenmez; derleyici "blok gövdesi boş — ':' sonrasındaki satırlar girintili olmalı" der. ```kbl goster eger dogru: yazdir("girinti unutuldu") ``` Sebepsiz girinti de hatadır: blok açmayan bir satırın altını içeriden başlatamazsın. Bir de `:`'yı unutursan derleyici "':' bekleniyordu" der. ## Büyük ve küçük harf KabaLang büyük/küçük harfi ayırır. `sehir`, `Sehir` ve `SEHIR` üç ayrı addır. Anahtar sözcükler (`eger`, `dongu`, `dogru`) ve hazır fonksiyonlar (`yazdir`) hep küçük harfle yazılır. ```kbl sehir = "Bursa" Sehir = "Konya" yazdir(sehir) yazdir(Sehir) ``` ```cikti Bursa Konya ``` > **İpucu:** Kodda Türkçe karakterli ad kullanmak yerine ASCII harfler yeğle: `sehir`, `ogrenci`, `dogru`. Anahtar sözcükler de böyle yazılır (`degilse`, `iken`). Metinlerin içinde ise ç, ğ, ı, ö, ş, ü'yü serbestçe kullan. ## Uzun satırı bölmek Parantez açıkken satırı bölebilirsin; parantez kapanana kadar tek satır sayılır. ```kbl toplam = (120 + 75 + 300) yazdir(toplam) ``` ```cikti 495 ``` ## Alıştırma ```alistirma `puan` 50'den büyükse önce `Geçtin.` sonra `Tebrikler!` yazdır. Bu iki satır bloğun içinde olsun. En sonda, bloğun dışında `Sınav bitti.` yazdır. %%% puan = 72 eger puan > 50: # buraya yaz %%% puan = 72 eger puan > 50: yazdir("Geçtin.") yazdir("Tebrikler!") yazdir("Sınav bitti.") %%% Geçtin. Tebrikler! Sınav bitti. ```