Ruby ile başlangıç – Döngüler

Ruby ile Veri Tabanı serisi ve Ruby ile Resim İşlemleri yazılarının üzerine hiç yakışmıyor ama, yeni başlayanlar ve/veya Ruby ile çalışanlar için bazı ipuçlarıda barındıracak bir yazı yazmam istendi :) emir büyük yerden geldi öyle bakmayın :)

Bu yazıdaki çerez konumuz ruby’de döngüler;
Standart bir döngü..

# 0'dan 14'e döngü
15.times { |index|
	p index
}

Biraz daha kompleks döngüler..

a = 15
b = 35

# 15'den 35'e farkli bir döngü
a.upto(b) { |index|
	p index
}
# 35'den 15'e döngü
b.downto(a) { |index|
	p index
}
# 15'den 35'e 2 ser
a.step(b, 2) { |index|
	p index
}

Dizi tanımlaması ve dizi tabanlı döngüler, bu konu biraz önemli.. Ruby’nin bu konuda söyleyeceği çok şey var.

# 15'den 35'e döngüdür fakat bu numeric bir islem degildir.
# (a..b) islemi bir dizi yaratir ve bu dizi elemanlari uzerinde bir gezinti yapilir.
(a..b).each { |index|
	p index
}
# [], küme parantezleri ile dizi tanımı.
["Tankut", "Senturk","esiyo.net","essiyoo.net","essiyoo.com"].each { |index|
	p index
}
# %w anahtar kelimesi ile dizi tanımı
%w[Tankut Senturk esiyo.net essiyoo.net essiyoo.com].each { |index|
	p index
}
# Karakter aralığı vererek dizi tanımlama
('a'..'z').each { |index|
	p index
}

Görüldüğü gibi ruby’de birçok yöntem var, bunların hepside çok kolay ve uygulaması mantıklı yöntemler, ezberlemenize gerek yok, mantığını anlayın yeterli.

Koşullu düngülere geçecek olursak;

# While'ın yanında yer alan koşul doğru olduğu sürece işlem yapılır.
# Herhangi bir kod bloğunun başında veya sonunda olabilir.
i = 0
while i < 10
	i += 1
	p i
end

i = 0
begin
	i += 1
	p i
end while i < 10

# Until'ın yanında yer alan koşul doğru olmadığı sürece işlem yapılır.
# Herhangi bir kod bloğunun başında veya sonunda olabilir.
i = 0
until i >= 10
	i += 1
	p i
end

i = 0
begin
	i += 1
	p i
end until i >= 10

Kolay gelsin :)

Favori permalink.

2 Responses to Ruby ile başlangıç – Döngüler

  1. Sihaya says:

    Büyük yer ne olaki acaba?… :P
    Teşekkür ederiz efenim bizim gibi yazılıma yeni başlayanlara da yol gösterdiğiniz için.

  2. Uordek says:

    Biz teşekkür ederiz efenim :)

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

*

Şu HTML etiketlerini ve özelliklerini kullanabilirsiniz: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>