hey!
hab ein problem mit den folgenden 2 verschachtelten procedures.
normal müsste ja wenn TForm1.Button1Click ausgeführt wird zunächst die procedure p übersprungen werden und erst aufgerufen werden wenn in der äuseren procedure p(b,a); ausgeführt wird.
gut. nun nehmt mal bitte stift und papier zur hand und errechnet von hand was die 3 labels am ende ausgeben müssten. bei mir kommt 9 16 und 7 raus.
dann habe ich das ding in als program geschrieben und zu meienr verwunderung werden die zahlen 2 3 und 7 ausgegeben!
wie erklärt ihr euch das?
danke
hab ein problem mit den folgenden 2 verschachtelten procedures.
normal müsste ja wenn TForm1.Button1Click ausgeführt wird zunächst die procedure p übersprungen werden und erst aufgerufen werden wenn in der äuseren procedure p(b,a); ausgeführt wird.
Code:
procedure TForm1.Button1Click(Sender: TObject);
var a,b,c:integer;
procedure p(z:integer;b:integer);
var a:integer;
begin
a:=6+z;
c:=c+b;
z:=c;
b:=a+z;
end;
begin
a:=2;
b:=3;
c:=5;
p(b,a);
label1.caption := inttostr(a);
label2.caption := inttostr(b);
label3.caption := inttostr(c);
end;
gut. nun nehmt mal bitte stift und papier zur hand und errechnet von hand was die 3 labels am ende ausgeben müssten. bei mir kommt 9 16 und 7 raus.
dann habe ich das ding in als program geschrieben und zu meienr verwunderung werden die zahlen 2 3 und 7 ausgegeben!
wie erklärt ihr euch das?
danke