Dobrý den,
Dělám úkol do školy a mám problém s tím, že Delphi nedokáže sečíst dvě hodnoty:
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Math, Grids;
type
TForm1 = class(TForm)
Button1: TButton;
StringGrid1: TStringGrid;
Memo1: TMemo;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
x, y, a, b: integer;
p: array [0..11,0..10] of integer;
begin
p[0,10]:=0;
for y := 0 to 9 do begin
p[0,y]:=0;
for x := 0 to 10 do begin
p[x,0]:=0;
p[1,0]:=1;
p[x+1,y+1]:=p[x,y]+p[x+1,y];
end;
end;
for b := 0 to 10 do begin
for a := 0 to 11 do begin
StringGrid1.Cells[a,b]:=IntToStr(p[a,b]);
end;
end;
end;
end.
Hodnoty prvního řádku a prvního sloupce jsou zadefinovány. Nejprve se sečte první "buňka" prvního řádku pole s druhou, tzn. tou, která je vpravo od ní, a součet se zapíše pod druhou "buňku". Pokračuje součet druhé se třetí a zápis pod třetí atd. Jenže na druhém řádku v třetím sloupci se zobrazí číslo 100925443.
Prosím o radu. V čem mám chybu?
Předem děkuji.