25 Temmuz 2013 Perşembe

DELPHİ FOR DÖNGÜSÜ

DELPHİ FOR DÖNGÜSÜ

DELPHİ FOR DÖNGÜSÜ


Bugün sizlere Delphide For Döngüsünden bahsedeceğiz.

Döngü tüm programlama dilleri için ortak bir unsurdur. Delphi tekrar tekrar kod bloklarının uygulanması üç kontrol yapıları vardır: for, return ...until and while ... do.




FOR döngüsü

Çalışma süreleri sabit sayıda tekrarlamanız gerektiğini varsayalım.
// show 1,2,3,4,5 message boxes
var j: integer;
begin
  for j := 1 to 5 do
  begin
   ShowMessage('Box: '+IntToStr(j)) ;
  end;
end;
Gerçekten sadece bir karşı bir kontrol değişkeninin değeri (j), deyimi için bir çalışan kaç kez belirler. Bir sayaç setleri için anahtar kelime. Önceki örnekte, sayaç için başlangıç ​​değeri 1 olarak ayarlanır. Bitiş değeri 5 olarak ayarlanır. 
Için ifade çalışan başladığında sayaç değişkeni başlangıç ​​değeri olarak ayarlanır. Sayaç değeri bitiş değerinden küçük olup olmadığını kontrol eder daha Delphi. Değer daha büyük ise, hiçbir şey (kod satırına program yürütme atlar hemen döngü kod bloğu için aşağıdaki) yapılır.Başlangıç ​​değeri bitiş değerinden daha az ise, döngü gövdesi yürütülür (burada: ileti kutusu görüntülenir). Son olarak, Delphi sayacı 1 ekler ve işlem yeniden başlar.
Bazen sayma için gereklidir. Downto anahtar bir sayacın değeri bir döngü yürütür her zaman indirildiği gerektiğini belirtir (bir artış / dışındaki eksiltme belirtmek mümkün değildir).Geriye sayar döngüsü için bir örnek.
var j: integer;
begin
  for j := 5 downto 1 do
  begin
   ShowMessage('T eksi ' + IntToStr(j) + 'ikinci') ;
  end;
  ShowMessage('for döngüsü bitti!') ;
end;
Not: Eğer döngü ortasında kontrol değişkeninin değerini değiştirmek asla önemlidir. Bu durum, hatalara neden olur.

Döngülerde iç içe FOR

Bir tablo veya bir tablo içinde verileri görüntülemek / doldurmak istediğinizde döngü (yuvalama döngüler) için başka bir içinde döngü için bir yazı çok yararlıdır.
var k,j: integer;
begin
//Bu çift döngü 4x4 yürütülür = 16 kez
for k:= 1 to 4 do
  for j:= 4 downto 1 do
   ShowMessage('Box: '+ IntToStr(k)+ ',' + IntToStr(j)) ;
end;
Yuvalama için-sonraki döngüler için Kural basittir: Dış döngü için sonraki deyimi (k sayaç) karşılaşıldığında önce iç döngü (j sayacı) tamamlanmalıdır. Biz ı üç kat veya quadruply iç içe döngüler, hatta daha fazla olabilir.
Not: Genel olarak, başlar ve gördüğünüz gibi son anahtar kelimeler kesinlikle, gerekli değildir.Başlattıkları ve kullanılmazsa, deyim hemen deyimi için aşağıdaki döngü gövdesi olarak kabul edilir.

FOR-IN döngü

Delphi 2005 veya herhangi bir yeni bir sürümü varsa, konteyner içinde stil yineleme-element-in-koleksiyonu için "yeni" kullanabilirsiniz. Aşağıdaki örnek dize ifadeler üzerinde yineleme gösterir: dize kontrol her karakter için karakter ise ya 'a' veya 'e' veya 'i'.
const
  s = 'Delphi Programlama Hakkında';
var
  c : char;
begin
  for c in s do
  begin
    if c in ['a','e','i'] then
    begin
    // bazen yapar
    end;
  end;
end;

WHILE ve REPEAT döngüler

Bazen bilmiyorum tam olarak kaç bir döngü döngü gerektiği kez. Ne biz belirli bir hedefe ulaşana kadar bir işlemi tekrarlamak isterseniz?
While-do döngüsü ve tekrar-kadar döngü tekrar ifadesinin, kodun her zaman en az bir kez yürütülür olduğunu. Arasındaki en önemli farktır.
Aşağıdaki gibi bir tekrar (ve sırasında) Delphi döngü tipi yazmak genel desen:
repeat
  begin
   statements;
  end;
until condition = true
while condition = true do
begin
  statements;
end;
Burada tekrar-kadar kullanarak 5 ardışık mesaj kutuları göstermek için kod:
var
   j: integer;
begin
  j:=0;
  repeat
   begin
    j := j + 1;
    ShowMessage('Box:'+IntToStr(j)) ;
   end;
  until j > 5;
end;

Gördüğünüz gibi, tekrar deyimi döngü (bu nedenle tekrar döngü en az bir kez kesin yürütülür) sonunda bir durum değerlendirir.
Deyimi ise, diğer taraftan, döngünün başında bir durumdur değerlendirir. Test üstünde yapılıyor, biz genellikle bu derleyici koddan döngü silmeye karar verebilir doğru değilse döngü, işlenmeden önce durumu mantıklı emin olmak gerekir.
var j: integer;
begin
  j:=0;
  while j < 5 do
   begin
    j:=j+1;
    ShowMessage('Box:'+IntToStr(j)) ;
   end;
end;

1 yorum:

  1. Casino Slot Machines - DrmCD
    Casino Slot Machines. 충청남도 출장샵 Welcome to the top-notch entertainment destination in 춘천 출장안마 the state of Nevada, offering 보령 출장샵 a collection of slot machines, including the latest  Rating: 4.2 의왕 출장안마 · 오산 출장샵 ‎4 votes

    YanıtlaSil