Tablica dla kilku procedur

Tablica dla kilku procedur
  • Rejestracja: dni
  • Ostatnio: dni
0

mam pytanie jak zrobic w tej drugiej procedurze zeby po nacisnieciu przycisku wyswietlala wartosc minimalna? Program działa ale jako wartosc minimalna wyswietla 0? Pewnie dlatego że bierze wartości z innej tablicy dynamicznej którą utworzyłem w tej procedurze a nie z tej utworzononej tablicy w pierwszej procedurze. Gdzie mam zadeklarować tablice dynamiczna na której będę robil obliczenia by można było z niej korzystać we wszystkich procedurach?

Kopiuj
 
procedure TForm1.Button3Click(Sender: TObject);
var
  i,x,y,k:integer;
  tab : array of integer;
begin
  k:=StrToInt(LabeledEdit1.Text);
  SetLength(tab,k);
  for i := Low(tab) to High(tab) do
    tab[i] := Random(201) - 100;

  i:=Low(tab);
  for y:=0 to StringGrid1.RowCount-1 do     //musi byc od zera  bo pierwszy wiersz i kolumna sa zerowe
    for x:=0 to StringGrid1.ColCount-1 do
       if i<=High(tab) then
        begin
         StringGrid1.Cells[x,y]:=inttostr( tab[i] );
         inc(i);
        end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var i,min,k : Integer;
tab : array of integer; // tu własnie jest ta tablica dynamiczna ale penie to jest zle
begin
 k:=StrToInt(LabeledEdit1.Text); //ilosc wartosci losowych do wyswietlenia
  SetLength(tab,k); 
 min:=tab[low(tab)+1]; // ustalam wartosc minmalna do ktorej poroownuje pozostale pewnie tez zele czy moge np tak zrobic min:=a[1]
 for i:=1 to high(tab)   do // to tez pewnie zle
 begin
 if tab[i]<Min then min:=tab[i];
end;
 Memo1.Lines.Add(IntToStr(min)); //otrzymana wartosc min ma wyswietlic w memo
end;
olesio
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Szczecin
  • Postów: 4191
0

Kod niesformatowany i g. widać według mnie,
ale już Tobie odpisałem w innym temacie, coś
tam teraz kombinujesz w tym stylu jak widzę,
ale nie chce mi się dojść dlaczego pokazuje Ci
zero jeżeli to nie jest najniższa wartość. A i w
szoku niemal jestem, że w końcu pytania o te
banalne podstawy, zadano w dziale Newbie :)

pelsta
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 819
0
wikary napisał(a)

Gdzie mam zadeklarować tablice dynamiczna na której będę robil obliczenia by można było z niej korzystać we wszystkich procedurach?

Zadeklaruj jako zmienną globalną.

Azarien
  • Rejestracja: dni
  • Ostatnio: dni
0

może jednak lepiej jako prywatne pole w klasie formy.

pelsta
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 819
0

Dlaczego lepiej?

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.