Kitaplar / Yöntem Dil Başvurusu / 2. Program yapısı
2. Program yapısı
dosya: birim | program
program: ['program' AD] kullan* bildirim* blok '.'
kullan: 'kullan' ','.AD+
blok: 'başla' deyimler 'bitir'Bir dosya ya bir program ya da bir birimdir. Program başlığı isteğe bağlıdır; ardından kullanılan birimler, bildirimler ve başla … bitir. ile yazılan ana gövde gelir.
program Selam
kullan Matematik
sabit
KEZ = 3
değişken
i: tamsayı
prosedür Selamla(kime: metin = 'dünya')
başla
yaz('Merhaba, ' + kime, 1)
bitir
başla
1'den KEZ'e kadar her i için Selamla
Selamla('Yöntem')
bitir.Bildirim bölümleri
bildirim: 'sabit' (AD [':' tip] '=' ifade)*
| 'değişken' (','.AD+ [':' tip] ['=' ifade])*
| 'tip' (AD '=' tip_tanimi)*
| altprogramBölümler istenen sırada ve istenen sayıda yazılabilir. Değişken bildiriminde tip ya da ilk değerden en az biri bulunmalıdır; = yerine := de yazılabilir.
| Bildirim | Anlamı |
|---|---|
sayaç: tamsayı |
Tipli değişken; tipin başlangıç değerini alır |
ad: metin = 'Yöntem' |
Tipli ve ilk değerli |
oran := 0.5 |
Tipsiz; her tipte değer alabilir |
a, b: ondalık |
Aynı tipte birden çok değişken |
Başlangıç değerleri: tamsayı için 0, ondalık için 0.0, metin için boş metin, mantıksal için yanlış, liste için [], sözlük için [:], kayıt tipleri için alanları başlangıç değerinde bir kayıt, sınıf tipleri ve herhangi için boş.
Sabite atama yapılamaz; denenirse program “Sabite atama yapılamaz” hatasıyla durur.
Kapsam
Bir ad, bildirildiği yerden itibaren o kapsamda ve içteki kapsamlarda görünür. Kapsamlar şunlardır: program (ya da birim), her alt program, her sınıf (alanlar ve metodlar, metod gövdelerinde doğrudan görünür). Bir blok içinde değişken ile bildirilen ad, içinde bulunduğu alt programın (ya da ana gövdenin) kapsamına girer.
İçteki bir bildirim dıştaki aynı adı gölgeler. Birimlerden gelen adlar da program içinde yeniden bildirilerek gölgelenebilir.