For I := 0 to ... (pętle)
Cel

Nasz program bedzie zliczał sumę liczb od 0 do liczby wskazanej przez użytkownika np. 1 + 2 + 3 = 6

Końcowy efekt



Potrzebne komponenty

Nazwa

Klasa

Button1

TButton

Label1

TLabel

Label2

TLabel

Edit1

TEdit



Metoda

1) Wstawiamy komponenty, wypisane w powyższej tabeli i zmieniamy im właściwość name na taką jaka jest w kolumnie "Nazwa".

2) Klikamy podwójnie na przycisk i dodajemy poniższy kod:

var I, S, X : Integer; begin S := 0; X := StrToInt(Edit1.text){Zminnej S przypisujemy wartość początkową 0 zaś, zmienna X otrzymuje wartość wpisaną przez użytkownika} for I := 0 to X do begin  {funkja wskazuje ile razy ma zostać powtórzony poniższy kod} S := S + I; {Do wartośći S dodajemy wartość I} end; Label2.Caption := IntToStr(S);


3) Uruchamiamy program.

Porady

Pętle umożliwiają nam szybsze wykonanie wielu rzecz. Przykładowo chcielibyśmy, aby do zminnej S 10razy została dodana zminna X. Można to zapisać w postaci:

S := S + X;
S := S + X;
S := S + X;
S := S + X;
S := S + X;
S := S + X;
S := S + X;
S := S + X;
S := S + X;
S := S + X;

lub

for I := 0 to 10 do begin S := S + X; end;

I co? Który sposób bardziej Ci odpowiada? Powyższa pętla wykonuje 10 razy zdarzenie S := S + X; Przy każdym kolejnym wykonaniu pętli wartość I wzrasta o 1. Gdy osiągnię wartość wpisaną po słówku to kończy wykonywanie pętli i przechodzi do dalszych operacji.

Kod źródłowy

unit Unit1;   interface   uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;   type TForm1 = class(TForm) Edit1: TEdit; Button1: TButton; Label1: TLabel; Label2: TLabel; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end;   var Form1: TForm1;   implementation   {$R *.DFM}   procedure TForm1.Button1Click(Sender: TObject); var I, S, X : Integer; begin S := 0; X := StrToInt(Edit1.text); for I := 0 to X do begin S := S + I; end; Label2.Caption := IntToStr(S); end;


Autorem tekstu jest: Michał Siudziński
http://cpw.net.pl
Materiał dodany przez użytkownika: alphan