REXX Programlama Dili - Anahtar Kelimeler - Select
Dizilim
Select
When [İfade1] Then [Buyruk]
. . .
. . .
. . .
When [İfadeN] Then [Buyruk]
Otherwise
[Buyruk]
End
Değiştirge(ler)
İfade1...İfadeN
Sınanmak istenen mantıksal durumları işaret eden dizilim(ler).
Buyruk
Sınanan mantıksal durumların sağlanması halinde gerçekleştirilecek işlemleri içeren dizilim(ler).
İşlev
Birden fazla mantıksal durumun sınanarak değişik işlemlerin yapılmasını sağlamak.
Örnek Kullanım
/* */
Say '20 ile 29 arasında bir il trafik düzgüsü giriniz : '
Pull ilduzgu
Select
When ilduzgu == '20' Then Say 'Denizli'
When ilduzgu == '21' Then Say 'Diyarbakır'
When ilduzgu == '22' Then Say 'Edirne'
When ilduzgu == '23' Then Say 'Elazığ'
When ilduzgu == '24' Then Say 'Erzincan'
When ilduzgu == '25' Then Say 'Erzurum'
When ilduzgu == '26' Then Say 'Eskişehir'
When ilduzgu == '27' Then Say 'Gaziantep'
When ilduzgu == '28' Then Say 'Giresun'
When ilduzgu == '29' Then Say 'Gümüşhane'
Otherwise
Say 'Tanımsız trafik düzgüsü girildi.'
End
şeklindeki dizilimlerde Then anahtar kelimesinin ardı sıra birden fazla buyruk belirtilecekse Do ... End buyruğunun kullanılması yerinde olur. Bu durumda, verilen örnek
/* */
Say '20 ile 29 arasında bir il trafik düzgüsü giriniz : '
Pull ilduzgu
Select
When ilduzgu == '20' Then
Do
Say 'Denizli'
Say 'iline hoşgeldiniz.'
End
When ilduzgu == '21' Then
Do
Say 'Diyarbakır'
Say 'iline hoşgeldiniz.'
End
When ilduzgu == '22' Then
Do
Say 'Edirne'
Say 'iline hoşgeldiniz.'
End
When ilduzgu == '23' Then
Do
Say 'Elazığ'
Say 'iline hoşgeldiniz.'
End
When ilduzgu == '24' Then
Do
Say 'Erzincan'
Say 'iline hoşgeldiniz.'
End
When ilduzgu == '25' Then
Do
Say 'Erzurum'
Say 'iline hoşgeldiniz.'
End
When ilduzgu == '26' Then
Do
Say 'Eskişehir'
Say 'iline hoşgeldiniz.'
End
When ilduzgu == '27' Then
Do
Say 'Gaziantep'
Say 'iline hoşgeldiniz.'
End
When ilduzgu == '28' Then
Do
Say 'Giresun'
Say 'iline hoşgeldiniz.'
End
When ilduzgu == '29' Then
Do
Say 'Gümüşhane'
Say 'iline hoşgeldiniz.'
End
Otherwise
Do
Say 'Tanımsız trafik düzgüsü girildi.'
End
End
şeklinde düzenlenebilir. Bu ve benzeri durumlarda, iç-içe girmiş End anahtar kelimeleri arasında karışıklık olmasını engellemek amacıyla, Select anahtar kelimesine ait End anahtar kelimesinin devamına /* Select */ dizgisinin yerleştirilmesi yeterlidir. Yani,
Select
When ...
Otherwise
.
End /* Select */
şeklindeki düzgü kesitinde olduğu gibi.
Açıklama(lar)