Einzelnen Beitrag anzeigen

Marcel2906

Registriert seit: 17. Aug 2011
Ort: Warendorf
112 Beiträge
 
Delphi 2010 Professional
 
#3

AW: Records, Array

  Alt 17. Aug 2011, 13:39
Vielen dank.

Habs nun einigermaßen hinbekommen. Hab nur noch ein Problem.
Ich kann das schlecht beschreiben, also mein code:

Code:
program Project1;

{$APPTYPE CONSOLE}

uses
  SysUtils;

type
  TBusEintrag = record
    Linie: Byte;
    Ziel: string;
    Zeit: Integer;
  end;

var
  Liste: array of TBusEintrag;
  x,n,l,a,c: integer;
  b:string;
begin
  l:=1;
  SetLength(Liste,l);
  Liste[0].Linie := 1;
  Liste[0].Ziel := 'Warendorf';
  Liste[0].Zeit := 40;

  x:=0;

  writeln('Gebe Linie ein');
  readln(a);
  writeln('Gebe Ziel ein');
  readln(b);
  writeln('Gebe Verspaetung in Minuten ein');
  readln(c);

  while c>Liste[x].Zeit do
  begin
  x:=x+1;
  end;

  l:=l+1;
  SetLength(Liste,l);
  n:=high(Liste);

  while n>x do
  begin
    Liste[n]:=Liste[n-1];
    n:=n-1;
  end;

  Liste[x].Linie:=a;
  Liste[x].Ziel:=b;
  Liste[x].Zeit:=c;

  writeln('Linie:',Liste[0].Linie,'    Ziel:',Liste[0].Ziel,'   Verspaetung:',Liste[0].Zeit);
  writeln('Linie:',Liste[1].Linie,'    Ziel:',Liste[1].Ziel,'   Verspaetung:',Liste[1].Zeit);
  readln;

  end.
Falls aber der neu eingegebene Wert größer ist als der der schon im code steht (40) dann hängt er sich quasi auf, da

Code:
while c>Liste[x].Zeit do
  begin
  x:=x+1;
  end;
wie kann ich sagen, dass wenn er am ende angekommen ist, weiter gehen soll...?

Hoffe ich konnte mein Problem einigermaßen beschreiben ^^
  Mit Zitat antworten Zitat