Ver Mensaje Individual
  #2  
Antiguo 20-11-2013
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola napsterk89, bienvenido a Club Delphi

Como es costumbre con los que se inician, te invitamos a que leas nuestra guía de estilo.

No sé la finalidad del código y si la cumple, pero sintácticamente es correcto. Es decir, si las declaraciones del registro y archivo son las adecuadas, el código compila y ejecuta.

Para verificarlo crea una nueva aplicación, pone un TButton y un TListBox y realiza esta simple prueba:
Código Delphi [-]
...

implementation

type
  TRegistro = packed record
    //...
    Temporada : string[5];
    Tarifa: Single;
    //...
  end;
  TArchivo = file of TRegistro;

var
  Archivo: TArchivo;
  Res : TRegistro;
  CAlta,CMedia,CBaja: integer;
  RAlta,RMedia,RBaja:Real;

// Guardar unos datos de prueba...
procedure TForm1.FormCreate(Sender: TObject);
const
  TEMPO : array[0..2] of string = ('Alta', 'Media', 'Baja');
var
  i: Integer;
begin
  Randomize;
  AssignFile(Archivo, ExtractFilePath(Application.Exename) + 'Archivo.dat');
  try
    Reset(Archivo);
  except
    Rewrite(Archivo);
    for i:= 1 to 10 do
    begin
      Res.Temporada:= TEMPO[Random(3)];
      Res.Tarifa   := i;
      Write(Archivo,Res);
    end;
  end
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  Seek(Archivo, 0);
  while not Eof(Archivo) do
  begin
    Read(Archivo, Res);
    if (Res.Temporada='Alta') then
    begin
      CAlta:= CAlta + 1;
      RAlta:= RAlta + Res.Tarifa;
    end
    else if (Res.Temporada='Media') then
    begin
      CMedia:= CMedia + 1;
      RMedia:= RMedia + Res.Tarifa;
    end
    else 
    begin
      RBaja:= RBaja + Res.Tarifa;
      CBaja:= CBaja + 1;
    end;
  end;
  Listbox1.items.Add(IntToStr(CAlta));
end;

...

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita